我这个是错误的吗?正确的怎么写?
我写的那个错在了哪里,我的思路是-127分解后得出原码为:1 1111111,然后除符号位后补24个0
我写的那个错在了哪里,我的思路是-127分解后得出原码为:1 1111111,然后除符号位后补24个0
正数:
原反补码相同
负数:
原码
反码 = 原码除符号位外按位取反
补码 = 反码+1
-127的补码错了
反码是:11111111 11111111 11111111 10000000
补码应该是:11111111 11111111 11111111 10000001
-127I127的结果为-1,计算如下:
-127:11111111 11111111 11111111 10000001
127:00000000 00000000 00000000 01111111
所有位进行或操作,可得
11111111 11111111 11111111 11111111
减去1后,得反码
11111111 11111111 11111111 11111110
除符号位外按位取反,得原码
10000000 00000000 00000000 00000001
因此可得结果为 -1。
如有帮助,还请采纳!谢谢!