二进制计算

萌到你眼炸
569次浏览
2021年02月08日 10:02
最佳经验
本文由作者推荐

法制格言-

2021年2月8日发(作者:起诉书样本)


从二进制数的最右数起,最右方的第一个数乘以


2


的


0


次方,第二个数乘以


2


的


1


次方


……


依


次类推,把各结果累计相加就是转换后的十进制数。

< br>


例:



1010=0*2^0+1*2^1+0*2^2+1*2^3=0+2+0+8=10


二进制数转换为十进制数



二进制数第


0


位的权值是


2


的


0


次方,第


1

位的权值是


2


的


1


次方„„



所以,设有一个二进制数:


0110 0100


,转换为


10


进制为:



下面是竖式:





0110 0100


换算成



十进制





第


0


位


0 * 2


= 0


第


1


位


0 * 2


= 0


第


2


位


1 * 2


= 4


第


3


位


0 * 2


= 0


第


4


位


0 * 2


= 0


第


5


位


1 * 2


= 32


第


6


位


1 * 2


= 64


第


7


位


0 * 2


= 0


+



---------------------------


100




用横式计算为:



0 * 2


+ 0 * 2


+ 1 * 2


+ 1 * 2


+ 0 * 2


+ 1 * 2


+ 1 * 2


+ 0 * 2


= 100




0

< br>乘以多少都是


0


,所以我们也可以直接跳过值为


0


的位:



1 * 2


+ 1 * 2


+ 1 * 2


+ 1 * 2


= 100


2


3


5


6


0


1


2


3


4


5


6


7


7


6


5


4


3

< br>2


1


0



八进制数转换为十进制数



八进制就是 逢


8


进


1


。< /p>



八进制数采用


0

~


7


这八数来表达一个数。



八进制数第


0


位的权值为

< br>8


的


0


次方,第


1


位权值为


8


的


1


次方,第


2


位权值为


8


的


2


次方„„< /p>



所以,设有一个八进制数:


1507< /p>


,转换为十进制为:



用竖式表示:





1507


换算成十进制。





第


0


位


7 * 8


= 7


第


1


位


0 * 8


= 0


第


2


位


5 * 8


= 320


第


3


位


1 * 8


= 512


+



3


2


1


0

< p>
--------------------------


839


同样,我们也可以用横式直接计算:



7 * 8


+ 0 * 8


+ 5 * 8


+ 1 * 8


839




结果是,八进制数


1507


转换成十进制数为


839




第


3


位:


2 * 16


= 8192


+



-------------------------------------


10997


直接计算就是:



5 * 16


+ F * 16


+ A * 16


+ 2 * 16


= 10997

(


别忘了,在上面的计算中,


A


表 示


10


,而


F


表示


15)


现在可以看出,所有进制换算成

< br>10


进制,关键在于各自的权值不同。



假设有人问你,十进数


1234


为什么是



一千二百三十四?你尽可以给他这么一个算式:



1234 = 1 * 10


+ 2 * 10


+ 3 * 10


+ 4 * 10



给你一个十进制,比如:


6


,如果将它转换成二进制数呢?





10


进制数转换成二进制数,这是一 个连续除


2


的过程:



把要转换的数,除以


2


,得到商和余数,



将商继续除以


2


,直到商 为


0


。最后将所有余数倒序排列,得到数就是转换结果。





听起来有些糊 涂?我们结合例子来说明。比如要转换


6


为二进制数。





“把要转换的数 ,除以


2


,得到商和余数”。




那么:




要转换的数是


6


,


6 ÷ 2,得到商是


3


,余数 是


0


。



(不要告诉我你不会计算6÷3!


)




“将商继续除以


2,


直到商为0„„”



现在商是


3


,还不是


0


,所以继续除以


2


。



那就:



3 ÷ 2, 得到商是


1,


余数是


1


。< /p>





“将商继 续除以


2


,直到商为0„„”



现在商是


1


,还不是


0


,所以继续除以


2


。



那就:



1 ÷ 2, 得到商是


0


,余数是


1


(拿笔纸算一下,1÷2是不是商


0


余


1!


)





“将商继续除以


2

< br>,直到商为0„„最后将所有余数倒序排列”



好极!现 在商已经是


0


。


我们三次计算依次得到余数分别是:


0


、

< br>1


、


1


,将所有余数倒序排列, 那就是:


110


了!





6


转换成 二进制,结果是


110


。





把上面的一段改成用表格来表示,则为:



被


除


数



6


计


算


过程



6/2


商



3


余数



0


3


2


1


0


0


1


2


3


3


0


1


2


3 =

法制格言-


法制格言-


法制格言-


法制格言-


法制格言-


法制格言-


法制格言-


法制格言-