二进制和十六进制数字是我们在日常生活中使用的传统十进制数字的两种替代方法。计算机网络的关键元素,如地址,掩码和密钥都涉及二进制或十六进制数字。了解这种二进制和十六进制数字如何工作对于构建,故障排除和编程任何网络至关重要。
比特和字节
本系列文章假定您对计算机位和字节有基本的了解。二进制和十六进制数字是处理以位和字节存储的数据的自然数学方法。
二进制数和基数二
二进制数都包含两个数字'0'和'1'的组合。这些是二进制数的一些示例:11010101111101111000000 10101000 00001100 01011101
工程师和数学家称二进制编号系统为a 基二 系统因为二进制数只包含两个数字'0'和'1'。相比之下,我们的正常十进制数系统是a 基地十 使用十位“0”到“9”的系统。十六进制数字(稍后讨论)是一个 基地8-16 系统。
从二进制转换为十进制数
所有二进制数都具有等效的十进制表示,反之亦然。要手动转换二进制和十进制数,必须应用数学概念 位置值 .
位置值概念很简单:使用二进制和十进制数字,每个数字的实际值取决于数字内的位置(“向左多远”)。
例如,十进制数 124数字'4'代表值“4”,但数字'2'代表值“20”,而不是“2”。在这种情况下,'2'表示比'4'更大的值,因为它位于数字的左侧。
同样在二进制数中 1111011最右边的'1'代表值“one”,但最左边的'1'代表更高的值(在这种情况下为“64”)。
在数学中,编号系统的基础确定按位置对数字进行估值的程度。对于十进制十进制数,将左侧的每个数字乘以十进制因子10以计算其值。对于基数为二进制的数字,将左侧的每个数字乘以递增因子2.计算总是从右到左。
在上面的例子中,十进制数 123 努力:
3 + (10 * 2) + (10*10 * 1) = 123
二进制数1111011转换为十进制为:
1 + (2 * 1) + (2*2 * 0) + (4*2 * 1) + (8*2 * 1)+ (16*2 * 1) + (32*2 * 1) = 123
因此,二进制数1111011等于十进制数123。
从十进制数转换为二进制数
要在相反方向上转换数字,从十进制到二进制,需要连续除法而不是逐行乘法。
要手动将小数转换为二进制数,请从十进制数开始,然后除以二进制数基数(基数“2”)。对于每个步骤,除法产生余数1,在二进制数的该位置使用“1”。当除法导致余数为0时,在该位置使用“0”。当除法结果为0时停止。生成的二进制数从右到左排序。
例如,十进制数 109 转换为二进制如下:
- 109/2 = 54余数 1
- 54/2 = 27余数 0
- 27/2 = 13余数 1
- 13/2 = 6余数 1
- 6/2 = 3余数 0
- 3/2 = 1余数 1
- 1/2 = 0余数 1
十进制数109等于二进制数 1101101.




