补码减1是不是就得到反码了?
答案:2 悬赏:60 手机版
解决时间 2021-04-07 21:05
- 提问者网友:暗中人
- 2021-04-07 02:39
补码减1是不是就得到反码了?
最佳答案
- 五星知识达人网友:迟山
- 2021-04-07 03:13
可以这么理解。
不过,这与引入补码的初衷之一(将减法变为加法)相左。可以先求原码(补码的补码即原码),再求反码。追问引入的初衷又是什么啊追答其一,符号位可以一同参加运算;
其二,减法计算变为加法;
其三,杜绝数字0的二义性................
你可百度"补码"的相关词条追问对了,还有一个问题呢?为什么负128没有原码和反码?追答-128的二进制为1000 0000(即80H)。
你可按照负数的反码和补码计算规则求:
其反码为1111 1111
其补码为1000 0000(此即为原码,原码和补码相同--这是负数的一个特例 !)追问80H是啥意思??还有10000000这里的1是符号位吗?追答80H是16进制表示的-128, 二进制的最高位的1为符号位。追问还在吗如果二进制最高位1为符号位,那么10000000,转化为十进制数是-0怎么是-128呢求解释追答-128(注:这是用补码表示的最小负数的特例)追问似懂非懂了。知道了,谢谢哈。编码和二进制数有什么区别和联系啊还在吗???
不过,这与引入补码的初衷之一(将减法变为加法)相左。可以先求原码(补码的补码即原码),再求反码。追问引入的初衷又是什么啊追答其一,符号位可以一同参加运算;
其二,减法计算变为加法;
其三,杜绝数字0的二义性................
你可百度"补码"的相关词条追问对了,还有一个问题呢?为什么负128没有原码和反码?追答-128的二进制为1000 0000(即80H)。
你可按照负数的反码和补码计算规则求:
其反码为1111 1111
其补码为1000 0000(此即为原码,原码和补码相同--这是负数的一个特例 !)追问80H是啥意思??还有10000000这里的1是符号位吗?追答80H是16进制表示的-128, 二进制的最高位的1为符号位。追问还在吗如果二进制最高位1为符号位,那么10000000,转化为十进制数是-0怎么是-128呢求解释追答-128(注:这是用补码表示的最小负数的特例)追问似懂非懂了。知道了,谢谢哈。编码和二进制数有什么区别和联系啊还在吗???
全部回答
- 1楼网友:躲不过心动
- 2021-04-07 04:06
不全是这样。
比如,8 位字长:
-128 的补码是 1000 0000;
减一,能得到-128 的反码吗?
不能。
比如,8 位字长:
-128 的补码是 1000 0000;
减一,能得到-128 的反码吗?
不能。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯