在线时间341 小时
UID1670729
ST金币0
蝴蝶豆67
注册时间2015-6-2
论坛元老
- 最后登录
- 2020-12-2
|
发表于 2016-11-28 23:01:17
|
显示全部楼层
a0a.1 32b0c
反码求解的确会把人搞迷。8位机和32位机的补码就一样。当然你的24位也不一样。我们不妨说是N位计算系统,那X 的补码就是2^N - X。
很简单是不是。那么你会问为什么。举一个最简单的例子,(-5) + 5 应该是多少?我们假定系统是8位运算系统。-5怎么表示呐,就是2^8 - 5, 5还是5.两者加起来就是 2^8.因为计算溢出,剩下的结果就是0.同样的举一个随便的例子比如10 + (-100) 计算时候就是100 + (2^8 - 10) = 2^8 + (10-100) = 2^8 - 90 结果就是-90用反码表示。
那通过这种方式就能统一正负数值的计算。 |
|