二进制计算

玛丽莲梦兔
660次浏览
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 =

法制格言-


法制格言-


法制格言-


法制格言-


法制格言-


法制格言-


法制格言-


法制格言-