符号数是一种数制,其中数值的表示不仅仅依赖于数值位,还包括一个符号位。符号数中,最高位被用作符号位,其中“0”表示正数,“1”表示负数。其余的数位则用于表示数值的大小。
在C语言中,无符号数(Unsigned number)是指没有符号位的整数。这意味着无符号数的所有位都用于表示数值,而不是用于表示正负。无符号数的范围是从0到2^n-1,其中n是无符号数的位数。例如,一个8位无符号整数可以表示从0到255的整数。在C语言中,可以通过指定类型为unsigned来定义无符号数,如unsigned int或unsigned long。
无符号数(Unsigned number)是相对于有符号数而言的,指的是整个机器字长的全部二进制位均表示数值位,相当于数的绝对值。
无符号数和有符号数的范围区别
同样是一个字节,无符号数的最大值是255,而有符号数的最大值是127,原因是有符号数中的最高位被挪去表示符号了。
无符号数: 0 ----------------- 255
有符号数: -128 ----- 0 ----- 127