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

简介: 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)~格雷码~
在这里插入图片描述

相关文章
|
4月前
|
JSON API 开发者
淘宝天猫商品详情API接口攻略
淘宝天猫商品详情API接口是电商开发的重要工具,支持获取商品主图、价格、标题、销量及属性等详细信息。该接口广泛应用于电商数据分析与自动化购物领域。开发者可通过注册淘宝开放平台账号、申请权限并按照流程调用接口,实现商品基础信息、详情描述、图片视频资源、SKU属性及评价数据的查询。示例代码展示了如何使用Python调用此API,帮助快速上手开发。
129 13
|
11月前
|
算法
基于最小二乘递推算法的系统参数辨识matlab仿真
该程序基于最小二乘递推(RLS)算法实现系统参数辨识,对参数a1、b1、a2、b2进行估计并计算误差及收敛曲线,对比不同信噪比下的估计误差。在MATLAB 2022a环境下运行,结果显示了四组误差曲线。RLS算法适用于实时、连续数据流中的动态参数辨识,通过递推方式快速调整参数估计,保持较低计算复杂度。
|
关系型数据库 MySQL Linux
通过虚拟机进行安装Centos7.0并且安装MySQL
通过虚拟机进行安装Centos7.0并且安装MySQL
196 0
|
缓存 开发框架 监控
优化后端服务响应时间的关键策略与实践
在当今数字化时代,优化后端服务响应时间至关重要。本文探讨了几种关键策略和实践方法,帮助开发团队提高系统性能和用户体验。通过合理的资源分配、技术选型和代码优化,可以有效缩短响应时间,提升系统的整体效率和稳定性。【7月更文挑战第5天】
369 0
|
11月前
|
Linux Perl
kylinV10SP2切换启动内核
kylinV10SP2切换启动内核
|
缓存 NoSQL 应用服务中间件
高性能软件负载OpenResty整合Reids集群配置
高性能软件负载OpenResty整合Reids集群配置
535 1
|
机器学习/深度学习 人工智能 测试技术
BackTrader 中文文档(十四)(3)
BackTrader 中文文档(十四)
153 0
BackTrader 中文文档(十四)(3)
|
机器学习/深度学习 机器人 计算机视觉
基于YOLOv8深度学习的水稻叶片病害智能诊断系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战
基于YOLOv8深度学习的水稻叶片病害智能诊断系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战
|
算法 开发者
【Qt UI相关】Qt5和Qt6中关于高DPI缩放属性
【Qt UI相关】Qt5和Qt6中关于高DPI缩放属性
1457 1
|
网络协议 安全 网络安全
什么是 SOCKS5 代理,它最适合做什么?
SOCKS代理是用于穿透防火墙,使客户端能与服务器通信的协议,它不依赖特定的协议或程序。作为第5层协议,SOCKS能处理HTTP、HTTPS等请求,但不支持低于第5层的协议。SOCKS4与SOCKS5的区别在于身份验证和UDP支持,SOCKS5提供更强的安全性,如通过SSH加密。SOCKS代理通过指定服务器路由流量,隐藏IP地址,常用于网页抓取和避免IP封锁。虽然能隐藏位置,但不保证数据安全,不如VPN加密。SOCKS5代理的优点包括:受防火墙保护的服务访问、更快的P2P性能、无需特殊设置、提高性能和可靠性,特别是通过UDP协议实现。