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。

正数的原码,反码和补码一样 

 

posted @ 2017-04-14 10:54  翻白眼的哈士奇  阅读(25034)  评论(0编辑  收藏  举报