没有符号位,比如8位二进制,无符号整数范围是0-255,如果表示有符号整数,需要把最高位定义为符号位,表示数值的只有7位了,范围就是-127-+127,其实就是人为的一种定义,把最高位定义为符号位而已。例如8位的二进制数0110 1100.在没定义是无符号的情况下,默认为是代表有符号的数,并且首位是符...
二进制无符号整数是什么意思
没有符号位,比如8位二进制,无符号整数范围是0-255,如果表示有符号整数,需要把最高位定义为符号位,表示数值的只有7位了,范围就是-127-+127,其实就是人为的一种定义,把最高位定义为符号位而已。
例如8位的二进制数0110 1100.在没定义是无符号的情况下,默认为是代表有符号的数,并且首位是符号位,0是代表正数,1是负数。如果定义为无符号的数,那首位就不是代表符号而是数字。
拓展资料有符号和无符号的差别
int是有符号的,unsigned是无符号的。
它们所占的字节数其实是一样的,但是有符号的需要安排一个位置来表达我这个数值的符号,因此说它能表示的绝对值就要比无符号的少一半。举个例子,我们有一个1个 [1] 字节的整数(虽然这种类型不存在),那么无符号的就是这样:00000000~11111111 这个就是无符号的范围。
一个字节是8位, 有符号的数,因为第一个位要用来表示符号,那么就只剩下7个位置可以用来表示数了0000000~1111111因为有符号,所以还可以表示范围:-1111 111 ~ +1111 111。
2023-01-06
在计算机系统中,只有高电平和低电平,只能用 1 和 0 来代表。因此,在计算机中,只有二进制数。
又因为在计算机中,只有 1 和 0,既没有正负号,也没有小数点,所以,计算机中的数,只有“零和正整数”。
零和正整数,也就是小学学过的“自然数”。
计算机专家,显然没有小学毕业,想不起来什么“自然数”,就自己胡编乱造了一个词“无符号数”。
那么,世界上千奇百怪的各种事物,存入计算机,就都是用“无符号数”来表示的。
所谓的“有符号数”,也是用“无符号数”来表示的。
换算公式就是:有符号数 = 无符号数 - 2^n,n 是二进制数的位数。
例如:
内存中某个字节的内容是 1111 1111,这就是无符号数 255。
如果用它表示有符号数,其数值就是:255-2^8 = -1。
2025-04-02