char 与 unsigned char的区别和取值范围
1.char和unsigned char 都是一个byte,8个bit。char是无符号类型,首位bit是符号位。
2.取值范围不同:
(1)unsigned char的取值范围:0~2^8-1(0~255)
(2)char的取值范围:-2^7~2^7-1(-128~127)
-128->二进制(1,000,0000)->反码(1,111,1111)->补码(1,000,0000)
-1->二进制(1,000,0001)->反码(1,111,1110)->补码(1111,1111)
3.反码和补码定义:
负数的反码是将其原码除符号位之外的各位求反
负数的补码是将其原码除符号位之外的各位求反之后在末位再加1。
正数的原码,反码和补码一样