控制工程师论坛

PLC与PAC

关于浮点数在存储器的保存形式问题!

jnzhlf
jnzhlf

2008-10-10

一个浮点数为32位,占有2个字的存储空间。一个浮点数包括符号位(S),指数(e)和尾数(m),三者分别占有的位图如下所示:
指数(e)和尾数(m)的取值见下表:
REAL数据类型的值都可以表示成1.m×2^(e-bias)的形式,其中1≤e≤254,bias=127,S=0时为正值,S=1时为负值。
如12.25的表示方法如下:
S=0;
指数e=27+21=128+2=130;
尾数m=2-1+2-5=0.5+0.03125=0.53125;
浮点值=(1+m)×2^(e-bias)=(1+0.53125)×2^(130-127)=1.53125×8=12.25.
浮点数12.25的位图表示如下:

 

SIMENS PLC浮点数小数位数最多为6位,要避免两个相差大于107的浮点数运算,否则会出现不正常的结果,如10000000.0+1.0结果仍是10000000.0。
回帖

评论0

首页 | 登录 | 注册 | 返回顶部↑
手机版 | 电脑版
版权所有 Copyright(C) 2016 CE China