A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

前奏:今天我们学了,原码,补码和反码,学的时候表示各种简单,so easy,不过后面有个问题难到我了,就是byte类型负数的补码的最高位1是否加入运算.

例如:byte类型下,老师说因为没有-0,所以-128表示-0,那么-128的原码为
1000 0000  -128原码
1111 1111  -128反码
0000 0001  反码加1
---------------------------
1000 0000  这里最高位还是为1,且最高位不参与运算

那么byte类型-20和30相加(30的原码反码一样为0001 1110)
1001 0100  -20原码
1110 1011  -20反码
0000 0001  反码加1
------------------------
1110 1100  -20的补码
0001 1110   30的补码
--------------------------
0000 1010    为什么这里的最高位要参与运算?


请大神求解! 谢谢.{:2_31:}{:2_31:}{:2_31:}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马