广告招募

当前位置:全球制造网 > 技术中心 > 所有分类

四字节浮点数转为十、十六进制数、BCD码

2026年05月12日 08:04:28      来源:唐山冠亚工控设备有限公司 >> 进入该公司展台      阅读量:14

分享:





现场的仪表,比如积算仪、巡检仪、无线钢水测温仪、无线称重校验仪,送出来的数据,有的是定点数,有的浮点数。作为PLC或二次仪表、显示大屏幕,都需要查询它们的瞬时值并显示出来。

以二次数显表为例,接收的它们的数据后,需要转换成BCD数进行显示。定点数的接收与转换比较简单,浮点数由于是由阶码确定小数点的位置,所以在转换过程中,稍微的增加了点难度。


浮点数共4字节,32位


例如124.75,浮点数为42F98000H

4

2

F

9

8

0

0

0

0100

0010

1111

1001

1000

0000

0000

0000

字节3

字节2

字节1

字节0








字节3的第7位表示符号,1表示负数,0表示正数

4个字节都左移一位


例如124.75,浮点数为42F98000H

4

2

F

9

8

0

0

0

0100

0010

1111

1001

1000

0000

0000

0000

字节3

字节2

字节1

字节0

1000

0101

1111

0011

0000

0000

0000

000X

移位后此字节为阶码

这些是尾数











阶码-127=小数点移动的位数,85H=133,133-127=+6,正数表示小数点右移,负数表示小数点左移。

尾数前面隐藏了一个1. 补齐后如下


字节3

字节2

字节1

字节0

1.

1111

0011

0000

0000

0000

000X

注意小数点







小数点右移6位后如下

字节3

字节2

字节1

字节0

1

1111

00.11

0000

0000

0000

000X





现在把四个字节都左移,使得整数字节和小数字节分开,如下

字节3

字节2

字节1

字节0

111

1100

1100

0000

0000

0000

0XXX

整数字节

小数字节






整数转换为十进制,7CH=124

小数字节高位定义为第1位,以后为2 3 4 5 6.。。。。。。第1位=2^(-1),第2位=2^(-2),第3位=2^(-2),第n位=2^(-n)




版权与免责声明:
1.凡本网注明"来源:全球制造网"的所有作品,版权均属于全球制造网,转载请必须注明全球制造网。违反者本网将追究相关法律责任。
2.企业发布的公司新闻、技术文章、资料下载等内容,如涉及侵权、违规遭投诉的,一律由发布企业自行承担责任,本网有权删除内容并追溯责任。
3.本网转载并注明自其它来源的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品来源,并自负版权等法律责任。 4.如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系。