灰码:二进制到灰码转换器

什么是格雷密码?

灰色代码-也被称为循环代码,反映了二进制代码(RBC),反映二元(RB)或灰色的代码- 被定义为二进制数字系统的排序,使得每个增量值只能不同。在灰色代码中,在代码组中仅遍历一步到另一步,只有一位更改。也就是说,两个相邻的代码仅不同于一位彼此不同。

格雷码是单位距离代码中最流行的,但它不适用于算术运算。格雷码在模拟转换器中具有一些应用,以及用于数字通信中的纠错。灰色代码最初可能难以理解,但在查看下面的灰色代码表时变得更加容易理解。

灰色代码表

表显示二进制代码与灰色代码和十进制到格雷码之间的转换的表如下:

灰色代码表

二灰码转换器

将二进制代码转换为等效变灰代码的逻辑电路已知为二进制到灰色码转换器。可以通过在2之后反映轴的N-1位代码来获得n比特格雷格码n - 1并将0的MSB(最有效位)放在轴的上方,1的MSB放在轴的下方。灰码的反射如下图所示。

4位二进制到灰码的转换表如下:

二进制到灰色码转换器

这意味着,在4位格雷码中,(4-1)或3位代码反映在(24 - 1)th或8th行。

二灰码转换电路如下图所示:

BCD转到格雷码

如何转换二进制到灰色代码

  1. MSB(最高有效位)的格雷代码将与给定二进制数的第一位完全相同。
  2. 代码的第二位将是给定二进制数的第一和第二位的排他性 - 或(xor),即,如果两个比特都相同,结果将是0,如果它们不同,结果将是1。
  3. 灰码的第三位等于给定二进制数的第二位和第三位的异或(XOR)。因此,二进制到灰码的转换继续进行。下面给出一个示例来说明这些步骤。

二进制到灰码的转换示例

假设我们有一个二进制数字01001,我们想把它转换成灰码。让我们看一个如何执行这种转换的例子:

  1. MSB保持不变。由于二进制的MSB为0,但是灰色码的MSB也是0(第一灰度位)
  2. 然后,取第一个二进制位和第二个二进制位的异或。第一个位是0,第二个位是1。由于比特不同,所以合成的灰比特为1(第二个灰比特)
  3. 接下来,拍摄第二和第三二进制位的XOR。第二位为1,第三位为0.这些位再次不同,因此所得到的灰度位为1(第三灰度位)
  4. 接下来,拍摄第三和第四二进制比特的XOR。第三位为0,第四位为0.因为它们相同,所得到的灰度位为0(第四灰度位)
  5. 最后,求第四个和第五个二进制位的异或。第4位是0,第5位是1。这些位是不同的,所以合成的灰位是1(第五个灰位)
  6. 因此,01001的二进制到灰度码转换结果完成,等效灰度码为01101。
格雷码转换器

灰色到二进制码转换器

在一个灰色到二进制码转换器时,输入为灰色码,输出为其等效的二进制码。

让我们考虑一个4位的灰色到二进制码转换器。为了设计一个4位灰度到二进制码的转换器,我们首先要画一个灰度码转换表,如下图所示:

二灰码真值表

到二进制转换器电路的灰度代码如下所示:

灰色到二进制码转换器电路

到二进制转换的灰色代码

灰码到二进制的转换这又是一个非常简单的过程。以下步骤可以让你清楚地了解这种类型的转换。

  1. 二进制数的MSB将等于给定灰色代码的MSB。
  2. 如果第二个灰色位是0,那么第二个二进制位就会和前一个或者第一个位一样。如果灰色位是1,第二个二进制位将改变。如果它是1,它就是0如果它是0,它就是1。
  3. 这一步是继续所有的位做灰码到二进制的转换
灰码二进制

下面的一个例子将使你的想法更清楚。

二进制转换示例的格雷代码

当灰色的MSB为0时,二进制的MSB为0。现在移动到下一个灰色位。因为它是1,前一个二进制位将改变,即它将是1,因此第二个二进制位将是1。接下来看看格雷代码的第三位。它仍然是1,因此前一位,即第二个二进制位将再次改变,并且二进制数的第三位将是0。现在,给定灰色的第4位是0,所以之前的二进制位不会变,也就是说第4位是0。现在第5个灰色位是1,因此前一个二进制位将会改变,它将从0变为1。因此,在灰码的情况下,二进制转换的等效二进制数为(01001)。

二进制到灰色
二进灰转换器
4位二进制灰码转换器
BCD到灰色代码
灰二进转换
二进制到灰色公式

灰色代码示例序列

  1. 格雷代码只能将一位从其上一步更改为下一步。位的变化始终从右侧到左侧的左侧发生,即从LSB(最低有效位)朝向MSB(最有效位)。
  2. 我们知道对于二进制数字有两种可能的组合- 0和1。根据我们的规则,我们首先瞄准LSB(右侧)。因此前三位保持不变(即000),第四位从0变为1。这是1的小数形式。
  3. 现在从LSB i.e.e.s移动到下一位。第3位。我们现在将该位从0变为1,这是2(0011)的十进制等效物。请注意,与二进制不同,我们不能从0001到0010转到,因为这同时改变第3位(0到1)和第4位(1到0)。
  4. 现在从0011开始递增,我们从LSB(右边)开始,注意到目前为止我们还没有看到组合0010。因此,我们保持前三位不变,并将最后一位从1改为0。因此,十进制数字3的格雷码是0010
  5. 遍历下一个代码。我们不能更改第3个或第4位,因为我们之前看到这些组合。因此,我们将其移至第二位并从0到1的变化。这在格雷码中给出了十进制数4。您可能会质疑为什么我们不能再次更改第三位,这也将是前一个的单位变化。但是随着第三位改变,给出前面发生的等效变灰0000(十进制数0),我们不能这样做。请记住,先前无法重复发生的数字。
  6. 重复先前的步骤,我们将保持第一和第二位常量,并通过仅在每个步骤中仅在每个步骤中更改1位,找到第三和第四位的可能组合。从第4位开始,因为这是LSB。

4位灰度码的比特数为G4G3.G2G1。现在来自转换表,

灰色代码

从上面的sop (Sum Of Products)中,我们得出卡诺酱地图(K-maps) G4, G3., G2,和G.1

格雷码K地图
二进制编码K映射
灰色的地图
灰码到二进制

格雷码的应用

灰色代码用于一些特定的应用程序。主要应用包括用于模拟数字转换器,以及用于数字通信中的纠错。灰码是用来将模拟信号转换为数字信号时尽量减少误差的。

弗兰克格雷-人格雷代码命名为-专利的脉冲编码调制(PCM)管。这个PCM管是由雷蒙德w西尔斯贝尔实验室(与弗兰克格雷和威廉M.古道尔工作)谁认为格雷的想法反映二进制码(即格雷码)。你可以读进去电视用脉冲码调制

灰色代码的一些其他应用:

  • 布尔电路最小化
  • 时钟域之间的通信
  • 误差修正
  • 遗传算法
  • 数学谜题
  • 位置编码器

格雷码的优点

  • 更好地在将模拟信号转换为数字信号时更好地最小化
  • 在使用时减少了“汉明墙”(不期望的状态)的发生遗传算法
  • 可用于最小化逻辑电路
  • 适用于时钟域交叉

格雷码的缺点

  • 不适用于算术运算
  • 在几种特定应用外面的实际使用有限
想要更多的电气知识?
在下面输入您的电子邮件,以获得关于电气和电子工程的免费信息文章yabo和365哪个平台更大

关于Elec亚博ag安全有保障trical4U

亚博ag安全有保障电气4U致力于教学和分享与电气和电子工程有关的所有内容。yabo和365哪个平台更大

发表评论