【期末复习笔记】数字逻辑

简介: 8421BCD码、格雷码、余三码进制之间的转换,数字逻辑第一章笔记复习记录

第一章数字逻辑基础

  • [x] 二进制、八进制、十进制和十六进制之间的转换
  • [x] 原码、反码、补码之间的转换

在这里插入图片描述

8421BCD码、格雷码、余三码进制之间的转换

定义概念:

8421码:8421码是最常用的BCD码
,是十进制代码中最常用的一种。在这种编码方式中,每一位二值代码的“1”都代表一个固定数值。将每位“1”所代表的二进制数加起来就可以得到它所代表的十进制数字。因为代码中从左至右看每一位“1”分别代表数字“8”“4”“2”“1”,故得名8421码。其中每一位“1”代表的十进制数称为这一位的权。因为每位的权都是固定不变的,所以8421码是恒权码。

余3码:余3码是在8421的码基础上,把每个代码都加上0011(3)码而形成的,他的主要优点是执行十进制数相加时,能正确的产生进位信号,而且还给减法运算带来了方便

格雷码:使任何两个相邻的代码只有一个二进制位的状态不同,其余3个二进制位必须有相同的状态,这种编码的好处是,从某一编码变到下一个相邻编码时,只有一位的状态发生变化,有利于得到更好的译码波形。格雷码是一种循环码

在这里插入图片描述

  • [ ] 常用的BCD码
十进制数 8421码 余3码 格雷码
0 0000 0011 0000
1 0001 0100 0001
2 0010 0101 0011
3 0011 0110 0010
4 0100 0111 0110
5 0101 1000 1110
6 0110 1001 1010
7 0111 1010 1000
8 1000 1011 1100
9 1001 1100 1101

在这里插入图片描述

8421码与十进制转换

例1:
(3)~10~ =(0011)~8421~

因为:3可以由8、4、2、1中4个数字中的2和1相加获得,所以只需要在对应的2和1下面写入1即可,其余4位补0
在这里插入图片描述
反过来看,用8421码将二进制数每四位标记,含有1的位置上方对应数字相加即可得到10进制数

例2:
(712)~10~ =(0111 0001 0010)~8421~
因为:我们按单个数字来看,7可以由8、4、2、1中4个数字中的4+2+1获得、1可以由1获得、2可以由2获得,所以只需要在对应的数字下面写入1,其余一样补0即可

7:
在这里插入图片描述

1:
在这里插入图片描述

2:
在这里插入图片描述
所以(712)~10~ =(0111 0001 0010)~8421~

反过来看,用8421码将二进制数每四位标记,含有1的位置上方对应数字相加即可得到10进制数

8421码与余三码转换

前面说到,余3码是在8421的码基础上,把每个代码都加上0011(3)码而形成的,所以我们在8421码的基础上进行运算就可以

例1:
(1001)~8421~ =(1100)~余三码~
在这里插入图片描述
例2:
(0111 0001 0010)~8421~ =(1010 0100 0101)~余三码~

在这里插入图片描述

格雷码转换

先写好二进制的数,比如二进制的0110,对应的四位格雷码就是:右数第一位的0和右数第二位的1作异或运算(相同为0,不同为1),这样得到1作为格雷码的第一位,依次类推,最高位的话保持与二进制一样(此处为0),这样就得到格雷码为0101。

(0110)~8421~ =(0101)~格雷码~
在这里插入图片描述

相关文章
|
19天前
|
移动开发 前端开发 API
期末测试——H5方式练习题
期末测试——H5方式练习题
23 0
|
10月前
毛概期末考试要点总结
毛概期末考试要点总结
562 0
|
19天前
|
编解码 算法 网络协议
软考网工计算题总结(一):总共35类题型,进来复习啦!
软考网工计算题总结(一):总共35类题型,进来复习啦!
102 3
|
19天前
|
编译器 C++
【期末不挂科-C++考前速过系列P3】大二C++第3次过程考核(20道选择题&12道判断题&2道代码题)【解析,注释】
【期末不挂科-C++考前速过系列P3】大二C++第3次过程考核(20道选择题&12道判断题&2道代码题)【解析,注释】
|
19天前
|
C++
【期末不挂科-C++考前速过系列P2】大二C++第2次过程考核(20道选择题&10道判断题&3道代码题)【解析,注释】
【期末不挂科-C++考前速过系列P2】大二C++第2次过程考核(20道选择题&10道判断题&3道代码题)【解析,注释】
|
19天前
|
存储 安全 编译器
《C#程序设计》期末大作业复习答案
《C#程序设计》期末大作业复习答案
|
11月前
学C的第八天(完成猜字谜游戏复习之前的内容;了解goto转向语句;补充知识点;练习,学习试除法和辗转相除法)-2
3.写一个代码,打印100-200之间的素数:(新思路:试除法) (判断i是否为素数:用 2到i-1 之间的数字去试除 i,如果能整除则i不是素数)
|
10月前
|
测试技术 C语言 C++
【浙江大学PAT真题练习乙级】1006 换个格式输出整数 (15分) 真题解析
【浙江大学PAT真题练习乙级】1006 换个格式输出整数 (15分) 真题解析
|
11月前
|
C语言
学C的第八天(完成猜字谜游戏复习之前的内容;了解goto转向语句;补充知识点;练习,学习试除法和辗转相除法)-1
复习之前学C的内容: 猜数字游戏: 1. 电脑会随机生成一个数 2. 猜数字: a> 猜大了,提醒猜大了,继续猜 b> 猜小了,提醒猜小了,继续猜 c> 猜对了,恭喜你,猜对了,结束游戏 3. 玩完一把不过瘾可以继续玩,不用退出程序
|
存储 机器学习/深度学习 算法
【第十四届蓝桥杯考前速成】必考知识点及代码模板总结,看完至少多拿50分
四、简单图论 1、单源最短路径 2、多源最短路 3、最小生成树 五、动态规划 1、0-1背包 2、完全背包 3、多重背包 4、线性DP 总结
113 0