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}

相关推荐
DebugKitty3 小时前
硬件开发2-汇编2(ARMv7-A)
汇编·bx·stmdb
Aczone285 小时前
硬件(六)arm指令
开发语言·汇编·arm开发·嵌入式硬件·算法
Skylar_.16 小时前
嵌入式 - ARM(2)汇编
汇编·arm开发
10岁的博客3 天前
深入解析汇编语言的奥秘
汇编
阿发君13 天前
ARMCC和gcc汇编文件互相转换的高效方法
汇编
JCBP_15 天前
QT(1)
开发语言·汇编·c++·qt
浩浩测试一下16 天前
06高级语言逻辑结构到汇编语言之逻辑结构转换 for (...; ...; ...)
汇编·数据结构·算法·安全·web安全·网络安全·安全架构
weixin_4707403617 天前
某算法的python执行汇编
汇编·python·算法
small_wh1te_coder25 天前
GCC深度剖析:从编译原理到嵌入式底层实战
汇编·c++·面试·嵌入式·状态模式·c
白书宇1 个月前
5.从零开始写LINUX内核--从实模式到保护模式的过渡实现
linux·汇编·数据库·开源