数字电子教程

数字电子 - 主页

数字电子基础

数字系统的类型 信号类型 逻辑电平和脉冲波形 数字系统组件 数字逻辑运算 数字系统优势

数字系统

数字系统 二进制数表示 二进制运算 有符号二进制运算 八进制运算 十六进制运算 补码运算

进制转换

进制转换 二进制到十进制转换 十进制到二进制转换 二进制到八进制转换 八进制到二进制转换 八进制到十进制转换 十进制到八进制的转换 十六进制到二进制的转换 二进制到十六进制的转换 十六进制到十进制的转换 十进制到十六进制的转换 八进制到十六进制的转换 十六进制到八进制的转换

二进制代码

二进制代码 8421 BCD 码 余3码 格雷码 ASCII 码 EBCDIC 码 代码转换 错误检测和纠正码

逻辑门

逻辑门 与门 或门 非门 通用门 异或门 异或门 CMOS 逻辑门 使用二极管电阻逻辑的或门 与门与或门 两级逻辑实现 阈值逻辑

布尔代数

布尔代数 布尔代数定律 布尔函数 德摩根定理 SOP 和 POS 形式 POS 转换为标准 POS 形式

最小化技术

K-Map 最小化 三变量 K-Map 四变量 K-Map 五变量 K-Map 六变量K-Map 无关条件 Quine-McCluskey 方法 最小项和最大项 规范形式和标准形式 最大项表示 使用布尔代数进行简化

组合逻辑电路

数字组合电路 数字算术电路 多路复用器 多路复用器设计程序 多路复用通用门 使用 4:1 多路复用器的 2 变量函数 使用 8:1 多路复用器的 3 变量函数 解复用器 多路复用器与解复用器 奇偶校验位生成器和检查器 比较器 编码器 键盘编码器 优先级编码器 解码器 算术逻辑单元 7 段 LED 显示屏

代码转换器

代码转换器 二进制到十进制转换器 十进制到 BCD 转换器 BCD 到十进制转换器 二进制到格雷码转换器 格雷码到二进制转换器 BCD 到 Excess-3 转换器 Excess-3 到 BCD 转换器

加法器

半加法器 全加器 串行加器 并行加器 使用半加器的全加器 半加器与全加器 全带 NAND 门的加法器 带 NAND 门的半加法器 二进制加法器-减法器

减法器

半减法器 全减法器 并行减法器 使用 2 个半减法器的全减法器 使用 NAND 的半减法器门

顺序逻辑电路

时序电路 时钟信号和触发 锁存器 移位寄存器 移位寄存器应用 二进制寄存器 双向移位寄存器 计数器 二进制计数器 非二进制计数器 同步计数器的设计 同步与异步计数器 有限状态机 算法状态机

触发器

触发器 触发器的转换 D 触发器 JK 触发器 T 触发器 SR 触发器 时钟控制 SR 触发器 非时钟控制 SR 触发器 时钟控制 JK 触发器 JK 至 T 触发器 SR 至 JK触发器 触发器:触发方法 主从 JK 触发器 竞争条件

A/D 和 D/A 转换器

模拟数字转换器 数字模拟转换器 DAC 和 ADC IC

逻辑门的实现

使用 NAND 门实现非门 使用 NAND 门实现或门 使用 NAND 门实现 AND 门 使用 NAND 门实现 NOR 门 使用 NAND 门实现 XOR 门 使用 NAND 门实现 XNOR 门 使用 NOR 门实现 NOT 门 使用 NOR 门实现 OR 门 使用 NOR 门实现 AND 门 NAND 门和 NOR 门之间的区别 使用 NOR 门实现 XOR 门 使用 NOR 门实现 XNOR 门 使用 CMOS 的 NAND/NOR 门 使用 NAND 门的全减法器 使用 2:1 MUX 的 AND 门 使用 2:1 MUX 的 OR 门 使用 2:1 MUX 的非门

存储设备

存储设备 RAM 和 ROM 高速缓存设计

可编程逻辑设备

可编程逻辑设备 可编程逻辑阵列 可编程阵列逻辑 现场可编程门阵列

数字电子系列

数字电子系列

CPU 架构

CPU 架构

数字电子资源

数字电子 - 资源 数字电子 - 讨论


数字电子技术 - 代码转换

在数字电子技术中,我们根据数字系统的规格使用不同类型的二进制代码。为了在不同的数字系统之间进行正确的数据交换,需要执行一个称为代码转换的基本过程。

代码转换是将数字代码从一种格式转换为另一种格式的过程。代码转换被认为是各种数字系统(如计算机、微控制器、通信系统等)中必不可少的过程。

在本章中,我们将研究以下主要代码转换 −

  • 二进制到 BCD 代码的转换
  • BCD 到二进制代码的转换
  • 二进制到格雷码的转换
  • 格雷码到二进制代码的转换
  • BCD 到余 3 代码的转换
  • 余 3 到 BCD 代码的转换
  • 余 3 到格雷码的转换
  • 格雷码到余 3 代码的转换

让我们借助示例详细了解每种类型的代码转换。

二进制到 BCD 代码的转换

BCD 代表二进制编码的十进制。因此,BCD 是以二进制格式表示的十进制数。纯二进制到 BCD 的转换按以下步骤进行 −

步骤 1 − 将给定的纯二进制数转换为其等效的十进制数。

步骤 2 −将得到的十进制数转换为 BCD 码。

让我们通过一个例子来理解二进制到 BCD 码的转换。

示例

将 (100111)2 转换为 BCD 码。

解决方案

给定的二进制是,

二进制 = 100111

给定二进制的十进制等价物是

1 × 25 + 0 × 24 + 0 × 23 + 1 × 22 + 1 × 21 + 1 × 20

= 1 × 32 + 0 × 16 + 0 × 8 + 1 × 4 + 1 × 2 + 1 × 1

= 32 + 0 + 0 + 4 + 2 + 1 = (39)10

现在,将 (39)10 转换为 BCD 码,我们得到,

(3)10 = (0011)BCD

(9)10 = (1001)BCD

因此,给定二进制数的 BCD 等价物为,

(100111)2 = (0011 1001)BCD

BCD 到二进制代码转换

BCD 到二进制代码转换是前面讨论的二进制到 BCD 代码转换的逆过程。

BCD 到二进制代码转换按以下步骤执行 −

步骤 1 − 将给定的 BCD 代码转换为其等效的十进制格式。

步骤 2 −将获得的十进制转换为等效的二进制格式。

以下示例演示了 BCD 到二进制代码的转换。

示例

将 (1001 0111 0010)BCD 转换为二进制代码。

解决方案

将给定的 BCD 代码转换为十进制等效值 −

(1001)BCD = (9)10

(0111)BCD = (7)10

(0010)BCD = (2)10

因此,给定 BCD 的十进制等价物为

(1001 0111 0010)BCD = (972)10

现在,将获得的十进制转换为等效二进制,

BCD 到二进制代码转换

因此,(1001 0111 0010)BCD 的二进制等价物为 (1111001100)2

二进制到格雷码转换

将二进制数转换为其等效格雷码的过程称为二进制到格雷码转换。我们知道格雷码是一种二进制编码方案,其中两个连续的代码仅在一位上有所不同。

将二进制代码转换为格雷码的分步过程如下 −

考虑给定的二进制代码为 Bn Bn-1 Bn-2 … B2 B1,等效格雷码为 Gn Gn-1 Gn-2 … G2 G1。然后,

步骤 1 −将二进制代码的最高有效位 (MSB) 或最左边的位 (Bn) 写为格雷码 (Gn) 的最左边的位,即

Gn = Bn

步骤 2 − 将二进制代码的 MSB (Bn) 和下一位 (Bn-1) 进行异或。将结果记录为格雷码 (Gn-1) 的下一位,即

$$\mathrm{G_{n-1} \: = \: B_{n} \oplus B_{n-1}}$$

步骤 3 −对 Bn-1 和 Bn-2 的下一位进行异或,将结果记录为格雷码 (Gn-2) 的下一位,即:

$$\mathrm{G_{n-2} \: = \: B_{n-1} \oplus B_{n-2}}$$

步骤 4 − 重复此过程,直到给定二进制代码的所有位都用尽。获得的代码将是等效的格雷码。

让我们借助一个例子来理解二进制到格雷码的转换。

示例

将 (110110)2 转换为其等效格雷码。

解决方案

给定的二进制代码为,

二进制 = 110110

将给定的二进制转换为其等效的格雷码,

二进制到格雷码转换

因此,等效格雷码 (101101)gray

格雷码到二进制码转换

将格雷码转换为其等效二进制码的过程称为格雷码到二进制码转换。将给定的格雷码转换为等效二进制码的步骤如下 −

假设给定的格雷码为 Gn Gn-1 Gn-2 … G2 G1,二进制码为 Bn Bn-1 Bn-2 … B2 B1。然后,

步骤 1 − 等效二进制码的最左边位或 MSB 与格雷码的 MSB 相同,因此复制它,即,

Bn = Gn

步骤 2 −将二进制数 Bn 的 MSB 与格雷码的下一个有效位 (Gn-1) 进行异或。将其记录为二进制数的下一个有效位,即

$$\mathrm{B_{n-1} \: = \: B_{n} \oplus G_{n-1}}$$

步骤 3 − 将位 Bn-1 与格雷码的下一个有效位 (Gn-2) 进行异或。将结果记录为二进制数的下一个有效位,即

$$\mathrm{B_{n-2} \: = \: B_{n-1} \oplus G_{n-2}}$$

步骤 4 − 继续此过程,直到所有格雷码位都用尽。所获得的位序列将是给定格雷码的纯二进制码等效项。

让我们举一个例子来了解格雷码到等效二进制码的转换。

示例

将格雷码 (110010)gray 转换为其等效二进制码。

解决方案

格雷码转换为二进制的方法如下 −

格雷码到二进制码转换

因此,(110010)gray 的二进制等效项是 (100011)2

BCD 到 Excess-3 码转换

将一个将给定的 BCD(二进制编码的十进制)转换为其等效的余 3 码称为 BCD 到余 3 码的转换。

要将 BCD 码转换为其等效的余 3 码,我们遵循以下步骤 −

步骤 1 − 将 0011(3)添加到给定 BCD 码的每个 4 位组。

步骤 2 − 生成的代码将是等效的 XS-3 代码。

需要注意的是,在 XS-3 代码中,有六个无效位组合。它们分别是 0000、0001、0010、1101、1110 和 1111。

让我们举一个例子来理解 BCD 到过 3 代码的转换。

示例

将 (0011 1001 1000)BCD 转换为其等效的 XS-3 代码。

解决方案

给定的 BCD 代码转换为其等效的 XS-3 代码如下所示 −

BCD Code 0011 1001 1000
Adding 0011 0011 0011 0011
XS-3 Code 0110 1100 1011

因此,(0011 1001 1000)BCD 的等效 XS-3 代码是 (0110 1100 1011)XS-3

余 3 到 BCD 代码转换

将给定的 XS-3 代码转换为其等效的 BCD(二进制编码的十进制)代码的过程称为余 3 到 BCD 代码转换。

余 3 代码转换为 BCD 代码按以下步骤完成 −

步骤 1 − 从 XS-3 代码的每个 4 位组中减去 0011 (3)。

步骤 2 −生成的代码将是给定 XS-3 代码的 BCD 代码等价代码。

让我们借助示例来了解余 3 到 BCD 代码的转换。

示例

将 (1100 1001 0110)XS-3 转换为其等价的 BCD 代码。

解决方案

XS-3 代码到 BCD 代码的转换如下所示 −

XS-3 Code 1100 1001 0110
Subtracting 0011 0011 0011 0011
BCD Code 1001 0110 0011

因此,(1100 1001 0110)XS-3 的等效 BCD 码是 (1001 0110 0011)BCD

结论

总之,代码转换是将二进制代码从一种格式转换为另一种格式的过程。例如,我们可以将 BCD 码转换为其等效的纯二进制码,或将 XS-3 码转换为其等效的 BCD 码等。在本章中,我们解释了不同类型的代码转换。