指令的基本概念
指令
- [定义] 计算机能直接识别、执行的操作命令(机器指令)
- 计算机的程序是由一系列的指令组成的,指令就是要计算机执行某种操作的命令
- 冯诺依曼结构计算机 "程序控制" 原理实现的载体 // 程序控制的本质就是指令的执行
指令系统(指令集)
- [定义] 一台计算机中所有机器指令的集合
- 它是表征一台计算机性能的重要因素,其格式与功能不仅直接影响到机器的硬件结构,也直接影响到系统软件,影响到机器的适用范围
- 一个完善的指令系统应满足如下 4 方面的要求
- 【完备性】用汇编语言编写各种程序时,指令系统直接提供的指令足够使用,而不必用软件来实现
- 【有效性】利用该指令系统所编写的程序能够 高效率(程序占据存储空间小、执行速度快) 的运行
- 【规整性】包括指令系统的对称性、匀齐性、指令格式和数据格式的一致性
- 【兼容性】系列机各机种之间具有相同的基本结构和共同的基本指令集,因而指令系统是兼容的,即各机种上基本软件可以通用
- 系列机
- 同一公司不同时期生产,基本系统结构和指令系统相同的计算机
- 如IBM,PDP-11,VAX-11,Intel-x86
- 兼容机
- 不同公司生产,基本系统结构和指令系统相同的计算机
- 如IBM兼容机
指令字长
- [定义] 指令中包含的二进制位数
- 机器字长:计算机能直接处理的二进制数据的位数,它决定了计算机的运算精度
- 与机器字长相比:单字长、双字长、半字长等长度指令
- 多字长指令
- 解决寻址较大存储空间的问题 // 提供足够的地址位
- 必须两次或多次访问内存以取出一整条指令,影响速度,占用空间大
- 等长/变长指令字结构
- 等长指令: 指令字长度固定
- 变长指令: 指令字长度根据需要可变
指令的分类
指令格式
目前在计算机系统结构中,通常一个指令系统中指令字的长度和指令中的地址结构并不是单一的,往往采用多种格式混合使用,这样可以增强指令的功能
例题
- 设某机主存容量为 16MB,机器字长 16 位。若最小寻址单位为字节(按字节编址),其地址码是多少位?若最小寻址单位为字(按字编址),其地址码又是多少位?
- 若按字节编址,地址码应为 24 位 // 16MB = 2^4 * 2^20 * 8b = 2^24 * 8b
- 若按字编址,地址码应为 23 位 // 16MB = 2^23 * 16b
- 设某机为 32 位的 16MB 主存。若按字编址,其地址码为多少位?若按字节编址,其地址码又为多少位?
- 若按字编址,地址码应为 22 位 // 16MB = 2^22 * 32b
- 若按字节编址,地址码应为 24 位 // 16MB = 2^24 * 8b