我们日常使用的各类数据,都是以二进制的方式存储的。以浮点数为例,在PLC中其表示方式使用了IEEE 754标准。许多编程语言中浮点数的实现也遵循该标准。

IEEE 754提供了很多规范,下面我们了解一下其中的常规单精度浮点数表示方法:

● 符号位S:0代表正数,1代表负数;
● 指数位E:表示小数点的位置,直接影响数的大小。为表示方便,该指数加了一个固定偏移量,即:
指数位E = 指数实际值 + 127
● 有效数字M:也称为尾数位。将浮点数表示为二进制数后进行规范化,隐藏高位1,剩余的小数部分,低位补0。
以123.45为例:


与PLC中的数据一致
以上是常规浮点数的二进制表示方式,此外还有一些特殊的数:±∞、趋于0的数等。二进制的表示方法也涉及精度方面的问题。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
plc
+关注
关注
5010文章
13283浏览量
463197 -
数据
+关注
关注
8文章
7010浏览量
88978 -
存储
+关注
关注
13文章
4302浏览量
85818 -
二进制
+关注
关注
2文章
795浏览量
41648 -
浮点数
+关注
关注
0文章
60浏览量
15869
发布评论请先 登录
相关推荐
嵌入式工程师,别怪"浮点数"太坑!(C语言版本)
:+/-)1.(二进制尾数)*2^(指数=实际指数+偏移量) 对于这几个名词不是特别好解释,结合实际转化过程会更加好理解:(这里以float型浮点数:4.25为例子,如下转化示意图) · 对于小数部分
发表于 05-06 10:51
matlab中浮点复数转化为fpga中二进制的问题
每一个元素都是复数,类似这样的-59.4184087630243-2.62712122987465i。 小弟想实现这个Levinsondurbin的功能仿真,首先把向量实部虚部给导入,该怎么操作这样的浮点数变成有符号的二进制表示呢。
发表于 07-21 16:10
浮点数转换为二进制存储的方法
浮点数转换为二进制存储根据IEEE754标准,单精度float类型使用32比特存储,其中1位表示符号,8位表示指数,23位表示尾数;双精度d
发表于 12-09 06:09
基于查表法的快速求浮点数平方根方法
在基于浮点DSP 的实时运算中,求平方根算法占用了大量的运算时间,成为运算中的瓶颈之一。本文提出一种基于二进制浮点数结构和查表法结合的快速求
发表于 12-18 16:43
•34次下载
浮点数在内存中的存储
浮点数在内存中的存储和整数不同,因为整数都可以转换为一一对应的二进制数据。而浮点数的存储是由符号位 (sign) + 指数位 (exponent) + 小数位 (fraction) 组
三菱PLC浮点数运算指令
二进制浮点数比较指令ECMP(FNC110) DECMP(P)指令的使用如图1所示,将两个源操作数进行比较,比较结果反映在目标操作数中。如果操作数为常数则自动转换成二进制
发表于 03-23 14:14
•1.7w次阅读
浮点数转换为二进制存储
浮点数转换为二进制存储根据IEEE754标准,单精度float类型使用32比特存储,其中1位表示符号,8位表示指数,23位表示尾数;双精度d
发表于 11-26 11:21
•51次下载
定点数和浮点数的概念 浮点数二进制序列与指数表达式之间的转化
的缺点:由于小数点位置固定不变,定点数所表示的数的范围非常有限,不能同时表达特别大或特别小的数,所以才出现了浮点数,以此来扩充数的范围,同时浮点数也广泛应用于精度要求高的场合。简单的理
modbus浮点数怎么读取
常重要的。 首先,要理解Modbus浮点数的表示方式。在Modbus协议中,浮点数采用了IEEE 754标准进行编码和解码。IEEE 754标准定义了

PLC中浮点数的二进制表示
评论