浮点数采用IEEE32位标准浮点数格式(标准C语言格式),长度为32bits,存储格式为四个字节,格式如下表所示。
D31 | D30-D23 | D30-D23 | D15-D8 | D7-D0 |
浮点数符号S | 阶码E | 尾数高位 | 尾数中位 | 尾数低位 |
若阶码为E,尾数为M,则有:浮点数值=±(1+M×2^23)×2^(E-127)
浮点数的正负取决于符号位S的值,S=1表示浮点数为负,S=0则表示浮点数为正
例如:当32位浮点数为40H,A0H,00H,00H时,
即S=0,E=81H=129,M=200000H=2^21,则:
浮点数值=(1+2^21×2^-23)×2^(129-127)=1.25*2^2=1.25*4=5.0;
发送时按符号位及阶码、尾数高位、尾数中位和尾数低位的先后顺序发送4个字节。