IA

IA = Increment After

原理:

先执行复制操作,然后(After)再递增(Increment)基址寄存器中记录的地址;

IB

IB = Increment Before

原理:

先(Before)递增(Increment)基址寄存器中记录的地址,然后再执行复制操作;

DA

DA = Decrement After

原理:

先执行复制操作,然后(After)再递减(Decrement)基址寄存器中记录的地址;

DB

DB = Decrement Before

原理:

先(Before)递减(Decrement)基址寄存器中记录的地址,然后再执行复制操作;

STM LDM汇总:

在使用中,我发现不能单纯记忆后缀的功能,因为在不同位置含义不同,所以安全期间,先将功能汇总如下:

指令 注释 数据方向示意
LDMED 先递增基址,再从基址指向的地址 复制数据到 目的寄存器
LDMFD 先从基址指向的地址 复制数据到 目的寄存器,再递增基址
LDMEA 先递减基址,再从基址指向的地址 复制数据到 目的寄存器
LDMFD 先从基址指向的地址 复制数据到 目的寄存器,再递减基址
STMFA 先递增基址,再从目的寄存器 复制数据到 基址指向的地址处
STMEA 先从目的寄存器 复制数据到 基址指向的地址处,再递增基址
STMFD 先递减基址,再从目的寄存器 复制数据到 基址指向的地址处
STMED 先从目的寄存器 复制数据到 基址指向的地址处,再递减基址