📜  二进制到BCD代码的转换

📅  最后修改于: 2020-12-30 06:32:45             🧑  作者: Mango

二进制到BCD代码转换

BCD代码在数字电路中起着重要作用。 BCD代表二进制编码的十进制数。在BCD代码中,十进制数字的每个数字都表示为其等效的二进制数字。因此,十进制数字的LSB和MSB表示为其二进制数字。可以按照以下步骤将二进制数转换为BCD:

  • 首先,我们将二进制数转换为十进制数。
  • 我们将十进制数转换为BCD。

让我们以一个例子来了解将二进制数转换为BCD的过程

范例1:(11110)2

1.首先,将给定的二进制数转换为十进制数。

二进制数:(11110) 2

查找数字的十进制等效项:

Steps Binary Number Decimal Number
1) (11110)2 ((1 × 24) + (1 × 23) + (1 × 22) + (1 × 21) + (0 × 20))10
2) (11110)2 (16 + 8 + 4 + 2 + 0)10
3) (11110)2 (30)10

二进制数(11110) 2的十进制数是(30) 10

2.现在,我们将小数转换为BCD

我们将十进制数字的每个数字转换为四位二进制数字的组。

Steps Decimal Number Conversion
Step 1 3010 (0011)2 (0000)2
Step 2 3010 (00110000)BCD

结果:

(11110) 2 =(00110000) BCD

下表是包含十进制和二进制数字的BCD代码的表。

Binary Code Decimal Number BCD Code
A B C D B4 :B3B2B1B0
0 0 0 0 0 0 : 0 0 0 0
0 0 0 1 1 0 : 0 0 0 1
0 0 1 0 2 0 : 0 0 1 0
0 0 1 1 3 0 : 0 0 1 1
0 1 0 0 4 0 : 0 1 0 0
0 1 0 1 5 0 : 0 1 0 1
0 1 1 0 6 0 : 0 1 1 0
0 1 1 1 7 0 : 0 1 1 1
1 0 0 0 8 0 : 1 0 0 0
1 0 0 1 9 0 : 1 0 0 1
1 0 1 0 10 1 : 0 0 0 0
1 0 1 1 11 1 : 0 0 0 1
1 1 0 0 12 1 : 0 0 1 0
1 1 0 1 13 1 : 0 0 1 1
1 1 1 0 14 1 : 0 1 0 0
1 1 1 1 15 1 : 0 1 0 1

在上表中,十进制数的最高有效位由位B4表示,最低有效位由B3,B2,B1和B0表示。从上表中,我们可以表示出BOP码不同位的SOP函数如下:

上述SOP函数的K-map如下:





BCD到二进制转换

将BCD代码转换为二进制的过程与将二进制代码转换为BCD的过程相反。有以下步骤将BCD代码转换为Binary:

第一步,我们将BCD编号转换为十进制,方法是将四位分组,并为每个组找到等效的十进制数字。

在最后一步中,我们将使用将十进制转换为二进制数的过程将十进制数字转换为Binary。

范例1:(00101000) BCD

1)将BCD转换为十进制

组成4位数字的组,并找到等效的十进制数字,如下所示:

Steps BCD Number Conversion
Step 1 (00101000)BCD (0010)2 (1000)2
Step 2 (00101000)BCD (2)10 (8)10
Step 3 (00101000)BCD (28)10

给定的BCD代码的十进制数字为:(28) 10

2.将十进制转换为二进制

使用长除法将十进制数转换为二进制数,如下所示:

Steps Operation Result Remainder
1. 28 / 2 14 0
2. 14 / 2 7 0
3. 7 / 2 3 1
4. 3 / 2 1 1
5. 1 / 2 0 1

按照相反的顺序排列其余部分。因此,二进制数的LSB是头一个余数,而二进制数的MSB是最后一个余数。

十进制数(18) 10的二进制数是:(11100) 2

结果:

(00101000) BCD =(11100) 2