0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

数据转换:十六进制与浮点数的互相转换

董生 来源:dongbolong 作者:dongbolong 2021-10-25 15:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

DSP上做数据处理遇到,浮点型存储格式,转换成十进制的浮点型参与运算。

最终通过用union与struct,问题解决了。对于这一类问题:位操作。其实每个平台的库代码里有现成的例子。那就是每个平台的库中都有寄存器的定义。就是用union与struct,即可解决。


typedef union { float f_val; struct { unsigned long datatail: 23; unsigned long exponent : 8; unsigned long sign : 1; } bits;} myfloat;

在处理函数中,做赋值即可:

val.bits.sign = data_sign; val.bits.exponent = data_exp; val.bits.datatail= data_tail; fReceive = val.f_val; //返回 fReceive 是float型 return fReceive;

审核编辑:符乾江

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • dsp
    dsp
    +关注

    关注

    561

    文章

    8276

    浏览量

    368295
  • 数据转换
    +关注

    关注

    0

    文章

    105

    浏览量

    18563
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    低精度浮点数定义——什么是 FP8、FP6、FP4?

    。在浮点数表示中,第一个二进制位表示数字的正负(符号位);接下来的一组二进制位构成指数位,以2为基数表示数字的量级;最后一组二进制位为尾数位(也称为有效数字位),
    的头像 发表于 04-23 12:48 55次阅读
    低精度<b class='flag-5'>浮点数</b>定义——什么是 FP8、FP6、FP4?

    TMS320C6701浮点数字信号处理器:技术剖析与应用指南

    TMS320C6701浮点数字信号处理器:技术剖析与应用指南 在数字信号处理(DSP)领域,高性能、多功能的处理器一直是工程师们追求的目标。德州仪器(TI)的TMS320C6701浮点数字信号处理器
    的头像 发表于 03-09 09:45 627次阅读

    TMS320C6713B浮点数字信号处理器:特性、配置与应用全解析

    TMS320C6713B浮点数字信号处理器:特性、配置与应用全解析 在数字信号处理领域,TMS320C6713B浮点数字信号处理器以其卓越的性能和丰富的功能,成为众多工程师的首选。本文将深入探讨
    的头像 发表于 03-09 09:10 602次阅读

    嵌入式中的浮点数据转换为字节类型的三种方法

    一般是以字节的形式进行数据交互。要想传输一个浮点数需要把浮点数转换为字节的形式。 MCU不能直接保存浮点
    发表于 01-07 06:28

    使用VScode的PIO开发GD32VF103,但是串口无法打印浮点数怎么解决?

    我最近在使用VScode的PIO开发GD32V,使用的是longan的模板,但是我将串口输出重定义到printf函数中,发现无法使用%f输出浮点数,想问问应该怎么配置,我看到的一种说法是在
    发表于 11-06 06:49

    点数表示实数的方法以及定点数在硬件上的运算验证

    ’b110_0000_0000_0000_0000_0000时,表示为十进制小数0.75( 2^(-1)+2^(-2) )。E是指数,为了能够表示负指数、IEEE754标准中规定浮点数的实际指数为E-127。从32位浮点数编码结
    发表于 10-28 08:13

    E203添加浮点数方法:译码和派遣模块设计

    数据来自于整数寄存器还是浮点数寄存器。 派遣模块与其他模块的连接方式如下图: 左图只选取了有代表性的信号展示出来,即只展示了源操作数和写寄存器的地址是如何在这些模块中传递的。右图是 dispatch
    发表于 10-24 13:54

    浮点指令(三)

    浮点数转化为 32 位二进制补码表示的整数,再写入 x[rd]中。由于浮点数表示范围远远大于整数,且浮点数存在一些特殊表示,比如无穷大和NaN等,下表是一些
    发表于 10-24 13:38

    E203添加浮点数方法:FPU控制逻辑

    fflags 寄存器的。 接下来讲解单精度浮点指令的实现方式。 首先是浮点数存取指令。笔者认为,单精度浮点数数据位宽与整数一样,指令机器码格式一致,因此将
    发表于 10-24 13:28

    蜂鸟E203扩展浮点指令设计(1)

    )相加所得。 • flw 指令从存储器中读回一个单精度浮点数,写回寄存器 rd 中。 • fsw 指令将操作数寄存器 rs2 中的单精度浮点数,写回存储器中。 浮点16位压缩指令只有数据
    发表于 10-24 10:00

    浮点数是如何实现开平方运算的

    摘要: 本文主要描述浮点数是如何实现开平方运算的。 简介 事实上,浮点数的开平方运算结构与定点数甚至整数的开平方运算结构是十分相似的,我们可以在对定点数求平方根运算结构的基础上,针
    发表于 10-24 08:42

    risc-v中浮点运算单元的使用及其设计考虑

    器:用于执行浮点数的除法运算。 转换器:用于执行不同精度之间的类型转换浮点运算单元的使用需要在程序中调用相关的浮点指令,这些指令包括FL
    发表于 10-21 14:46

    大彩讲堂:VisualHMI-LUA教程-获取设置单精度浮点数函数的应用

    软件开发中各种协议对浮点数数据进行获取和赋值处理。get_float(vtype,addr)读取单精度浮点数(float)寄存器,返回有符号单精度浮点数·vtype:数
    的头像 发表于 10-16 00:00 1730次阅读
    大彩讲堂:VisualHMI-LUA教程-获取设置单精度<b class='flag-5'>浮点数</b>函数的应用

    用TXT编辑器打开十六进制文件,如何知道校验和值?

    我从客户那边得到了一个 pmg1-s3 十六进制文件,我想把它和校验和提供给集成电路编程工厂。 1.用 TXT 编辑器打开十六进制文件,如何知道校验和值? 附带的是十六进制文件。 2. 另一个问题是
    发表于 05-23 07:49

    CCG4十六进制文件格式是什么?

    你好,先生, 我可以知道 CCG4 十六进制文件格式吗? 2055 行是什么意思?
    发表于 05-15 07:22