浮点数的二进制的阶码

作者:ME

时间:2010-01-17 23:26:09

内容:如下

要想了解 浮点数的二进制的阶码  的表现形式 首先要补一补一下知识

 


1:浮点数的十进制表现形式

 

        十进制中通常一个浮点数可以用科学技术法来表示

        举例:-306.5可以表示为-0.3065*103

                其中 -是符号   指数3是阶或称阶码   0.3065是小数部分   左右段非0包起来的部分是有效值  这里的有效值是3065    小数部分也称为尾数,显然3065也是尾数(-3.87的话 387是有效值  87是尾数)

               为什么称为 浮点数

               因为他可以表示为-3.065*10 也可以表示为-0.03065*104   等,小数部分可以左右“浮动”  但不管小数部分怎么移动,他的有效值是不变的  都是3065 (不过尾数是变化的)

                于是 两个浮点数相加就先要通过小数点的左右浮动,将阶码对齐   然后进行尾数相加

 

 

为了使有效值和尾数能够统一,在空间上表达更有效率 有必要将所有浮点数规格化

 重要 :【即浮点数通过调整阶码,写成小数点前不含有有效数字,小数点后第一位由非0数字表示,举例-306.5规格化为-0.3065*103


2:十进制浮点数转换为二进制浮点数

       在计算机内部,浮点数都是以二进制表示的,所以 对于十进制浮点数,要先转换为二进制浮点数,然后分两步,整数部分的转换,采用(“除2取余法” )      小数部分采用 (“乘2取整法”)即把小数部分乘2取整,在把取完整数好留下的小数部分在乘2取整,以此类推


3:二进制浮点数的尾数及规格化

一旦十进制浮点数转换完成二进制浮点数后,就要像十进制数那样,对二进制数规格化,以便于计算机表示。

          二进制浮点数的规格化方法:

         重【通过调整小数点的阶码使得该数的有效值在1和2之间,既二进制浮点数的整数部分为1】

例如:0.8125 = 0.1101(2) = 1.101*2(-1)

 

 

你可能感兴趣的:(浮点数的二进制的阶码)