以一个字节为例,一个字节8位,其中最高位为符号位,剩下7位表示数值:
正数的最高位为0,剩下7位为:000 0000 - 111 1111 表示范围为0-127合计128个数;
负数的最高位为1,剩下7位为:000 0000 - 111 1111 可以表示的总数为128,由于0已经由正数表示了,所以这128个数为-1-----128;怎么对应这128个负数?负数最大的是-1,000 0000到111 1111中最大的是111 1111 所以由1111 1111表示-1了;128个数中最小的数是-128,而000 0000到111 1111中最小的是000 0000 所以加上符号位由1000 0000表示-128了;
负数的右移之后高位补1的哦;整数右移之后高位补0哦;上次腾讯笔试考察的就是负数的表示问题!!
小小总结一下,以后别忘了
网友评论