历史上的今天
返回首页

历史上的今天

今天是:2025年03月06日(星期四)

正在发生

2018年03月06日 | 单片机浮点数运算的源码设计

2018-03-06 来源:eefocus

  单片机的一个浮点数一般在KeilC51中是以4字节形式存储的,格式严格遵循IEEE-754标准。在单片机二进制数据中,浮点数用两个部分来表示,基C为2,E为阶码,M为尾数,E的保存形式是一个0~255的8位值,指数的实际表示值是保存值减去127,范围在-127~+128的数,尾数是一个24位值,换算7个十进制数,最高位通常是1,符号位表示浮点数的正负。
  
  现在看怎样显示一个浮点数,由于浮点数的尾数是24位,最高可以表达的整数值为16777215,用科学计数法表示时整数部分占据1位,小数部分就可以有6位,我们将浮点数的尾数放在长整形数据longint中保存,阶码可以在int型数据中保存。此处我们用C程序来实现显示一个浮点数的功能。
  
  (1)浮点数显示子函数。

 

  (2)显示十进制尾数和阶的子函数。

  在大多数的单片机应用系统中都不能离开数值计算,最基本的数值运算为四则运算,单片机中的数都是以二进制形式表示的,二进制的算法有很多,其中最基本的是定点制和浮点制,以上介绍了浮点数在单片机中的表示方式和汇编子程序,浮点数比定点数加减法要困难,但是克服了定点数表示范围小的问题,总之定点数和浮点数各有各得的特点,读者可以在实际运用中加以优化运用。


推荐阅读

史海拾趣

地博电子(DIBO)公司的发展小趣事

随着公司业务的不断发展,地博电子在2010年成功投产了2条全自动化PC薄膜生产线。这一举措不仅大大提高了生产效率,降低了生产成本,还确保了产品质量的稳定性和一致性。全自动化生产线的投产,为地博电子在电子材料行业中的竞争地位奠定了坚实的基础。

American Electric公司的发展小趣事

在发展过程中,American Electric公司也面临过各种挑战和危机。例如,XXXX年,公司遭遇了一次严重的自然灾害,导致部分电力设施受损。然而,公司迅速启动了应急响应机制,组织抢修队伍进行抢修,并在最短时间内恢复了供电。此外,在面对政策调整、市场竞争等挑战时,公司也能够灵活应对,通过调整战略、优化管理等方式保持稳健发展。

EVERLIGHT公司的发展小趣事

在电子产品领域,品质是企业生存和发展的关键。EVERLIGHT一直将品质管理放在首位,建立了严格的质量控制体系。公司从原材料采购到生产过程,再到产品出厂,都进行严格的品质检测和监控,确保每一颗LED都符合高标准的质量要求。这种对品质的坚持让EVERLIGHT在市场上赢得了良好的口碑,也为企业赢得了更多客户的信任。

FutureWafer公司的发展小趣事

随着全球环保意识的不断提高,EVERLIGHT也积极响应环保号召,致力于研发和生产环保型LED产品。公司采用环保材料和节能技术,不断降低产品的能耗和废弃物排放。同时,公司还积极推广绿色照明理念,为客户提供环保、节能的照明解决方案。这种对环保的关注和实践让EVERLIGHT在电子行业中树立了良好的形象。

BITECH公司的发展小趣事

EVERLIGHT公司的故事始于1983年,当时台湾的电子产业正迎来蓬勃发展的时期。创始人凭借对LED(发光二极管)技术的深刻洞察,决定创立EVERLIGHT,专注于LED的研发和生产。公司从一开始就注重技术创新,投入大量资源研发新型LED产品,不断提高产品的亮度和稳定性。随着技术的不断突破,EVERLIGHT逐渐在LED市场上崭露头角。

Deltrol Controls公司的发展小趣事

在电子设备的制造过程中,螺线管是不可或缺的元件之一。然而,传统的螺线管生产方式存在效率低下、质量不稳定等问题。Deltrol Controls通过引进先进的生产设备和技术,实现了螺线管的精细化生产。这一举措不仅提高了生产效率,而且保证了螺线管的质量稳定性。凭借这一优势,Deltrol Controls在电子行业中的竞争力得到了显著提升。

问答坊 | AI 解惑

读卡器的使用

图为IC卡及其读写器硬件电路图。其中读写器由单片机、键盘、显示、监控电路等部分组成。IC卡采用XICOR公司的X76F100Y。     2.1 IC卡及卡座     X76F100为128×8位的保密串行FLASH E2PROM,其中读密码和写密码分别为64位。 ...…

查看全部问答>

NEC芯片可以输出PWM信号,但接上直流电机就没了

本帖最后由 paulhyde 于 2014-9-15 09:36 编辑 NEC芯片输出PWM信号已经解决了,用SPI模式.不过有点搞不懂为什么正转时CHnDCDIR输出的是高电平,设置反转时却输出低电平,和数据手册相反的.而且接上直流电机就连PWM信号都没了. 请高手指点一下,谢谢了 ...…

查看全部问答>

LPC1114恩智浦Cortex开发板

审请LPC1114恩智浦Cortex开发板,用于成本敏感的低端金融设备控制系统开发 联系:tech1@fota.cn 办公电话:0571-87647777 转115 联系人:金工 [ 本帖最后由 haiqing05 于 2010-4-6 13:30 编辑 ]…

查看全部问答>

哪位大侠可以告诉我,怎么才能学好数据库呀。

最近老板要我专门做数据库,我无从下手啊,有没有高手指点一下呀。…

查看全部问答>

dsp、arm、ZigBee纠结中

本人一女生,本来是通信的,老师是搞的硬件,前半年我信誓旦旦的要搞硬件,现在内打击的不得了。现在就想着学学DSP好了,但听说现在用DSP搞开发不太好搞,而且适用面也不是很广,想想学arm吧,但要学习一个很复杂的炒作系统,真不知道该怎么走了, ...…

查看全部问答>

PB 下如何实现USB键盘和鼠标

想问一下Core OS\\Core OS Services\\USB Host Support下的内容已经Add to OS Desgin,但USB的键盘和鼠标还是没有用,并且开机时蜂鸣器长响,是什么原因? 另外,Device Drivers\\USB Function 和USB Host 之间的区别?…

查看全部问答>

[100分!急!]在WinCE里用VC++.NET操作远程SQL Server2000问题

本人想在VS2005上用VC++.NET开发一个基于WinCE 5.0的操作远端的SQL Server2000的程序,怎么写啊. 1. 源代码和具体步骤? 2. 如何使用SQL CE 2,如何在WinCE 上装SQL CE 2? 3. WinCE 上操作远程SQLServer2000数据库非得装SQL CE吗? 4. 如何用V ...…

查看全部问答>

创意手工LED发光怀表

LED怀表”这是一个DIY作品,作者觉得这可能是第一个LED怀表,来自Paul,其对祖父留下来的一个旧怀表进行改造,当然能用的也只有怀表的外壳。   怀表里面一共安装了133个LED,每一个都是手工焊接而成,LED可显示60秒、60分钟和12小时,另外还有一 ...…

查看全部问答>

请教香主或是站内高手!!!

大家好,我目前正准备将UCOS 移植到 STM32F103 ,我不太会移植,我参考了网上很多资料,也包括Micrium 官方的针对STM32的UCOS2.86例程,本人想在Micrium 的例程上修改下。问题是有人说官方的程序有死机及OSCtxSw&nbs ...…

查看全部问答>

请问STM8程序烧录时怎么加密?用ST_LINK+STVP,谢谢

                                 请问STM8程序烧录时怎么加密?用ST_LINK+ST Visual Programmer ,没有找到,看PDF好像是通过配置寄存器?又好像一 ...…

查看全部问答>