Fr anklin C51 的浮点型变量( float ) , 符合IEEE- 754 标准的单精度浮点型数据, 占用四个字节(
32 位二进制数) , 具有24 位精度( 二进制) , 在十进制中具有7 位有效数字,
许多复杂的数学表达式都采用这种浮点型变量。它用符号位表示数的符号, 用阶码和尾数表示数的大小。浮点数格式如表1。
其中, S 为符号位, 存放在最高字节的最高位, “1 ”表示负, “0 ”表示正。E 为阶码, 占用8 位二进制数,
存放在高两个字节中。注意, 阶码E 值是以2 为底的指数再加上偏移量127, 这样处理的目的是为了避免出现负的阶码值,
而指数是可正可负的。阶码E 的正常取值范围是0~255, 从而实际指数的取值范围为- 127- 128。M 为尾数的小数部分, 用23
位二进制数表示, 存放在低三个字节中。尾数的整数部分永远为1, 因此不予保存,
但它是隐含的。小数点位于隐含的整数位“1”的后面。即浮点数= ( 1. M22M21. . . . . . M0) * 2 的(
E127)次方, S 为符号位, 1 为负, 0 为正。
例如浮点数12. 34= 414570A4H 在内存中的存放格式为:
字节地址 + 0 + 1 + 2 + 3
浮点数内容 10100100 01110000 01000101 01000001
则为( 1. 10001010111000010100100) * ( 2 的( 130- 127)
次方)