新浪博客

c语言中如何计算补码

2015-10-14 23:59阅读:
规则:
正数: 原码 反码 补码 都一样。 负数:反码= 符号位不变 其他位取反
补码 = 反码 1
-1的原码:1000 0000 0000 0001 取反:1111 1111 1111 1110 -1的补码:1111 1111 1111 1111
-1 1 结果
1111 1111 1111 1111 0000 0000 0000 0001 -------------
0000 0000 0000 0000

可以把减法用加法来算,只需设计加法器就好了. 运算的时候都是用过补码去运算的。
//2-1 = 2 (-1)=0000 0000 0000 0010 1111 1111 1111 1111
从补码转回原码
负数补码转换原码的规则 :
原码 =
补码的符号位不变 -->数据位取反--> 1
-1的补码:1111 1111 1111 1111 取反:1000 0000 0000 0000 -1的原码:1000 0000 0000 0001


我的更多文章

下载客户端阅读体验更佳

APP专享