1. 十进制转2421码:小于4不考虑使用最高位,从最高位向最低位依次相减。

  如3=2+1,为0011;7=2+4+1,为1101

  2. 十进制5211码:按照最高位,次高位,最低位,次低位的顺序依次相减

  如6=5+1,为1001,7=5+2,为1100

  3. 格雷码转换

  介绍:http://blog.csdn.net/jingfengvae/article/details/51691124

  证明格雷码相邻的两个数中不同的位数只有1位:http://www.cnblogs.com/cmyg/p/6565627.html

二/十进制转格雷码:

  

s -> t

t=s ^ (s >> 1);

t=

    s[3] s[2] s[1] s[0]

xor          s[3] s[2] s[1]

//////////////////////////////////////////////////////////////////////

格雷码转二/十进制:

s -> t

t=s;

while (s>>=1)
        t^=s;

其实t[3]=s[3]  t[2]=t[3] xor s[2] = s[3] xor s[2]  t[1]=t[2] xor s[1] = s[3] xor s[2] xor s[1]  t[0]=t[1] xor s[0] = s[3] xor s[2] xor s[1] xor s[0]

t=

    s[3] s[2] s[1] s[0]

xor      s[3] s[2] s[1]

xor             s[3] s[2]

xor           s[3]

  xor满足交换律,结合律:http://www.cnblogs.com/cmyg/p/6565618.html

文件下载地址:http://pan.baidu.com/s/1nu6Hydz

BCD码(如何转换,转换方式的证明)的更多相关文章

  1. 基于Verilog HDL的二进制转BCD码实现

    在项目设计中,经常需要显示一些数值,比如温湿度,时间等等.在数字电路中数据都是用二进制的形式存储,要想显示就需要进行转换,对于一个两位的数值,对10取除可以得到其十位的数值,对10取余可以得到个位的数 ...

  2. 事件日期转BCD码

    BCD码 BCD码 BCD码 射频卡编码方式

  3. Linux时间戳转换成BCD码(转载)

    #include <stdio.h> #include <stdlib.h> #include <time.h> #include <math.h> / ...

  4. C#下16进制和BCD码转换代码

        private static Byte[] ConvertFrom(string strTemp) { try { if (Convert.ToBoolean(strTemp.Length & ...

  5. 二进制 转换成十进制 BCD码(加3移位法)

    "原来的二进制数十几位,则左移时就要左移几位" "二进制数调整BCD码的方法是将二进制码左移8次,每次移位后都检查低四位LSD+3是否大于7,如是则加3,否则不加,高4位 ...

  6. 一种BCD码转换的算法

    #include "stdio.h" typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef ...

  7. Babel 转码器 § es6转换es5

    Babel 转码器 § es6转换es5 实时转码 /  Repl  -babel-node / babel-register(自动转码引入babel-register模块) 配置文件.babelrc ...

  8. 在上传文件时候 request.setCharset对文件名有效 对普通文本域无效 需要通过手动转换编码方式编码

    在上传文件时候 request.setCharset对文件名有效 对普通文本域无效 需要通过手动转换编码方式编码

  9. Java & C# BCD编码与十进制转换

    using System;using System.Collections.Generic;using System.Text; namespace Base{ public class BCDHel ...

  10. FPGA加三移位算法:硬件逻辑实现二进制转BCD码

    本文设计方式采用明德扬至简设计法.利用FPGA来完成显示功能不是个很理想的方式,当显示任务比较复杂,要通过各种算法显示波形或者特定图形时,当然要用单片机通过C语言完成这类流程控制复杂,又对时序要求不高 ...

随机推荐

  1. 普通程序员看k8s基于角色的访问控制(RBAC)

    一.知识准备 ● 上一节描述了k8s的账户管理,本文描述基于角色的访问控制 ● 网上RBAC的文章非常多,具体概念大神们也解释得很详细,本文没有站在高屋建瓴的角度去描述RBAC,而是站在一个普通程序员 ...

  2. package-lock.json的作用

    其实用一句话来概括很简单,就是锁定安装时的包的版本号,并且需要上传到git,以保证其他人在npm install时大家的依赖能保证一致. 引用知乎@周载南的回答 根据官方文档,这个package-lo ...

  3. Linux学习期中总结

    一.<Linux内核分析>总结 (一)计算机是如何工作的 1.存储程序计算机工作模型 2. X86CPU的寄存器:通用寄存器.段寄存器.标志寄存器等. 3.计算机的汇编指令 (1)movl ...

  4. Quartz学习(转)

    Quartz, 是一个企业级调度工作的框架,帮助Java应用程序到调度工作/任务在指定的日期和时间运行. 一.在Java工程中使用Quartz 1.导入jar包 com.springsource.or ...

  5. 软件工程(GZSD2015) 第三次作业提交进度

    第三次作业题目请查看这里:软件工程(GZSD2015)第三次作业 开始进入第三次作业提交进度记录中,童鞋们,虚位以待哈... 2015年4月19号 徐镇.尚清丽,C语言 2015年4月21号 毛涛.徐 ...

  6. 圆桌的项目Alpha冲刺(团队)

    (a) 项目课堂演示 (b) 10篇冲刺随笔 冲刺之一 冲刺之二 冲刺之三 冲刺之四 冲刺之五 冲刺之六 冲刺之七 冲刺之八 冲刺之⑨ 冲刺之十 (c) 1篇测试随笔 测试随笔 (d) 1篇冲刺总结随 ...

  7. PAT 1022 D进制的A+B

    https://pintia.cn/problem-sets/994805260223102976/problems/994805299301433344 输入两个非负10进制整数A和B(<=2 ...

  8. JQuery 操作 radio 被坑一例

    .removeAttr('checked'); .prop('checked',false); .prop('checked',true); 与 .attr("checked",t ...

  9. [转帖]召冠总的 SQLSERVER常用的性能诊断语句. --保存学习备查

    CopyFrom https://www.cnblogs.com/zhaoguan_wang /*常规服务器动态管理对象包括:dm_db_*:数据库和数据库对象dm_exec_*:执行用户代码和关联的 ...

  10. 从网上整理的一些delphi字符串加密解密方法

    function Encode(Str: string): string; var //加密 TmpChr: AnsiChar; i, Len: integer; begin Result := St ...