订阅
纠错
加入自媒体

CPU 中的加法器,为什么可以连同符号位一起运算?

2021-04-08 09:29
道哥分享
关注

3. 扩展到十六进制

原理还是相同的:直接把十进制中的 10 换成 16 即可:

每一个数位上包括的数字为 0 到 9,A 到 F;

每一个数位上的数,是它右侧数位的 16 倍;

两个数相加时,相同数位上的数相加之和如果大于等于 16,就向前进 1 位,即:满十六进一;

具体来看就是:

从右数第一个位数上的数字代表多少个 1;

从右数第二个位数上的数字代表多少个 16;

从右数第三个位数上的数字代表多少个 256;

从右数第四个位数上的数字代表多少个 4096;

在十六进制中,需要十六个数字来表示 0 到 15 这些数字,0 到 9 比较好处理,但是从 10 到 15,我们就需要找一些记号来表示,于是人们就想到用 A,B,C,D,E,F 这几个字母来分别表示 10 到 15 这个 6 个数字。

十六进制数据,使用后缀字母 H 来表示,有些场合也可以使用前缀 0x 来表示,本质上没有区别。例如:十六进制数字 1A2BH(或者写作 0x1A2B),每一个数位上的权重如图:

换算成十进制数就是 6699(1 * 4096 + 10 * 256 + 2 * 16 + 11 * 1 = 6699)。

4. 扩展到任意进制

原理仍然相同:直接把十进制中的 10 换成目标进制,例如 5 进制:

每一个数位上包括的数字为 0 到 4;

每一个数位上的数,是它右侧数位的 5 倍;

两个数相加时,相同数位上的数相加之和如果大于等于 5,就向前进 1 位,即:满五进一;

具体来看就是:

从右数第一个位数上的数字代表多少个 1;

从右数第二个位数上的数字代表多少个 5;

从右数第三个位数上的数字代表多少个 25;

从右数第四个位数上的数字代表多少个 125;

再看一个图加深印象:

三、从十进制加法到二进制加法 

1. 十进制加法

这个就不必多说了,规则只有 2 条:

两个数,相同数位上的数字进行相加;

每一个数位上的相加结果,满十进一;

例如:

个位上:4 + 8,结果是 12,但是十进制中没有 12 这个数字,因此向左侧的高位进1,个位就剩下:12 - 10 = 2。

十位上:7 + 2,再加上进位 1,结果是 10,但是十进制中没有 10 这个数字,因此向左侧的高位进1,十位变成:10 - 10 = 0。

百位上:1 加上进位 1,结果是 2。

2. 二进制加法

第 0 位:0 + 0 结果为 0;

第 1 位:1 + 0 结果为 1;

第 2 位:1 + 1 结果为 2,但是二进制中没有 2 这个数字,因此需要向左侧的高位进 1,于是第 2 位上就剩下 2 - 2 = 0。

第 3 位:1 + 1 等于 2,再加上进位 1,结果就是 3,但是二进制中没有 3 这个数字,因此需要向左侧的高位进 1,于是第 3 位上就剩下 3 - 2 = 1。

第 4,5,6,7位计算均是如此。

<上一页  1  2  3  4  下一页>  
声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

    人工智能 猎头职位 更多
    扫码关注公众号
    OFweek人工智能网
    获取更多精彩内容
    文章纠错
    x
    *文字标题:
    *纠错内容:
    联系邮箱:
    *验 证 码:

    粤公网安备 44030502002758号