【技术分享】2进制数&10进制数&16进制数-Part 1
★在计算机中使用的二进制数
人们日常使用的数字是十进制数,但计算机在内部表示数字时使用的是二进制。
但是,只有“0”和“1”的二进制数对人来说不太容易理解,所以在人能看到的地方,计算机会把二进制数转换成十进制数或十六进制数来表示。
这里我们来学习这些转换方法。
★二进制数
二进制数是使用“0”和“1”这两种数字来表示所有的数的。
在十进制中,数到“9”之后就会进位,但在二进制中,“1”之后就会进位。
进位之后,新的那一位会变成“1”,它以下的所有位都会变成“0”。让我们来看看二进制数的值是如何增加的。
2进制数 0→1→10→11→100→101→110→111→1000
顺便说一下,表示二进制数时,通常是每8位作为一个单位,所以如果不足8位就在前面加0。
也就是说,上面的二进制数值应该表示成:00000000 → 00000001 → 00000010 → 00000011 → 00000100 → 00000101 → 00000110 → 00000111 → 00001000。
下面是二进制数和十进制数的对应表。
★从二进制转换成十进制的方法
十进制数和二进制数的对应关系如下。
当二进制数的位数增加时,十进制值按照以下规律变化:
是的,通过把二进制数中“1”所在位数对应的上述十进制基准值相加,就可以得到二进制数对应的十进制值。
例如,要把二进制数 “00101010” 转换成十进制,注意它在从右向左数的第6位、第4位和第2位上为“1”,对应的十进制基准值分别是32、8和2。
如下图所示,二进制数“00101010”对应的十进制数就是32 + 8 + 2 = 42。
所以“00101010”的十进制数是42。
★ 从十进制转换成二进制的方法
可以通过反复对十进制数字进行“2”的除法,直到商为0,然后把每一步的余数倒过来连接起来,就可以得到该十进制数的二进制表示。
让我们来具体看些转换的例子。
举了十进制160除2转换成二进制的详细例子。
将十进制160反复除以2,得到的余数从下往上排列就是二进制的10100000。
在网络中,通常会将二进制数用8位数表示,所以需要在高位补0,把10110转换成八位的00010110。当然,00010110和原来的10110的值是相同的。
通过这种除法计算余数再倒排的方法,可以方便地实现十进制到二进制的转换。练习多做几个例子就可以很熟练了。