十进制转二进制的笔算过程

好多年前学过十进制转二进制的笔算过程,不过一直都没机会用上,很快就忘记了,最近因工作原因有几次需要做进制转换的计算,懒得上网查就根据记忆中模糊的印象瞎推导,搞着搞着就搞出了这样的推导方式,如图:

最右边的是需要转换的十进制数123、8,每一个左边的数是右边数除以2后得到的正整数,每一个下边的数其实不用太关注,但是偏偏又不能轻易忽略(因为当横线上面的数除以2之后,除得尽的话就是0,除不尽的话就是1),直到左边为1.

所以这个计算过程就是

1、以最右边横线上方的十进制数值a1为起点;

2、若a1除以2能除尽的话,则a1下边的数值a2为0,否则a2为1;

3、a1左边a3等于(a1-a2)/2;

4、若此时a3小于1,则计算结束(结果为最左边的数和所有下边的数逐个拼起来),否则以此时的a3作为新的a1套入步骤1234中。

呵呵,刚写到这里就忽然发现假如将上面步骤1234中的2换成了其他 - _ - b......貌似也可以呵。呵呵!嗝!

过几天我发个进制转换代码出来。

对比之后发现,虽然跟学校老师教的差别不大,怎么说呢,起码不需要将结果反过来串起,好歹也算是自己的一份小成绩,发文记录一下。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值