十进制怎样转二进制?

十进制怎样转二进制?文章介绍了将十进制数转换为二进制的三种方法 整数部分的除 2 取余倒排法 利用 2 的幂次快速匹配法 以及差额法

目录

学习内容:

方法一:

方法二:

方法三:


学习内容:

十进制转二进制


方法一:

整数部分:除2取余倒排法

例如59:

1.59除以2,商29,余数1

2.29除以2,商14,余数1

3.14除以2,商7,余数0

4.7除以2,商3,余数1

5.3除以2,商1,余数1

6.1除以2,商0,余数1

7. 倒排上面六步的余数即 6->5->4->3->2->1, 即 0011 1011

方法二:

这个方法就是记住2的n次幂。

2的n次幂
128 64 32 16 8 4 2 1

例如:59

从上表中从左到右,找到比59小的第一个数32,然后从32->1开始算,将他们相加,超过59的不加。

可以找到32 16 8 2 1四个数,然后在我们有相加到的数上面写1,没有的0,如下图

这样就算出来了结果是:0011 1011

方法三:

差额法

比如2022,要除的话比较久,不妨看一下规律:

2^11=2048,超过2022,取前一个数也就是2^10=1024。

根据等比数列求和(高中知识不懂的可以复习下):2^10+2^9+2^8+......+2^1+2^0=2^11-1=2047。(一共11位)

看得出来2022比较接近2047,作差:

2047-2022=25=16(2^4)+8(2^3)+1(2^0)【用方法二】即  000 0001 1001。

也就是说只要这3项(1)变为0其余8项(均为1)加起来就会等于2022.

所以转换后就变为:111 1110 0110。注意看哦,即上面的16,8,1的位置为0,其余为1就行。

备注:25(也就是作差的数)可以用方法一来求。即11001(5位)。2022前面取1((11-5=6位)),后几位取反(即00110)就可以。

2022转化后就是:(6位)拼接00110(取反的5位)=.。

这个方法的目的就是把目标数(如2022)转化为值小的数(25),减小计算量,然后取反就行。

还可以这样理解:

方法三取自CSDN博主「恭德」原文链接:https://blog.csdn.net/luo_bin2010/article/details/

大家有好的方法也可以提出来,欢迎交流! 

今天的文章 十进制怎样转二进制?分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2025-01-06 16:51
下一篇 2025-01-06 16:46

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/103292.html