进制转换

进制转换

考虑一种较为特殊的数位拆解——进制转换。进制转换与数位拆解一样,最终目的是要求各个数位上的数字。不同的是,数位拆解要求的是十进制表示的数字各个数位上的数字,而进制转换求的则是以某种进制表示的数字用另一种进制来表示时各个数位上的数字。

把从m进制转换到n进制转化为两个进制转换问题:
1.从m进制转换到十进制
2.再从十进制转换到n进制
这样只需掌握十进制与其他进制的相互转换就可以完成任意进制间的转换。
以十进制转换为二进制为例,有十进制数x,完成转换其为二进制,即求b0,b1,b2…bn满足
在这里插入图片描述
依照数位拆解方法,首先对x模2,即:
在这里插入图片描述
这样就得到该数字由二进制表示时最低位的数字。接下来对x做整数除法,对其除2,即可同样将高位数字向低位移动,即:
在这里插入图片描述
再通过求模运算依次求得被移动到最低位的数字,直到得到所有数位上的数字。
反过来将二进制转换为十进制较容易,只需依次计算各个数位上的数字与该位权重的乘积再将它们求和,即可得到十进制数字。

总结,当要求十进制数x的k进制表示时,只需不断重复对x求余(模k),求商(除以k),即可由低到高依次得到各个数位上的数。反过来,要求得由k进制表示的数字的十进制值时,需要依次计算各个数位上的数字与该位权重的积,第n位则权重为k^(n-1),然后将它们依次累加即可得到该十进制值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值