寻址方式

寻址方式

    • 指令寻址
    • 数据寻址

寻址方式
确定 本条指令 的 操作数地址(数据寻址)
下一条 欲执行指令 的 指令地址(指令寻址)

指令寻址

顺序 ( PC ) + 1 ----> PC
寻址方式_第1张图片

数据寻址

数据寻址有多种,需要在指令中明确指出采用哪一 种寻址方式,可以专门设置一个寻址方式特征字段, 或纳入操作码中。
寻址方式_第2张图片
1.立即寻址
又称立即数寻址,即指令中的形式地址
A不是操作数地址,而是操作数本身。
寻址方式_第3张图片
• 指令执行阶段不访存
• A 的位数限制了立即数的范围

2.直接寻址
指令中的形式地址即为有效地址 EA = A
寻址方式_第4张图片
• 执行阶段访问一次存储器
• A 的位数决定了该指令操作数的寻址范围
• 操作数的地址不易修改(必须修改A)

3.隐含寻址
操作数地址隐含在操作码中
寻址方式_第5张图片
寻址方式_第6张图片
4.间接寻址 EA =(A)
指令中的形式地址不是操作数的地址, 而是操作数地址的地址。
寻址方式_第7张图片
间接寻址编程举例
寻址方式_第8张图片
5.寄存器寻址 EA = Ri
寻址方式_第9张图片
6.寄存器间接寻址
寻址方式_第10张图片
• 有效地址在寄存器中, 操作数在存储器中,执行阶段访存 操作数
• 便于编制循环程序
7.基址寻址
(1) 采用专用寄存器作基址寄存器
寻址方式_第11张图片
(2)采用通用寄存器作基址寄存器
寻址方式_第12张图片
• 由用户指定哪个通用寄存器作为基址寄存器
• 基址寄存器的内容由操作系统确定
• 在程序的执行过程中 R0 内容不变,形式地址 A 可变
8.变址寻址
寻址方式_第13张图片
• 可扩大寻址范围
• IX 的内容由用户给定
• 在程序的执行过程中 IX 内容可变,形式地址 A 不变
• 便于处理数组问题

例子: 设数据块首地址为 D,求 N 个数的平均值
寻址方式_第14张图片
9.相对寻址
寻址方式_第15张图片
10. 堆栈寻址
(1) 堆栈的特点
寻址方式_第16张图片
(2)堆栈寻址举例
寻址方式_第17张图片
(3) SP 的修改与主存编址方法有关
寻址方式_第18张图片

你可能感兴趣的:(计算机组成原理,寻址方式)