赞
踩
十进制的基数为10,数码由0-9组成,计数规律逢十进一。
二进制:它由两个数码0,1组成,二进制数运算规律是逢二进一。
理解了二进制,在理解八进制就很容易了,八进制是逢八进一,范围是 0~7。
十六进制数:它由十六个数码:数字0~9加上字母A-F组成(它们分别表示十进制数10~15),十六进制数运算规律是逢十六进一
首先我们看看怎么把一个十进制转化成二进制,我们可以使用python的内置方法 bin
- num=10
- print(bin(num))
输出二进制(python 中二进制以ob开头)
0b10100
继续看十进制转化为八进制,使用方法oct(num)
- num=20
- print(oct(num))
输出八进制(python 中八进制以0o开头)
0o24
再看十进制转化16进制,同样使用python的内置方法进行hex(num)
- num=20
- print(hex(num))
输出十六进制(python 中十六进制以0x开头)
0x14
- num1=0b10100
- num2=0o24
- num3=0x14
- print(int(num1),int(num2),int(num3))
输出十进制
20 20 20
- num1=0b10100
- print(oct(num1))
输出八进制
0o24
- num1=0b10100
- print(hex(num1))
输出十六进制
0x14
方法:二进制数从低位到高位(即从右往左)计算,第0位的权值是2的0次方,第1位的权值是2的1次方,第2位的权值是2的2次方,依次递增下去,把最后的结果相加的值就是十进制的值了。
- 例如将二进制的0b101011转换为十进制的步骤如下:
- 第0位 1 x 2^0 = 1;
- 第1位 1 x 2^1 = 2;
- 第2位 0 x 2^2 = 0;
- 第3位 1 x 2^3 = 8;
- 第4位 0 x 2^4 = 0;
- 第5位 1 x 2^5 = 32;
- 把结果值相加1+2+0+8+0+32=43,即0b101011=43
方法:八进制数从低位到高位(即从右往左)计算,第0位的权值是8的0次方,第1位的权值是8的1次方,第2位的权值是8的2次方,依次递增下去,把最后的结果相加的值就是十进制的值了。
八进制就是逢8进1,八进制数采用 0~7这八数来表达一个数。
- 例如将八进制的0o34转换为十进制的步骤如下:
- 第0位 4 x 8^0 = 4;
- 第1位 3 x 8^1 = 24;
- 把结果值相加,4+24=28,即0o34=28
方法:十六进制数从低位到高位(即从右往左)计算,第0位的权值是16的0次方,第1位的权值是16的1次方,第2位的权值是16的2次方,依次递增下去,把最后的结果相加的值就是十进制的值了。
十六进制就是逢16进1,十六进制的16个数为0123456789ABCDEF。
- 例如将十六进制的0x3c转换为十进制的步骤如下:
- 第0位 c x 16^0 = 12;
- 第1位 3 x 16^1 = 48;
- 把结果值相加,12+48=60,即0x3c=60
方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。
- 例如将十进制的56转换为二制的步骤如下:
- 将商56除以2,商28余数为0;
- 将商28除以2,商14余数为0;
- 将商14除以2,商7余数为0;
- 将商7除以2,商3余数为1;
- 将商3除以2,商1余数为1;
- 将商1除以2,商0余数为1;
- 因为最后一位是经过多次除以2才得到的,因此它是最高位,读数字从最后的余数向前读,111000,所以56=ob111000。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。