(1)立即寻址:操作数就包含在指令中。(1,数据,快)
(2)直接寻址:操作数存放在内存单元中,指令中直接给出操作数所在存储单元的地址。(3,指向内存的指针)
(3)寄存器寻址:操作数存放在某一寄存器中,指令中给出存放操作数的寄存器名。(2)
(4)寄存器间接寻址:操作数存放在内存单元中,而操作数所在存储单元的地址在某个寄存器中。(4)
(5)间接寻址:指令中给出操作数地址的地址。(5,指向内存的二级指针)
(6)相对寻址:指令地址码给出的是一个偏移量(可正可负),操作数地址等于本条指令的地址加上该偏移量。
(7)变址寻址:操作数地址等于变址寄存器的内容加偏移量。
寻址速度(由快到慢):立即寻址 > 寄存器寻址 > 直接寻址 > 寄存器间接寻址 > 间接寻址
口诀:“立即(寄)直起(寄)肩(间)”
采用不同的寻址方式的目的:扩大寻址空间,提高编程的灵活性。