一.进制类型:二进制(B):只有0和1,八进制(D):数字在0~7之间,十进制(O):在0~9,十六进制(H):数字在0~9,其中10~15用a~f表示,字母可以用大写也可以用小写。
整数转换:
二.各进制转化为十进制:
1.二进制转化为十进制:
如:11011(B)
转化:1*2^0+1*2^1+0*2^2+1*2^3+1*2^4
即 11011(B)=27(D)
八进制转化为十进制:
如:076(O)
转化:6*8^0+7*8^1+0*8^2
即 076(O)= 62(D)
2.十六进制转化为十进制:
如: 0x12(H)
转化:2*16^0+1*16^1
即 0x12(H)=18(D)
三 ,十进制转化为各进制:
1.十进制转化为二进制:
如:12(D)
转化:12/2=6……0
6/2=3……0
3/2=1……1
1/2=0……1
倒取余数得1100
即 12(D)=1100(B)
2.十进制转化为八进制:
如:20(D)
转化:20/8=2……4
2/8=0……2
倒取余数得24
即 20(D)=24(O)
3.十进制转化为16进制:
如:25(D)
转化:25/16=1……9
1/16=0……1
倒取余数得19
即 25(D) =19(H)
四,二进制转化为各进制:
小数与整数一样
注意各组数字相互对应。
1.二进制转化为八进制:
如:10011(B)
分析:从右往左分三个为一组,若左边数不够则在前面加0,即011为一组010为一组。011为1*2^0+1*2^1+0*2^3=3
010为0*2^0+1*2^1+0*2^2=2
即 10011(B)=23(O)
2.二进制转化为十六进制:
如:1010111(B)
分析:从右往左分四个为一组,即0111为一组0101为一组,0111为1*2^0+1*2^1+1*2^2+0*2^3=7
0101为1*2^0+0*2^1+1*2^2+0*2^3=5
即 1010111(B)=57(H)
3.八进制转化为16进制
如:075(O)
分析:先将八进制转化为二进制即7=1*2^0+1*2^1+1*2^2
5=1*2^0+0*2^1+1*2^2
0*0=0
075(O)=111101(B)
再将二进制转化为十六进制,将1101和0011分为一组。则0011转化为十六进制为1*2^0+2*2^1+0*2^2+0*2^3=3,1101转化为十六进制为1*2^0+0*2^1+1*2^2+1*2^3=D
即075(O)=0x3D(H)
十六进制转化为八进制也是如此。小数也是如此。
五,各进制转化为二进制
小数与整数一样
1.十六进制转化为二进制:
如:0x36(H)
分析:将3和6用2的次方表示,且一个数字用一组4个0或者1代替。即:3=1*2^0+1*2^1+0*2^2+0*2^3,6=0*2^0+1*2^1+1*2^2+0*2^3.
即 0x36(H)=00110110(B)
2.八进制转化为二进制:
如:025(O)
分析:将2和5用2的次方表示,且一个数字用一组3个0或者1来代替。即:2=0*2^0+1*2^1+0*2^2
5=1*2^0+0*2^1+1*2^2
即 025(O)=010101(B)
小数转换
1.各进制转化为十进制
二进制转化为十进制:
如:0.1011(B)
转化:从左往右开始乘
1*2^-1+0*2^-2+1*2^-3+1*2^-4
即 0.1011(B)=0.6875 (D)
八进制转化为十进制:
如:0.237(O)
转化:从左往右开始乘
2*8^-1+3*8^-2+7*8^-3
即0.237(O)=0.310546875(D)
十六进制转化为十进制:
如:0.2E(H)
转化:2*16^-1+14*16^-2
即0.2E(H)=0.1796875(D)
2.十进制转化为各进制
十进制转化为二进制
如:0.625(D)
转化:0.625*2=1.25......1
0.25*2=0.5......0
0.5*2=1.0......1
取到小数点为0时就转换成功,再正取整数
即 0.625(D)=101(B)
十进制转化为八进制
如:0.25(D)
转换:0.25*8=2.0......2
取到小数点后为0,就结束。
再正取整数
十进制转化为十六进制:
如:0.25(D)
转换:0.25*16=4.0......4
0.0*16=0
再正取整数
即 0.25(D)=0.4(H)