标题: 二进制 十进制 相互转换的方法 [打印本页]

作者: 51黑bing    时间: 2016-3-20 23:01
标题: 二进制 十进制 相互转换的方法
先说二进制转十进制 例如:1010,这个数字一共四位那么转换成十进制就是 (第一个数字)*2^(位数-1次方)+(第二个数字)*2^(位数-1次方)+(第三个数字)*2^(位数-1次方)+(第四个数字)*2^(位数-1次方) 也就是1*2^3+0*2^2+1*2^1+0*2^0=8+0+2+0=10 十进制转二进制 把数字10转二进制 10/2     商5余0  二进制的最后一位就是0    xxx0 5(上面的商)/2    商2余1  二进制的倒数第二位1    xx10 2(上面的商)/2    商1余0  二进制的倒数第三位0    x010 当最后的商位1的时候就不再除了,1就是二进制的第一位  1010
 例题
 
1转二进制: 
用2辗转相除至结果为1 
将余数和最后的1从下向上倒序写 就是结果 
例如256 
256/2 = 128 余0 
128/2 = 64 余0 
64/2 = 32 余0 
32/2 = 16 余0 
16/2 = 8 余0 
8/2 = 4 余0
4/2 = 2 余0 
2/2 = 1 余0 
故二进制为100000000 

2例如302 
302/2 = 151 余0 
151/2 = 75 余1 
75/2 = 37 余1 
37/2 = 18 余1 
18/2 = 9 余0 
9/2 = 4 余1 
4/2 = 2 余0 
2/2 = 1 余0 
故二进制为100101110  

二进制转十进制 
从最后一位开始算,依次列为第0、1、2...位 
第n位的数(0或1)乘以2的n次方 
得到的结果相加就是答案 
例如:01101011.转十进制: 
第0位:1乘2的0次方=1 这是数学上的规定,
即任何数的零次方都等于一,
另外有一种计算方法帮助理解:两个底数相同,
指数不同的幂相除,所得结果底数不变,指数相减,
例如,二的六次方除以二的二次方等于二的四次方,
根据这个计算法则,二的三次方除以二的三次方
等于二的零次方,而二的三次方都等于八,
八除八等于一。所以二的零次方就会等于一
。 1乘2的1次方=2 0乘2的2次方=0 1乘2的3次方=8 0乘2的4次方=0 1乘2的5次方=32 1乘2的6次方=64 0乘2的7次方=0 然后:1+2+0 +8+0+32+64+0=107. 二进制01101011=十进制107.
 
 · 十进制小数转二进制数:“乘以2取整,顺序排列”
(乘2取整法)
  例: (0.625)10= (0.101)2   0.625X2=1.25 ……1   0.25 X2=0.50 ……0   0.50 X2=1.00 ……1
 二进制数(含小数)转十进制数
 
采用权相加法:每一位数乘以相应位的权制然后相加就ok。
比如1101.101这个数,
以小数点为中心,向左每位权值分别为1、2、4、8,向右每位为0.5、0.25、0.125(也就是二分之一、四分之一、八分之一)。正数1101.101B=1*1+0*2+1*4+1*8(整数部分)+1*0.5+0*0.25+1*0.125(小数部分)=13.625D


作者: aifengdian    时间: 2018-3-15 16:02
谢谢!收藏了,学校的回忆。
作者: ccyycc    时间: 2018-9-26 10:45
谢谢,很详
作者: wds123456    时间: 2019-1-24 22:32
谢谢,很清楚
作者: 圆滚滚的发烧友    时间: 2019-12-13 14:48
很强 很有用
作者: cjyyy    时间: 2022-4-13 16:51
很强 很有用
作者: haili888    时间: 2022-5-6 11:50
来来来51HEI,好网




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1