当前位置:首页>维修大全>综合>

什么是有符号数和无符号数(有符号数和无符号数的区别)

什么是有符号数和无符号数(有符号数和无符号数的区别)

更新时间:2024-05-10 13:54:25

什么是有符号数和无符号数

最明显的区别就是二者表示的范围不同:无符号数中,所有的位都用于直接表示该值的大小。有符号数中最高位用于表示正负,所以,当为正值时,该数的最大值就会变小。我们举一个字节的数值对比:无符号数:11111111值:2551*27+1*26+1*25+1*24+1*23+1*22+1*21+1*20有符号数:01111111值:1271*26+1*25+1*24+1*23+1*22+1*21+1*20 同样是一个字节,无符号数的最大值是255,而有符号数的最大值是127。原因是有符号数中的最高位被挪去表示符号了。并且,我们知道,最高位的权值也是最高的(对于1字节数来说是2的7次方=128),所以仅仅少于一位,最大值一下子减半。不过,有符号数的长处是它可以表示负数。因此,虽然它的在最大值缩水了,却在负值的方向出现了伸展。我们仍一个字节的数值对比:无符号数:0-----------------255有符号数:-128---------0----------127 同样是一个字节,无符号的最小值是0,而有符号数的最小值是-128。所以二者能表达的不同的数值的个数都一样是256个。只不过前者表达的是0到255这256个数,后者表达的是-128到+127这256个数。

更多栏目