原码、反码、补码、移码的计算转换
创作时间:
作者:
@小白创作中心
原码、反码、补码、移码的计算转换
引用
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左取反;若补反,先变原码再反码;若有移,先变补码再变化
练习
热门推荐
孕妇可以用三九皮炎平吗
东南亚多次签证怎么办理?如何申请?
王者荣耀S26赛季社交系统更新 开启你的好友状态!
朱元璋与刘伯温:帝权旁的智慧与疑云
瓷砖导购员的工作流程:高效销售与客户服务策略
NBA中国赛回来了!回顾12次NBA中国赛:姚明刘炜对决最经典
PLC编程必知:四大类指令详解与应用
天线工作原理,无线电波介绍,天线中电磁波原理
提取公积金显示"用户不存在"?原因及解决方法全攻略
顺序图详解:概念、构成要素与绘制方法
RSS是站点用来和其他站点之间共享内容的一种简易方式,也叫做聚合内容
《歌手2024》争议中落幕,音综何去何从?
亚硝酸盐的检测方法
《金钱心理学》作者最新作品:想教你赚钱,更想教你清醒地活着
头疼眼眶疼是什么原因引起的
面临多个职业机会,如何通过规划抉择
开放式耳机的原理是什么 开放式耳机的特点有哪些
半夜脚抽筋怎么办?原因、预防与缓解全攻略
如何查看微信聊天记录?手机与电脑操作指南
个人旅游签证和团队旅游签证的区别
立即提升!业余跑步爱好者力量训练简易指南
料酒过期三个月还能用吗
中国最美边境城市系列之二:黑龙江漠河,中国最北端的极寒秘境
亲子鉴定需要什么材料?除了确认亲子关系,亲子鉴定还有哪些用途?
何伟文:世界地缘经济碎片化对我国进出口的严峻挑战
苗族芦笙:苗家歌舞的灵魂 苗族文化的象征
全飞秒、半飞秒怎么选更适合自己?
环孢素治疗干眼症:作用机制与综合治疗方案
木耳可以隔夜吃吗?隔夜木耳有毒?真相揭秘,吃前必看!
怎么吹萨克斯才会有感觉