自然二进制与格雷码的转换
自然二进制:Bn-1Bn-2….B2B1B0
格雷码 :Gn-1Gn-2…G2G1G0
自然二进制转格雷码公式: Gi = Bi ,i = n-1
Gi = Bi xor Bi+1 ,i = 0:n-2
格雷码转自然二进制:Bi = Gi,i = n-1
Bi-1 = Gi-1 xor Bi,i = 1:n-1
一般的,普通二进制码与格雷码可以按以下方法互相转换:
二进制码->格雷码(编码):从最右边一位起,依次将每一位与左边一位异或(XOR)(http://bk.7tmusic.com/lemma-php/dispose/view.php/379209.htm),作为对应格雷码该位的值,最左边一位不变(相当于左边是0);
格雷码-〉二进制码(解码):从左边第二位起,将每位与左边一位解码后的值异或,作为该位解码后的值(最左边一位依然不变).
modele bin2gry(Gry,Bin)
parameter length = 8;
output [length-1:0] Gry;
input [length-1:0] Bin;
reg [length-1:0] Gry;
integer i;
always @ (Bin)
begin
for(i=0;i<length-1;i++)
Gry[i]=Bin[i]^Bin[i+1];
Gry[i]=Bin[i];
end
endmodule
modele gry2bin(Gry,Bin)
parameter length = 8;
output [length-1:0] Gry;
input [length-1:0] Bin;
reg [length-1:0] Bin;
integer i;
always @ (Gry)
begin
Bin[length-1]=Gry[length-1];
for(i=length-2;i>=0;i--)
Bin[i]=Bin[i+1]^Gry[i];
end
endmodule
转载于:https://www.cnblogs.com/lueguo/p/3357031.html
自然二进制与格雷码的转换相关推荐
- 自然二进制数与格雷码的相互转换
自然二进制码与格雷码的相互转换 一.前言 二.自然二进制数转格雷码 2.1 自然二进制数转格雷码原理 2.2 verilog代码 2.3 Testbench 2.4 仿真结果 三.格雷码转自然二进制数 ...
- 【FPGA实验2】二进制转为格雷码
关于FPGA入门实验2--二进制到格雷码的转换的一个记录 实验中作用到的仪器信息: 芯片商家:ALTERA 编程软件:Quartus II 试验箱上的芯片型号:EP4CE6E22C8N 快速导航
- 二进制与格雷码之间的转换的Verilog实现(更多一点的讨论)
目录 前言 二进制码转换为格雷码的方法 格雷码转换为二进制码的过程 更多一点讨论之generate for 更多一点讨论之for 最后对格雷码的介绍 前言 以前的博客也有写这方面的内容,只是没有显式的 ...
- C语言学习:二进制码与格雷码的转换
格雷码,又叫循环二进制码或反射二进制码,格雷码是我们在工程中常会遇到的一种编码方式,它的基本的特点就是任意两个相邻的代码只有一位二进制数不同. 格雷码的基本特点就是任意两个相邻的代码只有一位二进制数不 ...
- 二进制和格雷码转换方法及程序
二进制和格雷码转换方法及程序 1 格雷码介绍 2 二进制转格雷码 3 格雷码转二进制 1 格雷码介绍 格雷码(Gray code)是1880年由法国工程师Jean-Maurice-Emlle Baud ...
- 自然二进制码与格雷码相互转换【CSDN】
自然二进制码与格雷码相互转换 一.格雷码简介 格雷码是由弗兰克·格雷于1953年发明,其主要特点是相邻编码值中间只有一个比特发生改变,又被称为循环码. 格雷码是一种无权码,采用绝对编码方式,典型格雷码 ...
- 生成二进制反射格雷码
递归生成二进制反射格雷码: 需求: 我们使用递归的方式来生成二进制的反射格雷码. 什么是格雷码? 典型的二进制格雷码(Binary Gray Code)简称格雷码,因1953年公开的弗兰克·格 ...
- 减治法在生成子集问题中的应用(JAVA)--递归、二进制反射格雷码
减治法在生成组合对象问题中的应用 生成子集问题:经典的背包问题就是求解一个最优子集的问题,这里我们来讨论一个更简单的问题.对于任意一个集合来说,它都存在2^n个子集(一个集合所有的子集集合称为幂集). ...
- (88)FPGA面试题-使用Verilog HDL编写二进制转格雷码
1.1 FPGA面试题-使用Verilog HDL编写二进制转格雷码 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试题-使用Verilog HDL编写二进制 ...
最新文章
- 50行Python代码,获取公众号全部文章
- MacPro 系统空间竟占90G,如何清理--OmniDiskSweeper
- python grpc_python中grpc的使用示例
- 蜜罐中利用jsonp跨域漏洞和xss漏洞的分析
- apt-get erro
- (原创)如何解决matlab乱码问题
- c语言二维数组应该注意,第08天C语言(02):二维数组-注意点
- 叩丁狼开发工程师:SSR服务架构特点分析
- java game nokia 5233 model,诺基亚S60/^3完美运行GBA游戏教程 重回孩提时代
- 世界五大学习方法之费曼技巧
- 内网集群 无法通信_IPSEC连接成功,内网之间却无法互相通信。
- 密苏里大学理工学院计算机,密苏里大学理工学院
- mysql数据库递归访问数据
- 2022年虚拟电厂行业研究报
- 【每日早报】2019/06/25
- Python 下标异常
- 纳米二氧化硅/分解酶/聚己内酯复合微球/银纳米颗粒修饰二氧化硅微球SERS基底的应用
- 当网红本人成为网红毒瘤:Vtuber的纸片人模式能够破解困局吗?
- EPS的简单操作使用
- Java中 for(int i:index)什么意思!
热门文章
- @Value(${}) 与@Value(#{}) 区别
- Hi,这有一份风控体系建设干货
- iTunes备份到电脑F盘
- XML 解析错误:找不到根元素
- Spring事务报错: org.springframework.transaction.UnexpectedRollbackException
- python 写入excel数字格式_从Pandas写入Excel时设置默认数字格式
- a股历史30年的大盘价_中国股市历史图(中国股市30年走势图)
- 完美解决:Chrome浏览器无法自动保存/填充密码
- Echart.js China.js制作中国热力图
- The run destination XXX的 iPhone is not valid for Running the scheme 'Day7通讯录Demo'.