53、Cortex-M33处理器中的浮点单元(FPU)详解

Cortex-M33处理器中的浮点单元(FPU)详解

1. 浮点数据概述

在C编程中,数值可以被定义为浮点数据。例如,圆周率π可以被声明为单精度浮点数:

float pi = 3.141592F;

或者双精度浮点数:

double pi = 3.1415926535897932384626433832795;

浮点数据使处理器能够处理比整数或定点数据更广泛的数据范围,以及非常小的值。此外,还有半精度浮点数据格式,它占用16位。不过,一些C编译器不支持半精度浮点格式。在gcc和Arm® C编译器中,半精度浮点值使用 __fp16 数据类型声明(注意:需要额外的命令选项)。

1.1 单精度浮点数

单精度数据格式具有特定的表示规则。在大多数情况下,指数的值范围是1 - 254,单精度值由特定方程表示。要将一个值转换为单精度浮点数,需要将其归一化到1.0和2.0之间。以下是一些浮点值的示例:
| 浮点值 | 符号 | 指数 | 二进制形式的小数部分 | 十六进制值 |
| — | — | — | — | — |
| 1.0 | 0 | 127 (0x7F) | 000_0000_0000_0000_0000_0000 | 0x3F800000 |
| 1.5 | 0 | 127 (0x7F) | 100_0000_0000_0000_0000_0000 | 0x3FC00000 |
| 1.75 |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值