跳转到内容

MIPS 汇编/MIPS 架构

来自维基教科书,开放的书籍,开放的世界

MIPS 历史

[编辑 | 编辑源代码]

MIPS 架构

[编辑 | 编辑源代码]

MIPS 是一种基于寄存器的架构,这意味着 CPU 使用寄存器来执行操作。 还存在其他类型的处理器,例如基于堆栈的处理器和基于累加器的处理器。

寄存器就像 RAM 一样是内存,只是寄存器比 RAM 小得多,并且速度快得多。 在 MIPS 中,CPU 只能对寄存器和特殊的立即值进行操作。

MIPS 处理器有 32 个通用寄存器,但其中一些是保留的。 然而,相当多的寄存器可供您使用。 例如,这些寄存器之一,即 *程序计数器*,包含要执行的下一条指令的内存地址。 当处理器执行指令时,程序计数器会递增,并获取下一个内存地址,执行,依此类推。

为什么选择 MIPS?

[编辑 | 编辑源代码]

MIPS 架构是 精简指令集计算机 (RISC)。 作为 RISC 架构,它不会将单个指令分配给复杂的、逻辑密集型任务。 这与 复杂指令集计算机 (CISC) 架构(如 DEC VAX)形成对比,后者有一个指令用于 多项式乘法,另一个指令用于执行 循环冗余校验 (CRC),这通常用于 TCP/IP。 当时,人们认为在硬件中实现这些指令将提高使用它们的程序的性能,即使它会导致高度复杂的处理器设计。 MIPS 和其他 RISC 架构基于这样一种理念,即除其他事项外,通过仅实现最常见指令的小核心(只有几十条指令,而不是几百条指令),架构师可以简化设计并加快大多数常见指令的速度,以至于将复杂程序实现为多条指令的成本将被隐藏。

关于 RISC 与 CISC 的争论已经写了很多,[1][2][3][4] 因此,为了我们的目的,我们将关注 MIPS 设计选择的结果。

  • 所有 MIPS 指令都是 32 位长。
    • 这使得访问和解码指令的硬件变得简单直观。
    • 这也意味着指令的数量是有限的。
  • 所有 MIPS 指令都属于三种指令格式之一。 这使得人类和硬件都很容易解码指令。 由于指令格式是固定的,因此学习大多数 MIPS 指令集并不需要太多工作。

MIPS 设计理念

[编辑 | 编辑源代码]
  • 简单有利于规则
  • 好的设计需要好的妥协
  • 越小越快
  • 使常见任务变得更快
  1. John Mashey 关于 RISC/CISC
  2. RISC 与 CISC
  3. Patterson, D. A. & Ditzel, D. R. (1980). 精简指令集计算机的理由。 SIGARCH 计算机架构新闻, 8(6), 25-33。
  4. Clark, D. W. & Strecker W. D. (1980). 对 Patterson 和 Ditzel 的“精简指令集计算机的理由”的评论。 SIGARCH 计算机架构新闻, 8(6), 34-38。
华夏公益教科书