定点数如果要表示整数或小数,分为以下三种情况:
纯整数:例如整数100,小数点其实在最后一位,所以忽略不写。
纯小数:例如:0.123,小数点固定在最高位。
整数+小数:例如1.24、10.34,小数点在指定某个位置。
对于前两种情况,纯整数和纯小数,因为小数点固定在最低位和最高位,所以它们用定点数表示时,原理是相同的,只需要把整数部分、小数部分,按照十进制转二进制的规则,分别转换即可。
而对于整数+小数的情况,用定点表示时,需要约定小数点的位置,才能在计算机中表示。
无符号定点数无符号定点数,数值在机器中字长的全部二进制位中没有符号位,全都是数值位。例如,小数1.2转换成16位的定数,小数点的位置约定在第14位和第15位之间。
根据计算结果,小数1.2可以用Q14格式的无符号定点数19661表示。
无符号定点数比较简单,不存在负小数;但是,有符号定点数就没这么简单了,因为存在正负数,其计算方法也不尽相同。