bcd碼二進制轉十進制
Prerequisite: Number systems
先決條件: 數字系統
BCD Code (8421 Code): In BCD 8421 code, each decimal digit is represented using a 4-bit binary number. The 4-bit binary numbers have their weights attached as 8, 4, 2, 1 from MSB to LSB side. Since the weights are attached to it comes in the category of weighted codes and is also sequential.
BCD代碼(8421代碼) :在BCD 8421代碼中 ,每個十進制數字均使用4位二進制數表示。 從MSB到LSB,4位二進制數的權重分別為8、4、2、1。 由于權重是附加的,因此它屬于加權代碼類別,并且是順序的 。
In a digital system that accepts only binary numbers in form of 0 and 1, the only way to interpret decimal numbers is its conversion from decimal to binary and vice-versa which is a slow process and it also requires a huge electronic circuitry. So, we use BCD numbers. Also, the sequential nature of BCD numbers makes it advantageous for performing arithmetic operations.
在僅接受0和1形式的二進制數字的數字系統中,解釋十進制數字的唯一方法是將其從十進制轉換為二進制,反之亦然,這是一個緩慢的過程,并且還需要龐大的電子電路。 因此,我們使用BCD號碼。 而且,BCD編號的順序性質使其在執行算術運算時具有優勢。
Although, there are many advantages there are some disadvantages too such as:
盡管有很多優點,但也有一些缺點,例如:
BCD codes are more inefficient than usual binary codes. Usually, in binary numbers, we represent (13)10 = (1101)2 i.e., we require 4-bits but in BCD notation (13)10 is represented as (0001 0011). Here, we require 8-bits to represent the same 13.
BCD代碼比普通的二進制代碼效率低。 通常,在二進制數中,我們表示(13) 10 =(1101) 2,即,我們需要4位,但在BCD表示法中, (13) 10表示為(0001 0011) 。 在這里,我們需要8位來表示相同的13 。
Another disadvantage is that arithmetic operations become more complex as compared to the usual binary numbers because, in BCD numbers, we have 6 illegal states as 1010, 1011, 1100, 1101, 1110 and 1111 which are not part of 8421 BCD system.
另一個缺點是,與通常的二進制數相比,算術運算變得更加復雜,因為在BCD數中,我們有6個非法狀態,例如1010、1011、1100、1101、1110和1111 ,它們不是8421 BCD系統的一部分。
The following table describes the relation between Decimal, Binary and 8421 BCD numbers.
下表描述了十進制,二進制和8421 BCD編號之間的關系。
Decimal Numbers | Binary Numbers | 8421 BCD Numbers |
---|---|---|
0 | 0000 | 0000 |
1 | 0001 | 0001 |
2 | 0010 | 0010 |
3 | 0011 | 0011 |
4 | 0100 | 0100 |
5 | 0101 | 0101 |
6 | 0110 | 0110 |
7 | 0111 | 0111 |
8 | 1000 | 1000 |
9 | 1001 | 1001 |
10 | 1010 | 0001 0000 |
11 | 1011 | 0001 0001 |
12 | 1100 | 0001 0010 |
13 | 1101 | 0001 0011 |
14 | 1110 | 0001 0100 |
15 | 1111 | 0001 0101 |
... | ... | ... |
... | ... | ... |
... | ... | ... |
小數 | 二進制數 | 8421 BCD編號 |
---|---|---|
0 | 0000 | 0000 |
1個 | 0001 | 0001 |
2 | 0010 | 0010 |
3 | 0011 | 0011 |
4 | 0100 | 0100 |
5 | 0101 | 0101 |
6 | 0110 | 0110 |
7 | 0111 | 0111 |
8 | 1000 | 1000 |
9 | 1001 | 1001 |
10 | 1010 | 0001 0000 |
11 | 1011 | 0001 0001 |
12 | 1100 | 0001 0010 |
13 | 1101 | 0001 0011 |
14 | 1110 | 0001 0100 |
15 | 1111 | 0001 0101 |
... | ... | ... |
... | ... | ... |
... | ... | ... |
Example 1: Represent (28)10 and (53)10 in 8421 BCD notation
示例1:以8421 BCD表示法表示(28) 10和(53) 10
Solution:
解:
(28)10 in BCD notation can be represented as (0010 1000).
(28) BCD表示法中的10可以表示為(0010 1000) 。
Similarly, (53)10 in BCD notation can be represented as (0101 0011).
類似地,BCD表示法中的(53) 10可以表示為(0101 0011) 。
BCD加法 (BCD Addition)
The addition of BCD numbers is slightly different from binary addition. Here, the rules of binary addition are partially applicable only to the individual 4-bit groups. The BCD addition, is thus carried out by individually adding the corresponding 4-bit groups starting from the LSB side and if there is a carry to the next group, or if the result belongs to any of the 6 illegal states than we add 610(0110) to the sum term of that group and resulting carry is added in the next group.
BCD編號的加法與二進制加法略有不同。 在此,二進制加法規則僅部分適用于各個4位組。 因此, BCD加法是通過從LSB端開始逐個添加對應的4位組來進行的,如果下一個組有進位,或者結果屬于6個非法狀態中的任何一個,則我們加6 10 (0110)至該組的總和,并在下一組中添加產生的進位。
Example: Perform BCD Addition of 6 and 7.
示例:執行6和7的BCD加法。
Solution: BCD representation of 6 is given as 0110 and for 7 it is 0111.
溶液:6 BCD表示被給定為0110和7是0111。
When we add 6 and 7 in BCD, we get 1101 which is an invalid state therefore, we add 0110 (6) to the sum to get correct result which is 0001 0011 (13).
當在BCD中將6和7相加時,我們得到1101 ,這是一個無效狀態,因此,我們將0110(6)添加到總和中以獲得正確的結果0001 0011(13) 。
Example 2: Perform BCD Addition of 8765 and 3943.
示例2:執行8765和3943的BCD加法。
Solution:
解:
BCD representation of 8765 is given as 1000 0111 0110 0011 and for 3943 it is 0011 1001 0100 0011.
BCD表示的8765為1000 0111 0110 0011,3943為0011 1001 0100 0011 。
Firstly, we will perform a normal binary addition of two numbers now we see 1100 and 1010 which are illegal states also the third group of 4-bits from LSB side i.e., 0000 has a carry 1 to the next group. So, for correction, we have to add 0110 to all three groups. Thus, we get the correct result as 0001 0010 0111 0000 1000 which is equivalent to (12708)10 in decimal number system and this is what we get on adding (8765)10 + (3943)10 = (12708)10. Hence, our result is also verified.
首先,我們將對兩個數字進行正常的二進制加法運算,現在我們看到1100和1010是非法狀態,也是從LSB側開始的第三組4位,即0000的進位為1 。 因此,為了更正,我們必須在所有三個組中添加0110 。 因此,我們得到正確的結果為0001 0010 0111 0000 1000 ,它等于十進制數系統中的(12708) 10 ,這就是我們加上(8765) 10 +(3943) 10 =(12708) 10的結果 。 因此,我們的結果也得到了驗證。
翻譯自: https://www.includehelp.com/basics/binary-coded-decimal-bcd-code-and-its-addition.aspx
bcd碼二進制轉十進制