跳转到主要内容

浮点数

C2000浮点运算注意事项——CPU和CLA的差异及误差处理技巧

judy /

C28x+FPU架构的C2000微处理器在原有的C28x定点CPU的基础上加入了一些寄存器和指令,来支持IEEE 单精度浮点数的运算。对于在定点微处理器上编写的程序,浮点C2000也完全兼容,不需要对程序做出改动。浮点处理器相对于定点处理器有如下好处:

1.编程更简单
2.性能更优,比如除法,开方,FFT和IIR滤波等算法运算效率更高。
3.程序鲁棒性更强。

一、IEEE754格式的浮点数
C28x+FPU的单精度浮点数遵循IEEE754格式。它包括:
- 1位符号位:0表示正数,1表示负数。
- 8位阶码
- 23位尾数

使用高精度单片机,一定得懂如何使用浮点数!

kelly /

在单片机的BCD增量算式、线性化处理等过程中,都会遇到一个共同的问题,那就是小数的运算。在单片机当中,对于小数的表现方法一般只有两种,一种是浮点数,一种是定点数。本文就将对单片机中的浮点数进行概述并对其汇编程序设计进行介绍。

浮点数结构有其自身的优点,其能够以固定的字节长度保持相对精度不变,用较少的字节表示很大的数的范围,便于存储和运算,在处理的数据范围较大和要求精度较高时,采用浮点数。

<strong>浮点数概念</strong>

常用科学计数法来表示一个十进制数如:

l234.75=1.23475E3=1.23475×103(10的3次方)

在数据很大或很小时,采用科学计数法避免了在有效数字前加0来确定小数点的位置,突出了数据的有效数字的位数,简化了数据的表示,可以认为科学计数法就是十进制数的浮点数表示方法。

在二进制中,也可以用类似的方法来表示一个数,如:

1234.75=10011010010.11(二进制)=0.1001101001011×211(2的11次方)

一般表达式为:

N=S×2p

在这种表示方法中,数值由4个部分组成,即尾数S及符号,阶码P及符号。