没有合适的资源?快使用搜索试试~ 我知道了~
"计算机组成原理之BCD码" 计算机组成原理中的BCD码是一种非常重要的编码方式,它使用二进制来编码十进制数。BCD码的出现是为了解决二进制数和十进制数之间的转换问题。通过使用BCD码,我们可以方便地将二进制数转换成十进制数,也可以快速地将十进制数转换成BCD码。 BCD码有多种编码方式,包括8421码、余3码和2421码等。在这些编码方式中,8421码是最常用的编码方式。8421码的权值分配是按照二进制的权值分配,即每个二进制位的权值分别是8、4、2和1。 使用8421码可以方便地表示十进制数。例如,表示十进制数5,8421码就是0101,表示十进制数9,8421码就是1001。这样的编码方式使得计算机可以方便地将十进制数转换成BCD码,也可以快速地将BCD码转换成十进制数。 在BCD码中,8421码的加法运算是非常重要的。使用8421码的加法运算需要按照二进制的加法规则进行运算。例如,对于5和8的加法运算,8421码的表示方式分别是0101和1000。计算机会将这两个数相加,得到的结果是1101,这个结果需要转换成十进制数,得到的结果是13。 但是,在8421码的加法运算中,存在一个问题,那就是结果的合法性。8421码的合法范围是0~9,如果结果超过这个范围,就需要进行修正。例如,对于5和8的加法运算,结果是1101,这个结果已经超出了合法范围。为了让结果符合8421码的规则定义,可以在结果基础上加上6,这样可以使结果落在合法范围内。 因此,BCD码在计算机组成原理中扮演着非常重要的角色,它使得计算机可以方便地处理十进制数和二进制数之间的转换。同时,BCD码的加法运算规则也需要我们遵守,以确保计算结果的正确性。
资源推荐
资源详情
资源评论
5.1.2_BCD码
一、引子
这一个小节我们要学习的是BCD码,BCD码的意思是使用二进制来编码的十进制数。
我们要学习三种BCD码,分别是 8421 码、余3码和 2421 码。
8421 码是我们需要重点掌握的,我们需要学会 8421 码的加法运算怎么执行。
二、BCD码
(1)作用
首先来解释一下BCD码的作用。
在上个小节中,我们学习了二进制数和十进制数。
其中二进制数是比较方便让计算机来处理的,但是十进制数又比较符合我们人类的阅读习惯。如果我们想要把二进制转换
成十进制,可以用每一个数码位乘以数码位上的权值,进行一个相乘相加的操作,就可以转换成与之对应的十进制的值。
使用这种方式把机器数转换成我们熟悉的十进制数是比较麻烦的,而BCD码就是为了解决这个问题,用BCD码来表示数
字的原理是这样的,我们可以用 4 个二进制位,也就是 4 个比特的信息来对应上一个十进制位。
因为 4 个二进制位可以表示的状态是 2 的4 次方,也就是可以表示 16 种状态,而这 16 种状态足够用来表示十进制里
边可能会出现的 0- 9 这 10 种字符。
显然我们会有 6 种状态是冗余的,这就是BCD码的思路,每 4 个二进制位对应一个十进制的字符,这就可以让我们很方
便的把BCD码转换成十进制,也可以把十进制快速的转成BCD码。
(2)8421码
1.介绍
我们要学习的第一种BCD码的编码方式叫做 8421 码。
刚才我们说过用4个二进制来表示1位十进制,这四个二进制位的权重分别是8421,也就是我们最熟悉的二进制的权值分
配。
所以按照这样的设计,要表示十进制数就很简单。
比如表示5,应该是0101, 4 + 1 = 5;如果要表示 9 的话,就应该是1001。以此类推。
这张表给出了 0- 9 这几个数和 8421 码的一个相互映射的关系。
如果我们想要用这种 8421 码的策略来表示一个数,比如表示 985这个数 ,那么在计算机里存储这个数应该是这样的,9
是1001,8是1000,5是0101。 那么985 这样的十进制数使用 8421 码最终在计算机内是1001 1000 0101这样来保存
的,每4位对应1个十进制位。应该很好理解。
2.加法运算
接下来我们要探讨的问题是,使用 8421 码的策略来表示的数字应该怎么进行加法运算。
手算
5 和 8 用 8421 码分别是这样的表示方式。 如下:
5 + 8 的结果应该是等于13。
剩余6页未读,继续阅读
资源评论
雨翼轻尘
- 粉丝: 6w+
- 资源: 130
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 自定义 带时间 戳的 ping 命令
- StockMatchs子项目,模拟的股票交易系统go语言实现,基于http的jsonrpc接口通信.zip
- 公司面试题记录汇总11
- SQuant是使用scala语言编写的量化开发工具箱,提供开箱即用的A股股票数据和外汇数据(docker镜像),以及高效的回测框架与交易模块 方便Java,Scala爱好者进行量化投资研究 .zip
- 面向云端优化的弹性与可扩展高性能计算传输协议SRD
- C# WInForm IrisSkin4控件ssk皮肤
- Sciter3易语言模块.zip
- STM32_Register_01_寄存器点灯.zip
- Rust语言版网易云音乐API.zip
- Rust 解释器基于Rust+Vue的简易解释器适用于入门Rust语言,学习语言特性简单易上手.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功