指令的寻址
根据地址找到指令或操作数的方法
- 用 PC 寄存器保存地址,分支少的时候好用,取地址快
- 显式指出内存位置,分支多的时候快,但是取地址慢,适用 微程序 等分支多的程序
操作数的寻址
- 根据冯氏结构,数据不能来自于外设端口
- 如果访问内存,CPU 的效率会降低,不知道访问的是指令的话异常处理非常麻烦
所以指令可以分为两类:(RISC 原则之一)
- 传送指令(内存传寄存器或者反过来)
- 执行指令(操作数来自于寄存器)
寻址方式:
- 直接寻址:都是 CPU 内的事情
- 间接寻址:来自于内存,寄存器里放的是内存地址
- 偏移寻址
(mips 下不区分下面,统一称为偏移寻址)
- 相对寻址:相对 PC 的偏移
- 基址寻址:相对基址寄存器(CS SS B 等)的偏移
- 变址寻址:能够自增自减的寄存器(变址寄存器 I)里面的偏移