定点与浮点表示
日常生活中所使用的数有整数和实数之分,整数的小数点固定在数的最右边,可以省略不写,而实数的小数点则不固定。在计算机中只能识别和表示“0”和“1”",而无法识别小数点,因此,要使得计算机能够处理日常使用的数值数据,必须要解决小数点的表示问题。
通常计算机中通过约定小数点的位置来实现。
小数点位置约定在固定位置的数称为定点数,小数点位置约定为可浮动的数称为浮点数。
1.定点表示
2.浮点表示
定点数的编码表示
定/浮点表示解决了小数点的表示问题。但是,对于一个数值数据来说,还有一个正/负号的表示问题。
计算机中只能识别和表示0和1。因此,正/负号也要用0和1来表示。
这种将数的符号用0、1表示的处理方式称为符号数字化。一般规定0表示正号,1表示负号。
数字化了的符号能否和数值部分一起参加运算呢?
为了解决这个问题,就产生了把符号位和数值部分一起进行编码的各种方法。因为任意一个浮点数都可以用一个定点小数和一个定点整数来表示,所以,只需要考虑定点数的编码表示。
主要有4种定点数编码表示方法:原码、补码、反码和移码。
通常将数值数据在计算机,内部编码表示的数称为机器数,而机器数真正的值(即现实世界中带有正负号的数)称为机器数的真值。
1.源码的表示
原码表示的优点是与真值的对应关系直观、方便,因此与真值的转换简单,并且用原码
实现乘除运算比较简便。其缺点是0的表示不唯一,给使用带来不便。更重要的是,原码加
减运算规则复杂,在进行原码加减运算过程中,要判定是否是两个异号数相加或两个同号数
相减,若是,则必须判定两个数的绝对值大小,根据判断结果决定结果符号,并用绝对值大的
数减去绝对值小的数。现代计算机中不用原码来表示整数,只用定点原码小数来表示浮点
数的尾数部分。
2.补码表示法
1)模运算
2)补码的定义
3)特殊数据的补码表示
4)补码与真值之间的转换方法
5)变形补码
3.反码的表示
4.移码表示
You want something.Go get it!