发布网友
共2个回答
热心网友
需要了解整数在计算机中的编码
,对于整数在计算机中一般是原码、反码、补码三种编码方式,以-1为例。选择8位的二进制数来表示:
-1的原码
10000001
//最高位为符号位
-1的反码
11111110
//符号位不变,各位求反
-1的补码
11111111
//符号位不变,反码加1
所以,当使用unsigned
char
即无符号整数时,-1用补码表示即1111
1111,十六进制表示为0xff
,十进制表示即为255。
热心网友
计算机中,有符号数用补码(按位取反加1)表示,其最高位表示符号(0正1负);-1的补码(1111
1111)对应的无符号数就是255