Digital-electronics 简明教程
Digital Electronics - Hexadecimal Arithmetic
What is Hexadecimal Arithmetic?
在数字电子中,十六进制数用于以更紧凑形式表示二进制信息,因为一位十六进制数字可以表示一组 4 位二进制数字。因此,十六进制数和对它们执行的算术运算在数字电子领域中扮演着至关重要的角色。
十六进制算术是一种允许对十六进制或基数为 16 的数字进行加法、减法、乘法和除法等算术运算的数学系统。
在本章中,我们将涵盖以下四个基本的十六进制算术运算:
-
Hexadecimal Addition
-
Hexadecimal Subtraction
-
Hexadecimal Multiplication
-
Hexadecimal Division
让我们借助示例详细了解每个十六进制算术运算。
Hexadecimal Addition
十六进制加法是对十六进制数执行的基本算术运算之一,用于确定它们的和。基本上,十六进制加法类似于十进制加法。但在十六进制加法中,如果和大于或等于 16,则会产生向较高位进位的情况。
让我们看一些已解决的示例,以更好地理解十六进制加法。
Explanation
从最右列开始对十六进制数字求和:A + F = 10 + 15 = 25 = 16 + 9。此处,16 形成进位到下一列。因此,和为 9,并有 1 进位到下一列。
移到下一列,并对数字加上进位求和:5 + B + 1 = 5 + 11 + 1 = 17 = 16 + 1。此处,16 形成进位到下一列。因此,和为 1,并有进位 1。没有剩余的数字,因此进位也将写为和中最高位数字。
因此,5A 和 BF 的十六进制和为 119。
Explanation
从从最右列开始对数字求和:C + 9 = 12 + 9 = 21 = 16 + 1。此处,16 形成进位。因此,和为 1,并有进位 1。
移到下一列,并对数字加上上一步的进位求和:B + A + 1 = 11 + 10 + 1 = 22 = 16 + 6。因此,和为 6,并有进位 1 到下一列。
移到最高位列,并对数字加上上一步的进位求和:A + 2 + 1 = 10 + 2 + 1 = 13。由于和为 13,小于 16,因此不会产生进位。在十六进制数系统中,13 用字母 D 表示。
因此,ABC 和 2A9 的十六进制和 = D65。
以上内容关于十六进制加法,涉及按列相加给定十六进制数字的数字。在执行十六进制加法时需要记住的最重要一点是,当特定列中的和大于或等于 16(即十六进制数字系统的基数)时,会将进位生成到下一列。
Hexadecimal Subtraction
十六进制减法是对十六进制数字执行的一项基本算术运算,用于确定它们之间的差。
十六进制减法类似于十进制减法。唯一的区别在于十六进制减法中,当被减数数字小于减数数字时,将从较高的列数位中借用 1,相当于 16。
让我们借助已解决的示例来理解十六进制减法。
Explanation
从最右侧列开始减去十六进制数字:7 – 5 = 2。写下结果。
移至下一列并减去数字:5 – 2 = 3。将数字 3 写为差。
移至最左侧列并减去数字:A – 1 = 10 – 1 = 9。将结果写为差。
因此,A57 和 125 的十六进制差为 932。
Explanation
从最右侧列的数字开始减去:5 – A。由于 5 小于 A(10),因此我们必须从高一级数字中借用。从下一列 © 借用后,数字 5 将变为 5 + 16(因为 16 等于借用 1)= 21。因此,21 – A = 11 (B)。将 B 写为差。
移至下一列并减去数字:B – D。同样,B 小于 D,因此我们从高位数字 B 中借用。借用后,B 将变为 B + 16 = 27。因此,27 – D = 14 (E)。将数字 E 写为差。
移至最左侧列并减去数字:A – 1 = 9。写下结果。
因此,BC5 和 1DA 的十六进制差等于 9EB。
这些示例解释了减去两个十六进制数的过程。现在让我们讨论一下十六进制数的第三个基本算术运算,即十六进制乘法。
Hexadecimal Multiplication
十六进制乘法是一种用于确定两个十六进制数乘积的算术运算。
十六进制乘法类似于十进制乘法。但是,在十六进制乘法的例子中,当乘积大于或等于 16 时,将产生向下一位的进位。
以下示例说明了两个十六进制数相乘的过程。
Hexadecimal Division
十六进制除法是我们在基数为 16 的数上执行的第四个基本算术运算。在十六进制除法中,我们得到两个结果,即商和余数。
执行十六进制除法需遵循以下步骤−
-
Step 1 − 从被除数的最左边的数字开始除。
-
Step 2 − 将所得到的商乘以除数,并从被除数中减去。
-
Step 3 − 取被除数的下一个有效数字或一组数字。
-
Step 4 − 重复上述三步中所解释的过程,直至使用被除数中的所有数字。
以下示例演示执行十六进制除法的过程。
Solution
给定数字的十六进制除法如下所示 −
在此示例中,我们得到了商 (2A)16 和余数 (8)16。
我们解释了执行十六进制算术运算的直接方法。现在,让我们看看如何通过二进制算术执行所有这四个十六进制算术运算。
正如我们所知,每个十六进制数字可以表示为一组四位二进制数,如下表所示。
Hexadecimal |
Binary |
0 |
0000 |
1 |
0001 |
2 |
0010 |
3 |
0011 |
4 |
0100 |
5 |
0101 |
6 |
0110 |
7 |
0111 |
8 |
1000 |
9 |
1001 |
A |
1010 |
B |
1011 |
C |
1100 |
D |
1101 |
E |
1110 |
F |
1111 |
现在,让我们通过二进制转换讨论十六进制算术运算。
Hexadecimal Addition Through Binary Conversion
在此方法中,通过二进制转换添加两个十六进制数字时,我们首先将它们转换为相应的二进制格式,然后使用二进制算术规则添加二进制数字,最后将最终结果转换回十六进制格式。
以下示例演示通过二进制转换进行十六进制加法的过程。
Hexadecimal Subtraction Through Binary Conversion
要通过二进制转换来减去两个十六进制数,我们首先将给定的十六进制数转换成它们的二进制等效。然后,按照二进制算术规则减去它们。最后,将最终结果转换回十六进制格式。
以下是一个通过二进制转换展示十六进制减法过程的示例。
Hexadecimal Multiplication Through Binary Conversion
我们还可以通过将两个十六进制数转换为其二进制等价来相乘。为此,我们首先将给定的十六进制数转换为它们的二进制等价,然后按照二进制算术规则相乘二进制数,并将结果转换回十六进制以获得最终结果。
以下示例展示了通过二进制转换乘以十六进制数的过程。