二进制和格雷码转换方法及程序
二进制和格雷码转换方法及程序
- 1 格雷码介绍
- 2 二进制转格雷码
- 3 格雷码转二进制
1 格雷码介绍
格雷码(Gray code)是1880年由法国工程师Jean-Maurice-Emlle Baudot发明的一种编码,是一种绝对编码方式,典型格雷码是一种具有反射特性和循环特性的单步自补码,它的循环、单步特性消除了随机取数时出现重大误差的可能,它的反射、自补特性使得求反非常方便。格雷码属于可靠性编码,是一种错误最小化的编码方式,因为,虽然自然二进制码可以直接由数/模转换器转换成模拟信号,但在某些情况,例如从十进制的3转换为4时二进制码的每一位都要变,能使数字电路产生很大的尖峰电流脉冲。而格雷码则没有这一缺点,它在相邻位间转换时,只有一位产生变化。它大大地减少了由一个状态到下一个状态时逻辑的混淆。由于这种编码相邻的两个码组之间只有一位不同,引起数字量发生变化时,格雷码仅改变一位,这样与其它编码同时改变两位或多位的情况相比更为可靠,即可减少出错的可能性。
格雷码是一个数列集合,相邻两数间只有一个位元改变,为无权数码,且格雷码的顺序不是唯一 的。
格雷码的构造方法为:直接排列以二进制为0值的格雷码为第零项,第一项改变最右边的位元,第二项改变右起第一个为1的位元的左边位元,第三、四项方法同第一、二项,如此反覆,即可排列出n个位元的格雷码。
二进制和格雷码转换方法及程序相关推荐
- 减治法在生成子集问题中的应用(JAVA)--递归、二进制反射格雷码
减治法在生成组合对象问题中的应用 生成子集问题:经典的背包问题就是求解一个最优子集的问题,这里我们来讨论一个更简单的问题.对于任意一个集合来说,它都存在2^n个子集(一个集合所有的子集集合称为幂集). ...
- (88)FPGA面试题-使用Verilog HDL编写二进制转格雷码
1.1 FPGA面试题-使用Verilog HDL编写二进制转格雷码 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试题-使用Verilog HDL编写二进制 ...
- 生成二进制反射格雷码
递归生成二进制反射格雷码: 需求: 我们使用递归的方式来生成二进制的反射格雷码. 什么是格雷码? 典型的二进制格雷码(Binary Gray Code)简称格雷码,因1953年公开的弗兰克·格 ...
- 自然二进制与格雷码的转换
自然二进制:Bn-1Bn-2-.B2B1B0 格雷码 :Gn-1Gn-2-G2G1G0 自然二进制转格雷码公式: Gi = Bi ,i = n-1 Gi = Bi xor Bi+1 ,i = ...
- 【FPGA实验2】二进制转为格雷码
关于FPGA入门实验2--二进制到格雷码的转换的一个记录 实验中作用到的仪器信息: 芯片商家:ALTERA 编程软件:Quartus II 试验箱上的芯片型号:EP4CE6E22C8N 快速导航
- 二进制与格雷码之间的转换的Verilog实现(更多一点的讨论)
目录 前言 二进制码转换为格雷码的方法 格雷码转换为二进制码的过程 更多一点讨论之generate for 更多一点讨论之for 最后对格雷码的介绍 前言 以前的博客也有写这方面的内容,只是没有显式的 ...
- 格雷码转换成二进制c语言程序,格雷码与二进制的转换程序
/* 格雷码与二进制的转换程序 * 本程序采用递推的方法进行推导,可以转换0~2147483647之间的数(1~31位) * 推导方式如下(以三位格雷码为例): * 序号 格雷码 格雷码实值 二进制码 ...
- chisel格雷码二进制转换
一.格雷码简介 格雷码是一个叫弗兰克*格雷的人在 1953 年发明的,最初用于通信.格雷码是一种循环二进制码或者叫作反射二进制码.格雷码的特点是从一个数变为相邻的一个数时,只有一个数据位发生跳变,由于 ...
- 格雷码编码与二进制的关系
一. 格雷码的编码规则 递归推导方法: 1位格雷码有两个码字(0和1) (n+1)位格雷码中的前2n个码字等于n位格雷码的码字,按顺序书写,加前缀0 (n+1)位格雷码中的后2n个码字等于n位格雷码 ...
最新文章
- 循环for语句 if语句
- 关于学习Python的一点学习总结(30->递归实例)
- button按钮无法提交表单问题发现与解决
- 手动清除后门程序Iexplores.exe
- java使用循环案例——CSDN博客
- leetcode546. 移除盒子(dp)
- java 函数委托_Java反射实现.NET委托
- 3DMax基础入门教程,命令面板的设置简介以及功能
- python进销存课程_蜗牛笔记-文章-蜗牛进销存项目实战(一)
- Java实现MySql分页查询
- 【小程序源码】笑话段子手
- 如何在CSDN上上传资源
- Reporting Services 配置工具
- 研究生期间如何赚外快
- 掌阅Android App插件补丁实践(ZeusPlugin)
- 高中计算机八字标语,高中励志八字标语40句
- 垃圾分类与AI的反碎片之旅
- ***万象服务器的方法
- html2canvas动态图片ios空白,html2canvas ios系统保存图片空白问题
- neo4j图形数据库第七弹——整合vis.js实现数据可视化