一、指令的定义

指令是指示计算机执行某种操作的命令,是计算机运行的最小功能单位。一台计算机的所有指令的集合构成该机的指令系统,也称指令集。

指令的长度是指一条指令中所包含的二进制代码的位数,因为主存一般是按字节编址的,所以指令的长度一般为字节的整数倍

指令长度与机器字长没有固定的关系,它可以等于机器字长,也可以大于或小于机器字长。根据指令长度与机器长度的大小关系,可以把指令分为

  • 单字长指令
  • 半字长指令
  • 双字长指令

根据指令的长度是否固定,可以把指令分为

  • 定长指令字结构
  • 变长指令字结构

根据操作码的长度是否固定,可以把指令分为

  • 定长操作码:n位,可以包含2^n条指令
  • 扩展操作码:操作码长度可变

二、指令的基本格式

(1)指令分类

(2)示例

为了增加指令操作数的直接寻址范围,我们可以对四地址指令进行优化,将下一个指令的地址按顺序存放在程序计数器 PC 中


三、定常操作码指令格式

定常操作码指令在指令字的最高位部分分配固定的若干位(定长)表示操作码。一般用 n 位操作码字段的指令系统最大能表示 2^n 条指令

优点:定长操作码对于简化计算机硬件设计,提高指令译码和识别速度很有利;
缺点:指令数量增加时会占用更多固定位,留给表示操作数地址的位数受限。

四、扩展操作码指令格式

全部指令的操作码字段的位数不固定,且分散地放在指令字的不同位置。在设计扩展操作码指令格式时,必须注意以下两点:

  1. 不允许短码是长码的前缀,即短操作码不能与长操作码的前面部分的代码相同,否则无法区分不同长度的操作码。
  2. 各指令的操作码一定不能重复。

优点:在指令字长有限的前提下仍保持比较丰富的指令种类
缺点:增加了指令译码和分析的难度,使控制器的设计复杂化。

通常情况下,对使用频率较高的指令,分配较短的操作码;对使用频率较低的指令,分配较长的操作码,从而尽可能减少指令译码和分析的时间。

示例1:

4 位基本操作码如果全部用于三地址指令,则有16条。但至少需要将1111留作扩展操作码来用,即三地址指令为15条。

1111 1111留作扩展操作码来用,即二地址指令为15条。

1111 1111 1111留作扩展操作码来用,即一地址指令为15条。

零地址指令为16条

故扩展操作码指令格式共可以表示 15+15+15+16=61 条指令

示例2:

指令系统 —— 指令格式相关推荐

  1. 计算机组成原理:指令系统指令格式与寻址方式

    目录 指令格式 寻址方式 指令格式 一.指令的一般格式 指令字:二进制的形式,由操作码和地址码构成 操作码:操作特性与功能 地址码:指定参与操做的操作数的地址 二.操作码 操作码字段的位数取决于指令系 ...

  2. 指令系统——指令格式

    文章目录 现代计算机的结构 指令格式 指令的定义 指令格式 零地址指令 一地址指令 二.三地址指令 四地址指令 地址码的位数有什么影响? 分类 指令-按地址码数目分类 指令-按指令长度分类 指令-按操 ...

  3. 指令系统——指令格式(详解)

    一.总览 二.指令的定义 指令(又称机器指令): 是指示计算机执行某种操作的命令,是计算机运行的最小功能单位. 一台计算机的所有指令的集合构成该机的指令系统,也称为指令集. 注:一台计算机只能执行自己 ...

  4. 【Computer Organization笔记09】x86 / Pentium 指令系统,MIPS 指令系统,数据通路的设计,CPU设计思路

    本次笔记内容: P17 计算机组成原理(17) P18 计算机组成原理(18) 本节课对应幻灯片: 组成原理21 Intructionsx86.pptx 组成原理22 MIPS.pptx(老视频基本没 ...

  5. 实验三 16位机指令系统实验报告

    实验三 16位机指令系统实验报告 一.实验目的 1.学习和了解实验平台十六位机监控命令的用法: 2.学习和了解实验平台十六位机的指令系统: 3.学习简单的实验平台十六位机汇编程序设计 实验内容 1.使 ...

  6. 【大学课程】计算机组成原理知识点

    计算机系统概论 层次机构 性能指标 数据的表示和运算 海明码 数据的储存 定点数的表示与运算 IEEE 754标准 各种精度数据的转换 浮点数运算 储存系统的层次结构 半导体随机存储器 主储存器与CP ...

  7. 微机原理与接口技术总结

    1 论述存储器芯片与CPU连接时片选信号的三种产生方式,并分析各种方式的特点及特定方式下存储器首末地址.其中全译码法需要详细论述,并举例说明(10分). 答:片选可以理解成选片,很多芯片挂在总线上的时 ...

  8. 计算机组成原理:VHDL设计微程序控制器(代码通俗易懂)

    一.实验题目 微程序控制器的设计与实现 二.实验目的 理解微程序控制器的控制原理. 进一步掌握指令流程和功能. 了解掌握微程序控制器的设计思路和方法. 三.实验要求 给出指令系统: 确定总体结构: 在 ...

  9. 【考研408】计算机与组成原理笔记

    文章目录 计算机系统概述 计算机系统层次结构 计算机硬件的基本组成 计算机软件的分类 计算机的工作过程 计算机系统的多级层次结构 课后习题 计算机的性能指标 计算机的主要性能指标 几个专业术语 课后习 ...

最新文章

  1. input禁止后怎么实现复制功能_(变强、变秃)Java从零开始之JQuery购物车功能实操...
  2. leetcode算法题--两句话中的不常见单词
  3. 2009-08-19股市大跌分析(转载)
  4. 点击按钮创建一个表格 点击按钮创建一个表格 权限选择 元素的value属性操作
  5. Golang 规则引擎原理及实战
  6. BCP timeout prevention - 每秒刷新一次 Fiori
  7. Missing binding node_modules/node-sass/vendor/darwin-x64-72/binding.node
  8. 使用@Order调整配置类加载顺序
  9. win7宽带已连接但是有感叹号无法上网的解决方法
  10. 父组件更新prop_如何在ReactJS中更新组件的prop —哦,是的,有可能
  11. Gartner:2020年数据与分析领域的十大技术趋势
  12. 將字串轉換為日期型數據的例子
  13. Java 线程池学习
  14. Kibana将语言设置为中文
  15. cad尺寸标注快捷键_CAD中还能这样快速标注尺寸?怪不得同事天天准时下班
  16. CommandArgument 与 CommandName 属性
  17. php将一维数组转换成二维数组
  18. 5G和MEC在工业互联网中的应用探讨
  19. 【Android】线上自助点餐系统
  20. JS实现文件下载(适应多种浏览器)

热门文章

  1. 4026.【函数】【测试】计算因子k的数量
  2. c++中二维数组与二维向量的长度
  3. python--socket(套接字/插口)
  4. SpringBoot 整合Activiti(二)——流程审批完整示例
  5. PXE系列之一:PXE环境搭建
  6. 复杂网络基础概念总结
  7. 嵌入式Linux从入门到精通之第八节:GTK+详解
  8. .obj文件格式与.mtl文件格式(转)
  9. 博客设计展示:25个优秀博客设计
  10. 2017年总结(补全)