ARMv7E-M 是一款嵌入式处理器架构,在其指令集中包含一条 VCVT.F32.U32 指令。VCVT.F32.U32 指令用于将无符号整数转换为单精度浮点数。其编码如下:
VCVT.F32.U32 Dd, Rn
其中,Dd 是写入单精度浮点结果的寄存器,Rn 是包含要转换的无符号整数的寄存器。
示例代码:
uint32_t int_num = 100;
float float_num = 0.0;
asm("VCVT.F32.U32 %0, %1" : "=t" (float_num) : "r" (int_num));
以上代码将整数变量 int_num 转换为浮点数,并将结果存储在浮点数变量 float_num 中。