【计算机组成-指令系统体系结构】

发布时间:2024年01月11日

课程链接:北京大学陆俊林老师的计算机组成原理课

1. 设计自己的计算机

一个简单的计算机指令系统
  • 运算类指令:ADD R,M;功能:将R的内容和M中的内容相加后存入R
  • 传送类指令:LOAD R,M;功能:将M中的内容装入R
  • 传送类指令:STORE M,R;功能:将R中的内容存入M
  • 转移类指令:JMP L;功能:无条件转向L处
  • *注:M和L为存储器地址,R为寄存器编号
一个简单的计算机的指令格式
  • 每条指令等长,均为2个字节
  • 第一个字节的高4位是操作码(LOAD:0000;ADD:0001;STORE:0010;JMP:0011;*注:假设仅4条指令)
  • 第一个字节的低4位是寄存器号(R0~R3:0000~0011;*注:假设仅4个寄存器)
  • 第二个字节是存储单元地址(最大可使用256个字节的存储器)
第一个字节第二个字节
xxxx xxxxxxxx xxxx
操作码、寄存器号存储单元地址

正确的指令示例(ADD R2,[9]):

第一个字节第二个字节
0001 00100000 1001

错误的指令示例(操作码未定义,寄存器号未定义):

第一个字节第二个字节
0101 00100000 1001

在这里插入图片描述
在这里插入图片描述
*注:无论多高级的语言,都得先转化成机器语言(中间一列,一系列的二进制代码),程序才可以运行
在这里插入图片描述

2. x86体系结构

在这里插入图片描述
在这里插入图片描述

从16位到64位:x86体系结构的演变
  • 寄存器模型
    在这里插入图片描述
  • 存储器寻址:太复杂听不懂了呜呜呜,得求教uu们惹!

3. x86指令简介

指令的主要类别
  • 传送类指令:例如:从存储器到通用寄存器,从通用寄存器到I/O接口等
  • 运算类指令:例如:加、减、乘、除、与、或、非等
  • 转移类指令:无条件转移、条件转移、过程调用等
  • 控制类指令:暂停处理器、清除标记位等
  • 移位指令

4. 复杂的x86指令举例

复杂指令举例
  • 串操作指令
  • 循环控制指令
  • 查表指令
  • 十进制调整指令

5. MIPS体系结构

MIPS的设计指导思想
  • 全称 Microprocessor without Interlocked Piped Stages
  • 主要关注点:减少指令的类型,降低指令复杂度
  • 基本原则:A simpler CPU is a faster CPU
MIPS指令的主要特点
  • 固定的指令长度:32-bit,简化了从存储器取指令
  • 简单的寻址模式:简化了从存储器取操作数
  • 指令数量减少,指令功能简单:简化了指令的执行过程,一条指令只完成一个操作
  • 只有LOAD和STORE指令可以访问存储器:例如,不支持x86指令的 ADD AX, [3000H] 操作
  • 需要优秀的编译器支持

6. MIPS指令简介

MIPS指令的基本格式
  • R:Register,寄存器
  • I:Immediate,立即数
  • J:Jump,无条件转移
    在这里插入图片描述
    在这里插入图片描述
文章来源:https://blog.csdn.net/HuangXinyue1017/article/details/135522474
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。