定点与浮点表示

日常生活中所使用的数有整数和实数之分,整数的小数点固定在数的最右边,可以省略不写,而实数的小数点则不固定。在计算机中只能识别和表示“0”和“1”",而无法识别小数点,因此,要使得计算机能够处理日常使用的数值数据,必须要解决小数点的表示问题。

通常计算机中通过约定小数点的位置来实现。

小数点位置约定在固定位置的数称为定点数,小数点位置约定为可浮动的数称为浮点数

1.定点表示

 

 2.浮点表示

 

 定点数的编码表示

定/浮点表示解决了小数点的表示问题。但是,对于一个数值数据来说,还有一个正/负号的表示问题。

计算机中只能识别和表示0和1。因此,正/负号也要用0和1来表示。

这种将数的符号用0、1表示的处理方式称为符号数字化。一般规定0表示正号,1表示负号。

数字化了的符号能否和数值部分一起参加运算呢?

为了解决这个问题,就产生了把符号位和数值部分一起进行编码的各种方法。因为任意一个浮点数都可以用一个定点小数和一个定点整数来表示,所以,只需要考虑定点数的编码表示。

主要有4种定点数编码表示方法:原码、补码、反码和移码。

通常将数值数据在计算机,内部编码表示的数称为机器数,而机器数真正的值(即现实世界中带有正负号的数)称为机器数的真值

 

 1.源码的表示

 

 

原码表示的优点是与真值的对应关系直观、方便,因此与真值的转换简单,并且用原码
实现乘除运算比较简便。其缺点是0的表示不唯一,给使用带来不便。更重要的是,原码加
减运算规则复杂,在进行原码加减运算过程中,要判定是否是两个异号数相加或两个同号数
相减,若是,则必须判定两个数的绝对值大小,根据判断结果决定结果符号,并用绝对值大的
数减去绝对值小的数。现代计算机中不用原码来表示整数,只用定点原码小数来表示浮点
数的尾数部分。

2.补码表示法

 

 1)模运算

 

 

 

 

 2)补码的定义

 

 3)特殊数据的补码表示

 

 

 

 

 4)补码与真值之间的转换方法

 

 

 

 

 

 5)变形补码

 

 

 

 

 

 3.反码的表示

 

 4.移码表示

 

 

posted @ 2020-03-19 18:12  树下一朵云  阅读(1665)  评论(0编辑  收藏  举报