CSNotesCSNotes
TODO
LeetCode
数据结构
计算机组成原理
操作系统
计算机网络
数据库
Java
SSM
React
实用工具
GitHub
TODO
LeetCode
数据结构
计算机组成原理
操作系统
计算机网络
数据库
Java
SSM
React
实用工具
GitHub
  • 第一章 计算机系统概述

    • 1.1 计算机发展历程
  • 第二章 数据的表示和运算

    • 2.1 数制与数码
    • 2.2 运算方法和运算电路
    • 2.3 浮点数的表示与运算
  • 第三章 存储系统

    • 3.1 存储器概述
    • 3.2 主存储器
    • 3.3 主存储器与 CPU 的连接
    • 3.4 外部存储器
    • 3.5 高速缓冲存储器
    • 3.6 虚拟存储器
  • 第四章 指令系统

    • 4.1 指令格式
    • 4.2 指令的寻址方式
    • 4.3 程序的机器级代码表示
    • 4.4 CISC 和 RISC 的基本概念
  • 第五章 中央处理器

    • 5.1 CPU 的功能和基本结构
    • 5.2 指令执行过程
    • 5.3 数据通路的功能和基本结构
    • 5.4 控制器的功能和工作原理
  • 第六章 总线

    • 6.1 总线概述
    • 6.2 总线事务和定时
  • 第七章 输入/输出系统

    • 7.1 I/O 系统基本概念
    • 7.2 I/O 接口
    • 7.3 I/O 方式

4.2 指令的寻址方式

寻址方式是寻找指令或操作数有效地址的方式。有效地址(EA)是操作数在存储器中的真实地址。 形式地址(A)是指令中的地址码字段。

指令系统中采用不同的寻址方式的目的是可缩短指令字长,扩大寻址空间,提高编程的灵活度。

4.2.1 指令寻址和数据寻址

指令寻址:寻找下一条将要执行的指令地址。

数据寻址:寻找本条指令的数据地址。

1.指令寻址

(1)顺序寻址

PC+1(1 个指令字长)

(2)跳跃寻址

2.数据寻址

操作码寻址特征(指明属于哪种寻址方式)形式地址 A

4.2.2 常见的数据寻址方式

1.隐含寻址

2.立即(数)寻址

地址字段是操作数本身。

3.直接寻址

$EA=A$

一次访存。

4.间接寻址

$EA=(A)$

5.寄存器寻址

$EA=R_{i}$

6.寄存器间接寻址

$EA=(R_{i})$

7.相对寻址

$EA=(PC)+A$

相对寻址中,执行本条指令时,PC 已完成 +1 操作,PC 中保存的是下一条指令的地址,因此以下一条指令的地址为基准位置的偏移量。

8.基址寻址

$EA=(BR)+A$

重定位寄存器就是基址寄存器

x=BR[A]

9.变址寻址

$EA=(IX)+A$

x=A[IX]

基址寻址和变址寻址的区别?

基址寻址变址寻址
有效地址EA=(BR)+AEA=(IX)+A
访问次数11
寄存器内容由操作系统或管理程序确定由用户设定
程序执行过程中值可变与否不可变可变
特点有利于多道程序设计和编制浮动程序有利于处理数组问题和编制循环程序

10.堆栈寻址

编辑此页
上次更新:
Prev
4.1 指令格式
Next
4.3 程序的机器级代码表示