数制间的转换

十进制转换为二进制,八进制和十六进制(因为是一个类型,所以就放在一起进行归纳,也可以方便大家记忆)

1.十进制转换为二进制

eg:十进制数35.6875转换为二进制

整数部分:
35/2=17余1
17/2=8余1
8/2=4余0
4/2=2余0
2/2=1余0
1/2=0余1
小数部分:0.6875*2=1.3750整数为1
1.3750*2=0.750整数为0
0.750*2=1.500整数为1
1.500*2=1.000整数为1

所以转换为对应的二进制数就是100011.1011

总结:整数部分采用“除二取余,直到商为0”根据先获得的余数为二进制的低位,后获得的为高位,小数部分采用“乘二取整法(直到小数位0,或精确到某个精度为止)”,第一个乘积的整数为结果的最高位,最后一个为最低位。

那对于十进制转换为八进制与十六进制则是除以或乘以相应的数。

二进制转换为十进制

eg:11.101转换为二进制数

11.101=1*2^1+1*2^0=1*2^-1+0*2^-2+1*2^-3=21.625

二进制转换为八进制

从小数点开始分别向左和向右把整数及小数部分按每三位分为一组,若整数最高组不足三位,在其左边加0补足三位,小数最低组不足三位,在其右边加0补足三位,然后用每组位二进制数对应的八进制数取代该组的三位二进制数,则可获得该二进制数对应的八进制数。

eg:11010.011转换为八进制

011——3  010——2  011——3

所以对应的八进制数是32.3。

八进制转换为二进制数

把八进制数的每一位均用对应的3位二进制数去取代,即可得到八进制数对应的二进制数。

二进制数转化为十六进制数

从小数点开始分别向左和向右把整数及小数部分按每四位分一组,若整数最高组不足四位则在其左边补0,小数最低组不足四位在其最右边补0,然后用与每组四位二进制数所对应的十六进制数去取代每组的四位数,即可得到该二进制数对应的十六进制数。

eg:11010.01转换为十六进制数

0100——4  1010——A  0010——1

11010.01所对应的十六进制数是1A.4

十六进制转换位二进制

把十六进制的每一位均用对应的4位二进制数取代,即可得到对应的二进制数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值