计算机中的定点数与浮点数 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

  定点数与浮点数

  在计算机中必须有一定的方法来表示和处理小数点,

计算机中的定点数与浮点数

。计算机只能识别0和1两种信息,如果用0和1来表示小数点,则势必和数字位相混淆。事实上,对小数点来说,重要的不是小数点本身,而是它的位置。

  一个十进制数可写成一个纯小数乘上10的若干次方。相类似,一个二进制数可写成一个纯小数乘上2的若干次方,例如,11.01=22O.1101。一般地,任一二进制数N(2)可表示成N(2)=2Js,其中J为二进制整数,s为二进制纯小数。称J为数N的阶码,2为阶码的底,S为数N的尾数。

  当用这样的形式表示数时,尾数5表示数Ⅳ的有效数字,阶码J指明了小数点的位置。前者是显然的。后者通过例子来说明。有两个数:N1=2010.1011,N2=2100.1011,它们的尾数一样,但阶码不等(此例中阶码为二进制表示)。计算可得N1=1.011,N2=10.1l,可见小数点的位置不同。这说明,两个数尾数相同、阶码不同,则小数点的位置就不同。换言之,尾数不变,阶码发生变化时,小数点的位置就要改变,即阶码指明了小数点的位置,

电脑资料

计算机中的定点数与浮点数》(https://www.unjs.com)。

  计算机在具体实现时,有两种不同的做法:一种是J固定,称为定点表示;另一种是J可变,称为浮点表示。

  对于定点表示,常用两种方法。一是J取n(n为尾数的位数,即有效数字的位数),机器对写成2nS的数进行运算,即对纯整数进行运算,这时小数点固定在最低位数字后面。

  另一种是J取0,机器对写成20s的数进行运算,即对纯小数进行运算,这时小数点固定在最高位数字的前面。

  对于浮点表示,阶码、尾数都要表示出来,并且都要考虑符号。显然,尾数的符号就是整个浮点数的符号。尾数一般采用原码表示(也可以用补码表示)。为了方便阶码的比较和对阶(即让两个浮点数的阶码变成一致),阶码一般采用移码表示。对n位机器数,移码的定义为

  [X]移码=X+2n-1,一2n-1X<2n-1

  从这个定义可看到,移码实际是将数在数轴上平移了一段距离。

  浮点数在表示时一般采用下面的形式:

  阶码的底(2),因为对所有的浮点数都需要,所以不必表示出来。

  和机器数的概念一样,上述小数点的处理方法主要是用于汇编语言编程。限于篇幅,这里仅引入了概念。若要应用,尚须深入学习,浮点数运算有许多细节。

最新文章