BCD码(如何转换,转换方式的证明)
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码(如何转换,转换方式的证明)的更多相关文章
- 基于Verilog HDL的二进制转BCD码实现
在项目设计中,经常需要显示一些数值,比如温湿度,时间等等.在数字电路中数据都是用二进制的形式存储,要想显示就需要进行转换,对于一个两位的数值,对10取除可以得到其十位的数值,对10取余可以得到个位的数 ...
- 事件日期转BCD码
BCD码 BCD码 BCD码 射频卡编码方式
- Linux时间戳转换成BCD码(转载)
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <math.h> / ...
- C#下16进制和BCD码转换代码
private static Byte[] ConvertFrom(string strTemp) { try { if (Convert.ToBoolean(strTemp.Length & ...
- 二进制 转换成十进制 BCD码(加3移位法)
"原来的二进制数十几位,则左移时就要左移几位" "二进制数调整BCD码的方法是将二进制码左移8次,每次移位后都检查低四位LSD+3是否大于7,如是则加3,否则不加,高4位 ...
- 一种BCD码转换的算法
#include "stdio.h" typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef ...
- Babel 转码器 § es6转换es5
Babel 转码器 § es6转换es5 实时转码 / Repl -babel-node / babel-register(自动转码引入babel-register模块) 配置文件.babelrc ...
- 在上传文件时候 request.setCharset对文件名有效 对普通文本域无效 需要通过手动转换编码方式编码
在上传文件时候 request.setCharset对文件名有效 对普通文本域无效 需要通过手动转换编码方式编码
- Java & C# BCD编码与十进制转换
using System;using System.Collections.Generic;using System.Text; namespace Base{ public class BCDHel ...
- FPGA加三移位算法:硬件逻辑实现二进制转BCD码
本文设计方式采用明德扬至简设计法.利用FPGA来完成显示功能不是个很理想的方式,当显示任务比较复杂,要通过各种算法显示波形或者特定图形时,当然要用单片机通过C语言完成这类流程控制复杂,又对时序要求不高 ...
随机推荐
- Centos7.3下安装Jumpserver 1.0.0(支持windows组件)
Jumpserver最新版本支持windows组件,废话不多介绍了,下面直接介绍下部署过程: 0)系统环境 CentOS 7.3 IP: 192.168.10.210 [root@jumpserver ...
- python-小知识点-14
''' python2 python3 ''' #python2 print() print 'abc' range() xrange() 生成器 raw_input() #python3 print ...
- week4--系统调用的工作机制
潘恒 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.使用库函数AP ...
- 20145221 《Java程序设计》实验报告四:Android开发基础
20145221 <Java程序设计>实验报告四:Android开发基础 实验要求 基于Android Studio开发简单的Android应用并部署测试; 了解Android组件.布局管 ...
- mac安装sublime text 3,含注册码
软件下载地址: https://www.sublimetext.com/3 注册码如下: —– BEGIN LICENSE —– TwitterInc 200 User License EA7E-89 ...
- Maven:The parent project must have a packaging type of POM
在Maven Project 执行 New Maven Modual时,提示错误:The parent project must have a packaging type of POM http:/ ...
- Redis交互编程语言及客户端
Redis Desktop Manager https://redisdesktop.com/download Redis Clients https://redis.io/clients/ ...
- node的读写流
let http = require('http'); http.createServer((req,res)=>{ res.end(); }).listen(,()=>{ console ...
- WebService概述
一.WebService介绍 什么是WebService? 一言以蔽之:WebService是一种跨编程语言和跨操作系统平台的远程调用技术. 所谓跨编程语言和跨操作平台,就是说服务端程序采用java编 ...
- 序列化与反序列化,json,pickle,xml,shelve,configparser模块
序列化与反序列化 什么是序列化?序列化就是将内存中的数据结构转换成一种中间格式存储到硬盘或者基于网络传输.反序列化就是将硬盘中或者网络中传来的一种数据格式转换成内存中数据结构. 为什么要有? 1.可以 ...