ARM SIMD instruction -- ucvtf

UCVTF:

Unsigned fixed-point Convert to Floating-point (vector). This instruction converts each element in a vector from fixed-point to floating-point using the rounding mode that is specified by the FPCR, and writes the result to the SIMD&FP destination register。

无符号定点转换为浮点(向量)。此指令使用FPCR指定的舍入模式将向量中的每个元素从定点转换为浮点,并将结果写入SIMD&FP目标寄存器。

unsigned long long proc_stt_jf = 0;

402230: 9102c3e4 add x4, sp, #0xb0 // x4=&proc_stt_jf=sp+0xb0 --> sp+176

...

402888: fd405be8 ldr d8, [sp, #176] // d8=proc_stt_jf

...

402934: f94023e0 ldr x0, [sp, #64] // x0=buf

402938: d2800001 mov x1, #0x0 // #0

40293c: 97fffc49 bl 401a60 <strtod@plt> // d0=strtod(buf, 0)

402940: 7e61d901 ucvtf d1, d8 // d1=proc_stt_jf

=> 0x0000000000402934: e0 23 40 f9 ldr x0, [sp, #64]

(gdb) n

0x0000000000402938 in ?? ()

=> 0x0000000000402938: 01 00 80 d2 mov x1, #0x0 // #0

(gdb)

0x000000000040293c in ?? ()

=> 0x000000000040293c: 49 fc ff 97 bl 0x401a60 <strtod@plt>

(gdb)

0x0000000000402940 in ?? ()

=> 0x0000000000402940: 01 d9 61 7e ucvtf d1, d8

(gdb) p/f $d8

9 = {f = 0, u = 0, s = 0} (gdb) p/f d1
$10 = {f = 2.2250738585072014e-308, u = 2.2250738585072014e-308, s = 2.2250738585072014e-308}

(gdb) n

0x0000000000402944 in ?? ()

=> 0x0000000000402944: 21 18 69 1e fdiv d1, d1, d9
(gdb) p/f d1 11 = {f = 0, u = 0, s = 0}

(gdb) p/f $d8

$12 = {f = 0, u = 0, s = 0}

相关推荐
CHANG_THE_WORLD1 天前
有符号数和无符号数的 汇编视角 区别
汇编
南飞测绘视界2 天前
【编号220】中国国内生产总值历史数据汇编1952-2021合订本(PDF扫描版)
汇编·pdf·年鉴
Ayanami_Reii4 天前
汇编和C语言结构
c语言·汇编·笔记
脑子慢且灵6 天前
C语言与Java语言编译过程及文件类型
java·c语言·开发语言·汇编·编辑器
日更嵌入式的打工仔10 天前
汇编与反汇编
汇编
oioihoii15 天前
从汇编角度看C++优化:编译器真正做了什么
java·汇编·c++
CHANG_THE_WORLD15 天前
函数简单传入参数的汇编分析
汇编·c++·算法
GHL28427109015 天前
i++汇编学习
汇编·学习
iCxhust15 天前
Intel8259汇编串口接收转C语言
c语言·开发语言·汇编
东亚_劲夫15 天前
汇编和反汇编
汇编