计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计

文章目录

  • 机器指令
    • 指令的一般格式
      • 操作码(扩展操作码⭐️)
      • 地址码(访存次数⭐️)
    • 梳理机器字长、指令字长、存储字长
    • 指令字长
  • 操作数类型和操作种类
    • 操作数类型
    • 数据在存储器中的存放方式
    • 操作类型
  • 寻址方式⭐️
    • 指令寻址
    • 数据寻址
      • 立即寻址
      • 直接寻址
      • 隐含寻址
      • 间接寻址
      • 寄存器寻址
      • 寄存器间接寻址
      • 基址寻址
      • 变址寻址
        • 比较基址寻址和变址寻址
      • 相对寻址(带例题详解)
      • 堆栈寻址(带例题详解)
    • 总结一下
  • 寻址方式相关题型⭐️⭐️
    • 寻址方式的理解
    • 指令格式设计
  • RISC技术(了解)
  • 小结
    • 划个重点

机器指令

指令的一般格式

操作码字段(OP) 地址码字段(A,几地址就有几个A)

操作码(扩展操作码⭐️)

反映机器做什么操作

  • 长度固定
    • 用于指令字长较长的情况,RISC。位置固定,位数固定,便于译码处理。
  • 长度可变
    • 操作码分散在指令字的不同字段中,指令字长较短时,可利用操作码的扩展技术,增加操作系统的操作类型。

⭐️扩展操作码

  • 扩展操作码应遵守的原则
    • 使用频度高的指令应分配短的操作码,使用频率低的指令相应地分配较长的操作码
    • 短码不能是长码的前缀
  • 操作码的位数随地址数的减少而增加
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第1张图片

一道例题
假设字长为16位,操作数的地址码为6位,指令有零地址、一地址、二地址三种格式
计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第2张图片


地址码(访存次数⭐️)

  • 四地址
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第3张图片
    • 四次访存:取址→访 A 1 A_1 A1→访 A 2 A_2 A2→结果( A 3 A_3 A3
  • 三地址
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第4张图片
    • 4次访存:取址→访 A 1 A_1 A1→访 A 2 A_2 A2→结果( A 3 A_3 A3
  • 二地址
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第5张图片
    • 4次访存:取址→访 A 1 A_1 A1→访 A 2 A_2 A2→结果(存回 A 1 A_1 A1/ A 2 A_2 A2
    • 存于ACC,3次访存:若存ACC里,那就少存回的那一次
      计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第6张图片
  • 一地址
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第7张图片
    • 2次访存:取址→存入
  • 零地址:无地址码

日常分不清楚

梳理机器字长、指令字长、存储字长

  • 字长一个字中的二进制位的位数
    • 二进制的每一个0或1是组成二进制的最小单位,称为位(bit)。常用的字长为8位、16位、32位和64位。字长为8位的编码称为字节,是计算机中的基本编码单位。
  • 机器字长计算机能直接处理的二进制数据的位数。
    • 机器字长通常与主存单元的位数一致,即与寄存器内核位数有关
    • 机器字长反映了计算机的运算精度,即字长越长,数的表示范围也越大,精度也越高
    • 机器字长与主存储器字长通常是相同的,但也可以不同.不同的情况下,一般是主存储器字长小于机器字长,例如机器字长是32位,主存储器字长可以是32位,也可以是16位,当然,两者都会影响CPU的工作效率。
  • 指令字长一个指令字中包含二进制代码的总位数。
  • 存储字长一个存储单元存储二进制代码的位数。

啊我真的需要分清楚嘛


指令字长

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第8张图片

字长可变,导致控制电路复杂,多字长指令需要多次访存,应尽量把常用指令设计为单字长/短字长(通常令字长取8的整数倍)


  • 当用一些硬件资源代替指令字中的地址码字段后(用PC代替 A 4 A_4 A4
    • 可扩大指令操作数的寻址范围
    • 可缩短指令字长
    • 可减少访存次数
  • 当指令的地址字段为寄存器时(将结果存于ACC)
    • 可缩短指令字长
    • 指令执行阶段不访存(可提速)

操作数类型和操作种类

操作数类型

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第9张图片

数据在存储器中的存放方式

指路第四章第三只的第三根

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第10张图片
计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第11张图片

操作类型

  • 数据传送
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第12张图片
  • 算术逻辑运算
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第13张图片
  • 移位运算
    • 算术移位、逻辑移位、循环移位(带进位和不带进位)
  • 转移
    • 无条件转移 JMP

    • 条件转移
      计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第14张图片

    • 陷阱与陷阱指令

      • 一般不提供给用户直接使用(在出现事故时,由CPU自动产生并执行)
      • 设置供用户使用的陷阱指令
        在这里插入图片描述
    • 调用和返回
      计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第15张图片

      • 在编写程序时,有些具有特定功能的程序段会被反复利用,为避免重复编写,可将这些程序段设定为独立子程序,但需要执行某子程序时,只需要子程序调用指令即可。
      • 子程序可在多处被调用
      • 子程序调用可出现在子程序中,即运行子程序嵌套
      • 每个CALL指令都对应一条RETURN指令
      • 堆栈用于子程序的多重调用

      对照中断嵌套,大体流程对照理解,多重调用软件实现,中断嵌套硬件实现,前者又称为软中断。

  • 输入输出
    • 入:端口地址→CPU的寄存器
    • 出:CPU的寄存器→端口地址

寻址方式⭐️

  • 指令寻址下一条欲执行指令指令地址
  • 数据寻址:确定本条指令操作数地址

指令寻址

指令寻址比较简单,它分为顺序寻址跳跃寻址两种

  • 顺序寻址可通过程序计数器PC+1,自动形成下一条指令的地址
  • 跳跃寻址通过转移类指令实现
    计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第16张图片

数据寻址

数据寻址实际上就是取操作数
计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第17张图片

  • 数据寻址方式种类较多,在指令字中设一字段来指明属于哪一种寻址方式寻址特征
  • 指令的地址码字段通常都不代表操作数的真实地址,故把它称为形式地址,记作A
  • 操作数的真实地址(寄存器的端口地址)称为有效地址,记作EA,它是由寻址方式和形式地址共同来确定的
  • 指令字长 = 存储字长 = 机器字长实际不一定成立,作以上约定。其中指令字长=存储字长使得访问一次内存,得到一条完整指令。

立即寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第18张图片

直接寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第19张图片

隐含寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第20张图片

间接寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第21张图片

寄存器寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第22张图片

寄存器间接寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第23张图片

基址寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第24张图片

变址寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第25张图片

比较基址寻址和变址寻址

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第26张图片

相对寻址(带例题详解)

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第27张图片
相对寻址一道题(带批注详解)
计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第28张图片

堆栈寻址(带例题详解)

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第29张图片
堆栈寻址一道题(带批注详解)
计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第30张图片


总结一下

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第31张图片


寻址方式相关题型⭐️⭐️

寻址方式的理解

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第32张图片

指令格式设计



计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第33张图片

RISC技术(了解)

RISC:精简指令系统计算机

主要特征
计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第34张图片

小结

划个重点

计算机组成原理 | 第七章:指令系统 | 寻址方式 | 指令格式设计_第35张图片


参考博客
机器字长、指令字长、存储字长

你可能感兴趣的:(计算机组成原理,寻址方式,指令格式设计,硬件架构)