courses:embedded_system:加载_存储指令
Load/Store指令
单寄存器存取
LDR Rd, [<地址>] ; 将指定地址上的字读入Rd STR Rd, [<地址>] ; 将Rd中的字存入指定地址 LDRB Rd, [<地址>] ; 将指定地址上的字节读入Rd STRB Rd, [<地址>] ; 将Rd中的字节存入指定地址
多寄存器存取
LDM <addr_mode>, Rn{!}, <reg_list> ; 多寄存器加载 STM <addr_mode>, Rn{!}, <reg_list> ; 多寄存器存储
堆栈操作
Stack type | Push | Pop |
---|---|---|
Full descending | STMFD (STMDB) | LDMFD (LDMIA) |
Full ascending | STMFA (STMIB) | LDMFA (LDMDA) |
Empty descending | STMED (STMDA) | LDMED (LDMIB) |
Empty ascending | STMEA (STMIA) | LDMEA (LDMDB) |
单寄存器交换
SWP Rd, Rm, [Rn] ; 字数据交换:[Rn]放入Rd,Rm放入[Rn],Rn不等于Rd/Rm SWPB Rd, Rm, [Rn] ; 字节数据交换:[Rn]放入Rd,Rm放入[Rn],Rn不等于Rd/Rm