STM32F103xx FPU操作有效格式详解:浮点与固定点运算

需积分: 48 45 下载量 165 浏览量 更新于2024-08-07 收藏 4.08MB PDF 举报
本篇文章主要介绍了STM32F103XX微控制器中的FPU(浮点处理器)操作的有效格式,特别是针对版本6的特定细节。FPU支持多种指令集,包括单精度(Single, S)、双精度(Double, D)以及整数格式(Word, W和Long, L)。这些指令用于执行算术、转换和操作数移动,且在不同格式下有不同的精度和范围限制。操作数格式由FMT和fmt3字段编码决定,这些字段在表7.20和7.21中详细列出,提供了指令助记符、尺寸、数据类型名称以及对应的位编码。 在版本6中,有一些指令如CMP.condn.fmt使用W和L格式来表示S和d格式,并且在某些情况下,指令的结果操作数格式标记ü并不在当前架构规范中指定,导致存在保留指令的例外情况。值得注意的是,PS格式在版本6中被移除,而像ABS(绝对值)、加法、比较和转换等操作都有特定的格式要求和功能域。 表格7.20和7.21展示了FMT和fmt3编码的具体细节,包括指令的助记符、支持的数据类型以及相应的功能。例如,ABS指令支持浮点和固定点操作,而COP1指令集的功能涵盖了浮动、固定点运算以及不同格式间的转换。 文章还提到了MIPS架构程序员卷IA,它介绍了MIPS32架构的介绍性章节,涵盖了MIPS指令集架构(ISA)、MIPS特许资源架构(PRA)、模块和专用扩展(如MIPS16e, MDMX, MIPS-3D, SmartMIPS和DSP模块)等内容。这部分内容强调了体系结构的演变历程,从MIPS I到MIPSr3,以及各种子集和特定应用扩展的特性。 这篇文章的核心是关于STM32F103XX中FPU操作的详细格式指导,同时穿插了MIPS32架构的背景和特性,对于开发人员理解和使用这些处理器提供了技术参考。