『计算机组成原理』二进制转化十进制的简便方法(小节)
2012-10-31 10:16
507 查看
我们要实现二进制转化十进制的通常方法是:
从最后一位开始算,依次列为第0、1、2...位,第n位的数(0或1)乘以2的n次方,得到的结果相加就是答案。
例如: 1101转十进制
从右向左 1*2º+0*2¹+1*2²+1*2³ = 13
简便解法:
数学中的进制即十进制数中,在一个数的整数部分的最右侧加0,每加一个0,这个数是前一个数的10倍,如25、250、2500...等等;在小数部分的最左侧每加一个0,这个数是前一个数的十分之一,如0.25、0.025、0.0025...等等
设想:二进制数中,在1的右侧(整数部分)或左侧(小数部分)每增加一个0,会是前一个 数的2倍或二分之一吗?
想想看:为什么只针对数码1来进行?
推理过程:分别把整数部分和小数部分转换成十进制来进行比较,按“乘权求和”的规则进行转换
整数部分:(1)2=(1)10;(10)2=(2)10;(100)2=(4)10;(1000)2=(8)10;(10000)2=(16)10..
小数部分:(0.1)2=(0.5)10;(0.01)2=(0.25)10;(0.001)2=(0.125)10;(0.0001)2=(0.0625)10;0.00001)2=(0.03125)...
这些转换过程,令你忆起了数制概念中关于位和值的定义吗?同样的数在不同的位置所代表的值是不同的,称为位值(或权值)。现在明白它的含义了吗?这条,是下面转换的最直接的依据。
排列:1、2、4、8、16...... 0.5、0.25、0.125、0.0625、0.03125......
结论:整数部分2倍;小数部分:二分之一即0.5倍
以上就是这种“另类”解法的理论依据,它另类吗?好,我们现在就来看看这种另类的方法到底是怎样实现数制之间转换的。同样以二进制数转换为十进制数中的例子来看
(1101.011)2=( )10
第一步:画出一串表示位的标记,如“×”,标记的多少根据题目中出现数字数目的多少而定,比方这个例子,整数部分有4位,小数部分三位,共7位.千万记得给小数点留个位置哦!
第二步:在相应的位上写上它所对应的值,值的大小整数部分从右到左依次为1、2、4、8、16...即后一个数是前一个数的2倍;小数部分从左到右依次为0.5、0.25、0.125、0.625...即后一个数是前一个数的0.5倍。
第三步:将二进制数按位写在标记的下文
第四步:将位值为“1”的标记上方的数字相加,即为二进制数所对应的十进制数
8 + 4 + 1 + 0.25 + 0.125 =13.375
即:(1101.011)2 = (13.375)10
在实际的换算过程中,同学们只要直接写出第三步,然后用第四步来得出相应结果就可以了。
原文地址:http://blog.chinaunix.net/uid-25067956-id-3001089.html
从最后一位开始算,依次列为第0、1、2...位,第n位的数(0或1)乘以2的n次方,得到的结果相加就是答案。
例如: 1101转十进制
从右向左 1*2º+0*2¹+1*2²+1*2³ = 13
简便解法:
数学中的进制即十进制数中,在一个数的整数部分的最右侧加0,每加一个0,这个数是前一个数的10倍,如25、250、2500...等等;在小数部分的最左侧每加一个0,这个数是前一个数的十分之一,如0.25、0.025、0.0025...等等
设想:二进制数中,在1的右侧(整数部分)或左侧(小数部分)每增加一个0,会是前一个 数的2倍或二分之一吗?
想想看:为什么只针对数码1来进行?
推理过程:分别把整数部分和小数部分转换成十进制来进行比较,按“乘权求和”的规则进行转换
整数部分:(1)2=(1)10;(10)2=(2)10;(100)2=(4)10;(1000)2=(8)10;(10000)2=(16)10..
小数部分:(0.1)2=(0.5)10;(0.01)2=(0.25)10;(0.001)2=(0.125)10;(0.0001)2=(0.0625)10;0.00001)2=(0.03125)...
这些转换过程,令你忆起了数制概念中关于位和值的定义吗?同样的数在不同的位置所代表的值是不同的,称为位值(或权值)。现在明白它的含义了吗?这条,是下面转换的最直接的依据。
排列:1、2、4、8、16...... 0.5、0.25、0.125、0.0625、0.03125......
结论:整数部分2倍;小数部分:二分之一即0.5倍
以上就是这种“另类”解法的理论依据,它另类吗?好,我们现在就来看看这种另类的方法到底是怎样实现数制之间转换的。同样以二进制数转换为十进制数中的例子来看
(1101.011)2=( )10
第一步:画出一串表示位的标记,如“×”,标记的多少根据题目中出现数字数目的多少而定,比方这个例子,整数部分有4位,小数部分三位,共7位.千万记得给小数点留个位置哦!
× | × | × | × | . | × | × | × |
8 | 4 | 2 | 1 | . | 0.5 | 0.25 | 0.125 |
× | × | × | × | . | × | × | × |
8 | 4 | 2 | 1 | . | 0.5 | 0.25 | 0.125 |
× | × | × | × | . | × | × | × |
1 | 1 | 0 | 1 | . | 0 | 1 | 1 |
8 + 4 + 1 + 0.25 + 0.125 =13.375
即:(1101.011)2 = (13.375)10
在实际的换算过程中,同学们只要直接写出第三步,然后用第四步来得出相应结果就可以了。
原文地址:http://blog.chinaunix.net/uid-25067956-id-3001089.html
相关文章推荐
- 把十进制转化为二进制的一种方法
- 计算机组成原理(第六章:计算机的运算方法)
- 计算机中十进制转换为二进制的另一方法
- 将十进制小数转化为二进制小数的方法
- 把十进制转化为二进制的一种方法 2013-02-05 12:50 373人阅读 评论(0) 收藏
- 把十进制转化为二进制的一种方法
- 计算机组成原理 运算方法:定点数加减
- 把十进制转化为二进制的一种方法
- 【计算机组成原理】第2章 运算方法和运算器
- 计算机组成原理与系统结构---内存编址方法
- 十进制转化为二进制的方法的理论证明
- 计算机组成原理:十进制、原码、反码、补码的转换关系
- 把十进制转化为二进制的一种方法
- 计算机组成原理:数据与文字的表示方法
- 把十进制转化为二进制的一种方法
- 小数点二进制转化成十进制方法?
- 二进制转换为十进制的简便方法
- 计算机组成原理第一章 研究内容 层次结构 应对系统复杂的重要方法--抽象
- Java十进制转化成二进制方法
- 计算机组成原理:运算方法和运算器