[assembly]-ARMV8的load/store指令学习笔记

1、Load-Store Single Register 单寄存器读写

ldr{<size>} Rd, <addr>
str{<size>} Rd, <addr>

<size> : b h  sb  sh sw

2、Load-Store Single Register (unscaled offset) offset为-256 ~ +256对齐读写

ldur{<size>} Rd, <addr>
stur{<size>} Rd, <addr>

<size> : b h  sb  sh sw

3、Load-Store Pair 双寄存器读写

ldp{<size>} Rd, <addr>
stp{<size>} Rd, <addr>

<size> : b h  sb  sh sw

4、Load-Store Non-temporal Pair 直接读写外存,跳过cache

ldnp{<size>} Rd, <addr>
stnp{<size>} Rd, <addr>

<size> : b h  sb  sh sw

5、Load-Store Unprivileged 以EL0身份读写

ldtr{<size>} Rd, <addr>
sttr{<size>} Rd, <addr>

<size> : b h  sb  sh sw

6、Load-Store Exclusive 独占

ldxr{<size>} Rd, <addr>
stxr{<size>} Rd, <addr>

ldxp{<size>} Rd, <addr>
stxp{<size>} Rd, <addr>

<size> : b h  sb  sh sw

7、Load-Acquire / Store-Release 带有aruire/release语义的读写

(Non-exclusive)
ldar{<size>} Rd, <addr>
stlr{<size>} Rd, <addr>

(exclusive)
ldaxr{<size>} Rd, <addr>
stlxr{<size>} Rd, <addr>

<size> : b h  sb  sh sw

8、总结以上指令

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42135087/article/details/107467521