原码、反码、补码、移码的计算转换
创作时间:
作者:
@小白创作中心
原码、反码、补码、移码的计算转换
引用
CSDN
1.
https://m.blog.csdn.net/qq_52964132/article/details/140052527
在计算机科学中,原码、反码、补码和移码是表示二进制数的四种不同方式。本文将详细介绍这四种编码方式的转换规则,并通过具体例子进行验证。
正数
对于正数来说,原码、反码和补码都是一样的,不会发生变化。因此,在计算时,首先需要查看第一位符号位,如果发现是正数,那么三者都不变。移码则是在补码的基础上将符号位取反。
负数
负数的编码转换规则相对复杂一些。
原码 & 反码
- 符号位不变
- 数值位都取反
反码 -> 补码
- 末尾加1
原码 <-> 补码
- 从右向左找到第一个“1”
- “1”左边所有的数值位按位取反
补码的相反数
- 取反(按位取反):将补码中的每一位取反,即0变为1,1变为0。
- 加1:在取反后的结果上加上1。
例子
假设有一个8位补码表示的数 00001001(即十进制的9),我们想要将其变为其相反数。
- 原数:00001001
- 取反后:11110110
- 加1后:11110111
因此,00001001 的相反数是 11110111,即十进制的 -9。
验证
为了验证这个结果,我们可以将 11110111 转换回十进制:
- 最高位是1,表示这是一个负数。
- 取反:00001000
- 加1:00001001
结果是9,但由于最高位是1,所以是 -9。
特殊情况
对于补码表示的最小值(例如8位补码的最小值是 10000000,即 -128),其相反数在补码系统中没有对应的正数表示,因为补码系统的正数范围比负数范围少1。在这种情况下,最小值的相反数仍然是它自己。
移码
移码是在补码的基础上将符号位取反。
方法总结
- 首先根据符号位判断正负
- 若为正,则都不变,移码变符号位;若为负,则需要进一步的分情况讨论
- 若为原反,符号不变数值变;若反补,单向末位要加1;若原补,从右到左先找“1”,1左取反;若补反,先变原码再反码;若有移,先变补码再变化
练习
热门推荐
60岁大厨的红烧肉秘诀:加点它,肉质酥烂入味,汤汁浓稠鲜香
学信网教你轻松验证毕业证真实性
学历认证报告助力职场晋升
疲劳党必备护眼秘籍:告别眼球充血
文殊兰入药需谨慎,活血散瘀功效显著但有毒性
文殊兰:活血解毒功效佳,使用不当易中毒
忘记工商银行存单密码?柜台、网银、客服热线三渠道可重置
PICC置管居家护理全攻略:从日常观察到紧急处理
阿司匹林常见副作用及应对指南:从消化不适到出血风险
研究证实:维生素C和K可有效降低阿司匹林出血风险
地球有8千多米高的山、1万多米深的海沟,为何科学家仍说地球很圆
为什么宇宙中的天体都是球体?星系都是盘状?
免疫治疗新突破:从晚期肺癌到白血病,这些患者实现无癌生存
人民币汇率下行,投资者如何调整理财策略实现资产保值
美联储加息引发离岸人民币贬值,多重因素加剧汇率波动
创新AI技术,科学家发现迄今距其主星最近的最小行星
徐建纲:浅析贾浅浅的《田野》艺术特色
如何在 Windows PC 或 Mac 上录制屏幕画面
存量房贷减负 多地“商转公”开花 一年节约超1万元
公积金提取后还能商转公吗?如何进行商转公贷款?
广州远达教你正确储存对甲苯磺酸一水合物
十三香:既能调味,也能药用
十三香麻辣小龙虾的做法及配方
晨跑干呕怎么办?专家解析原因并提供5个预防方案
银河证券推荐:华商基金周海栋的投资秘籍
石家庄今冬供暖时间不变,仍为11月15日至次年3月15日
国家网络身份认证APP上线,电子身份证应用场景扩展
Vue3类名设置的新姿势,你Get了吗?
掌握Vue模板类名绑定的七大绝招
超一半糖尿病是吃出来的?藏在食物里3大隐形杀手