计算机组成原理笔记(一):数的机器码表示

一、引例

先来个自我介绍吧,本人现在大二学生一枚,怀着激动的心情决定开始记录下自己每天的进步,今天也算起了个大早学习来预习功课,今天学习到的就是数的机器码。让我们先通过一个简单的问题来引出我们的”几大主人公”。
问题描述:

现在有十个袋子,每个里面有十个金币,有一袋假金币,真金币重10g,假金币重9g,现在给你一杆秤,最少称几次可以找出假金币?

问题解答: 答案为一次。我们只需要将这10个袋子从0开始依次编码到9,随后依次取出对应编码数量的金币,如果重为45g,则编号为0的袋子是假的,否则,与45g差多少就是几号袋子为假的。
看到这里,你有没有感到编码的神奇之处。好啦,我们go on!

二、原码

让我们先来看个表格

原码(二进制表示即可)真值(十进制)
00000
00011
00102
00113
01004
01015
01106
01117
1000-0
1001-1
1010-2
1011-3
1100-4
1101-5
1110-6
1111-7

通过这张表,我们不难看出,用原码的表示方法:第一位为符号位,对于四位二进制的取值范围就是[-7,+7]。
但是,我们用原码进行计算时就会出现问题
在这里插入图片描述
所以我们则引入了补码。

三、补码

今天小森发呆之时,看着钟表滴答滴答,发现好像时间不对劲,现在是3点,而钟表显示8点,那么我要么顺时针拨动5周,要么逆时针拨动7周,这实际上就用到了我们的补码,对于钟表,我们可以认为模为12即mod 12。
那么我们就可以通过该公式:当x<0时,[x]补码=mod+x,我们来通过一个计算(-001)的补码来深层次的理解下这个公式
在这里插入图片描述
这也就是我们经常挂在嘴边的取反加一
同样如果想求真值x也可以逆用该公式,或者用:在这里插入图片描述
注:Xn这里指的为符号位。
另一种方法: 从补码构成角度求负数补码真值

补码构成: 符号位+补数
方法:将符号位后的补数拿走全部替换为0-补数

四、移码

其实呢,x的移码=移动的数值+x,也就是呢,移动多少加多少。或者将补码的符号位取反即可。

最后在附上一篇博客园的文章供大家深入再学习
>数的机器码<

文章不足之处欢迎大家评论~

  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

森格的博

创作不易,感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值