进制进制转换----完整版

本文详细介绍了二进制、八进制、十进制和十六进制之间的转换规则,包括整数和小数的转换示例,帮助读者理解和掌握不同进制间的转换技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.进制类型:二进制(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)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值