用二进制数表示小数,由于计算机内部所有的信息都是以二进制数的形式来处理的,因此在这一点上,整数和小数并无差别。不过,使用二进制数来表示整数和小数的方法却有很大的不同。
在说明计算机如何用二进制数表示小数的具体方法前,我们先做个热身,把1011.0011这个有小数点的二进制数转换成十进制数。小数点前面部分的转换方法在第2章中已经介绍过了。只需将各数位数值和位权相乘,然后再将相乘的结果相加即可实现。那么,小数点后面的部分要如何进行转换呢?其实,它的处理和整数是一样的,将各数位的数值和位权相乘的结果相加即可(图3-2)。
图3-2 二进制数小数转换成十进制数的方法
二进制数小数点前面部分的位权,第1位是2的0次幂、第2位是2的1次幂……以此类推。小数点后面部分的位权,第1位是2的-1次幂、第2位是2的-2次幂,以此类推。0次幂前面的位的位权按照1次幂、2次幂……的方式递增,0次幂以后的位的位权按照-1次幂、-2次幂……的方式递减。这一规律并不仅限于二进制数,在十进制数和十六进制数中也同样适用。既然二进制数的小数点后第3位是2的-3次幂(0.125),第4位是2的-4次幂(0.0625),那么小数点以后的.0011转换成十进制数就应该是0.125+0.0625=0.1875。此外,由于整数部分的1011转换成十进制数是11。因此,二进制数1011.0011转换成十进制数就是11 + 0.1875=11.1875
。
酷客网相关文章:
评论前必须登录!
注册