8421BCD码 5421BCD码 余三码 格雷码 余三循环码之间的关系,转换以及简易方法

8421BCD码 5421BCD码 余三码 格雷码 余三循环码之间的关系,转换以及简易方法8421BCD码5421BCD码余三码格雷码余三循环码之间的关系,转换以及简易方法1.有权码和无权码的包括2.各种码值的介绍8421码的简介8421码又称为BCD码,是十进代码中最常用的一种。在这种编码方式中,每一位二值代码的“1”都代表一个固定数值。将每位“1”所代表的 二进制数加起来就可以得到它所代表的十进制数字。因为代码中从左至右看每一位“1”分别代表数字“8”“4…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

8421BCD码 5421BCD码 余三码 格雷码 余三循环码之间的关系,转换以及简易方法

1. 有权码和无权码的包括

有权码和无权码的分类

2.各种码值的介绍

  1. 8421码的简介

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

  2. 类比8421BCD码 可以得到 5421码 2421码

    由此可知 8421码 5241码和2421码 都是 十进代码 只是最右面位的权值不同

  3. 余三码

    ** 余三码(余3码)是由8421BCD码加上0011形成的一种无权码 **,由于它的每个字符编码比相应的8421码多3,故称为余三码。BCD码的一种。余3码的特点:当两个十进制数的和是10时,相应的二进制编码正好是16,于是可自动产生进位信号,而不需修正。0和9, 1和8,……5和4的余3码互为反码,这在求对于10的补码很方便。
    余三码是一种对9的自补代码,因而可给运算带来方便。其次,在将两个余三码表示的十进制数相加时,能正确产生进位信号,但对“和”必须修正。修正的方法是:如果有进位,则结果加3;如果无进位,则结果减3。
    百度百科

  4. 格雷码

    在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码。
    格雷码的介绍

    格雷码的特点

    1. 可靠性编码
      因为,虽然自然二进制码可以直接由数/模转换器转换成模拟信号,但在某些情况,例如从十进制的3转换为4时二进制码的每一位都要变,能使数字电路产生很大的尖峰电流脉冲。而格雷码则没有这一缺点,它在相邻位间转换时,只有一位产生变化。它大大地减少了由一个状态到下一个状态时逻辑的混淆。由于这种编码相邻的两个码组之间只有一位不同,因而在用于方向的转角位移量-数字量的转换中,当方向的转角位移量发生微小变化(而可能引起数字量发生变化时,格雷码仅改变一位,这样与其它编码同时改变两位或多位的情况相比更为可靠,即可减少出错的可能性。

    2. 绝对编码方式
      典型格雷码是一种具有反射特性和循环特性的单步自补码,它的循环、单步特性消除了随机取数时出现重大误差的可能,它的反射、自补特性使得求反非常方便。

    3. 变权码
      每一位码没有固定的大小,很难直接进行比较大小和算术运算,也不能直接转换成液位信号,要经过一次码变换,变成自然二进制码,再由上位机读取

    4. 绝对编码方式的准权码
      典型格雷码是一种采用绝对编码方式的准权码,其权的绝对值为2^i-1(设最低位i=1)

    5. 格雷码的十进制数奇偶性与其码字中1的个数的奇偶性相同

  5. 余三循环码

    余3循环码是变权码,每一位的1并不代表固定的数值,它具有格雷码的优点,即两个相邻代码之间仅有一位的状态不同。 .

3几种码制之间的转换关系

十进制数 二进制 8421码 5421码 2421码 余三码 余三循环码
0 0000 0000 00000 0000 0011 0010
1 0001 0001 0001 0001 0100 0110
2 0010 0010 0010 0010 0101 0111
3 0011 0011 0011 0011 0110 0101
4 0100 0100 0100 0100 0111 0100
5 0101 0101 1000 1011 1000 1100
6 0110 0110 1001 1100 1001 1101
7 0111 0111 1010 1101 1010 1111
8 1000 1000 1011 1110 1011 1110
9 1001 1001 1100 1111 1100 1010

本人建议:码制之间的转换方法虽然有 但是不介意用 因为记住才是王道 但如果那个忘记了 可以用此方法进行演推

  1. 4位二进制码 和 8421码完全相同 所以可以直接转换

    注意

     BCD码 是四位 不可随意增删 0
    

    Jetbrains全家桶1年46,售后保障稳定

  2. 8421码 转换成 5421码 (2421码)
    先转换十进制码值 然后再转换成 5421码(2421码)
    例如: (0110 1000 1001)8241BCD = (6 8 9)D =(1001 1011 1100)5421BCD = (1100 1110 1111)2421BCD码

    注意哦

     如果2421码 如果码值a>4 需要先权值追高位 依次进行转化就行了

    例如 a=5
    5-2=3 ······1
    3-4<0 ······0
    3-2=1 ······1
    1-1=0 ······1
    故:(5)D=(1011)2421BCD

  3. 余三码转换
    1. 8421码转换成余三码
      (abcd)8421码 + (0011) = (wxyz)余三码

    2. (h)D转化成余三码
      (h+3)D —> 4位二进制数=余三码
      如果不足四位在最左面补0

    3. 5421码 转换成余三码.

      1. 从左到右 如果左面第一位不是1
        (0bcd)5421码 + (0011) = (wxyz)余三码
      2. 从左到右 如果左面第一位是1
        5421码 和 余三码相同
    4. 格雷码
      在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207168.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java中synchronized使用方法

    java中synchronized使用方法

    2021年12月2日
    47
  • privacypolicy什么意思_privacyversion

    privacypolicy什么意思_privacyversion隐私政策网址(URL)移动APP应用尊重和保护利用用户的隐私所有的服务。为了向您提供更准确,更人性化的服务,将移动APP应用使用和披露按照本隐私政策您的个人信息。但是移动APP应用将是一个高度的勤勉,审慎义务对待这些信息。除本隐私政策另有规定外,未经您的许可之前,移动APP应用信息将不会被披露或向第三方提供。移动APP应用更新本隐私政策不时。当您同意移动APP应用服务协议,您将被视为……

    2025年12月15日
    7
  • Docker安装Rabbitmq超详细教程

    Docker安装Rabbitmq超详细教程安装Rabbitmq1.使用docker查询rabbitmq的镜像dockersearchrabbitmq2.安装镜像安装name为rabbitmq的这里是直接安装最新的,如果需要安装其他版本在rabbitmq后面跟上版本号即可dockerpullrabbitmq3.运行mq:dockerrun-d–hostnamemy-rabbit–namerabbit-p15672:15672-p5673:5672rabbitmq通过dockerps-a查看部

    2022年5月24日
    55
  • Mac录屏软件:Record It[通俗易懂]

    Mac录屏软件:Record It[通俗易懂]RecordIt是一款屏幕录制应用软件,支持录制屏幕和录制声音,让您能够精准,高质量地捕获屏幕上所有的活动。RecordIt支持制作专业的应用软件演示,录制在线视频,ppt和图片幻灯片,制作指导教程等。同时录制来自系统声音或麦克风的声音。软件特色Recordit支持Windows和Mac两种系统,操作方式也很简单,将Recordit安装后执行,它会常驻于右上角菜单栏,开始前先把想录影的视窗打开,点选右上角的Recordit图示开始。使用Recordit的十字线来拖曳、绘制出想要录影

    2025年12月8日
    5
  • Vivado中ILA显示信号不全的解决办法

    Vivado中ILA显示信号不全的解决办法在代码中加入了很多信号 但是下载程序后进入 ILA 界面时信号却显示不全 其实这不是代码的问题 信号有是有 只是没有添加进来 点击加号把没有显示的信号添加进来就可以了

    2025年11月7日
    5
  • 微信小程序+java后台[通俗易懂]

    微信小程序+java后台[通俗易懂]      博主是大四学生,毕业设计做的是微信小程序+java后台。陆陆续续经历了三个月(因为白天要实习又碰上过年玩了一阵子),从对微信小程序一无所知到完成毕设,碰到许多问题,在跟大家分享一下自己的经历和一个小程序怎么从零开始。希望像我一样的小程序初学者看了这篇文章,可以少花费一些不必要的时间,少踩一点坑。          开发一个微信小程序需要https域名以及服务器,博主购买的是阿里…

    2022年7月8日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号