文章目录
-
- 思维导图:
- 课程进度:
- 一、机器指令
-
- 1.指令的一般格式
- 2.指令字长
- 3.总结
- 二、操作数类型和操作类型
-
- 1.操作数类型
- 2.数据在存储器中存放方式
- 3.操作类型
- 三、寻址方式
-
- 1.指令寻址
- 2.数据寻址
- 四、指令格式举例
-
- 1.设计指令
- 2.指令格式举例
- 五、RISC技术
-
- 1.RISC的产生和发展
- 2.RISC的主要特征
- 3.CISC的主要特征
- 4.RISC和CISC的比较
欢迎到我个人博客查看本篇 https://sunmengxin.cn/CSCC/07-instruction-system/
思维导图:
课程进度:
一、机器指令
1.指令的一般格式
操作码
-
长度固定
用于指令字长较长的情况 , RISC;如 IBM 370 操作码 8 位
-
长度可变
地址码
-
四地址、三地址
-
二/一/零地址
2.指令字长
指令字长决定于:
- 操作码的长度
- 操作数地址的长度
- 操作数地址的个数
指令字长固定:
指令字长 = 存储字长
指令字长可变:
按字节的倍数变化
3.总结
1.当用一些硬件资源代替指令字中的地址码字段后
- 可扩大指令的寻址范围
- 可缩短指令字长
- 可减少访存次数
2.当指令的地址字段为寄存器时
- 三地址 OP R1, R2, R3
- 二地址 OP R1, R2
- 一地址 OP R1
指令执行阶段不访存
可缩短指令字长
二、操作数类型和操作类型
1.操作数类型
- 地址:无符号整数
- 数字:定点数、浮点数、十进制数
- 字符:ASCII
- 逻辑数:逻辑运算
2.数据在存储器中存放方式
参考存储器:大端模式和小端模式
从任意位置开始存储
从一个存储字的起始位置开始访问
边界对准方式——从地址的整数倍位置开始访问
对比
优点 | 缺点 | |
---|---|---|
任意位置 | 不浪费存储资源 | 除了访问一个字节之外,访问其它任何类型的数据,都可能花费两个存储周期的时间。读写控制比较复杂 |
起始位置 | 无论访问何种类型的数据,在一个周期内均可完成,读写控制简单 | 浪费了宝贵的存储资源 |
边界对准 | 数据存放的起始地址是数据长度的整数倍 | 本方案是前两个方案的折衷 |
3.操作类型
数据传送
算术逻辑操作
移位操作
算术移位 逻辑移位
循环移位(带进位和不带进位)
转移
-
无条件转移 JMP
-
条件转移
-
调用和返回
-
陷阱(Trap)与陷阱指令
意外事故的中断:
一般不提供给用户直接使用
在出现事故时,由 CPU 自动产生并执行(隐指令)
设置供用户使用的陷阱指令
如 8086 INT TYPE 软中断
提供给用户使用的陷阱指令,完成系统调用 -
输入输出
三、寻址方式
1.指令寻址
-
顺序 :
(PC) + 1 —— PC
-
跳跃 : 由转移指令指出
2.数据寻址
形式地址: 指令字中的地址
有效地址: 操作数的真实地址
约定 指令字长 = 存储字长 = 机器字长
1.立即寻址
2.直接寻址
3.隐含寻址
4.间接寻址
5.寄存器寻址
6.寄存器间接寻址
7.基址寻址
-
采用专用寄存器作基址寄存器
-
采用通用寄存器作基址寄存器
8.变址寻址
9.相对寻址
10.堆栈寻址
四、指令格式举例
1.设计指令
指令系统的 兼容性
其他因素
- 操作类型:包括指令个数及操作的难易程度
- 数据类型:确定哪些数据类型可参与操作
- 指令格式:
- 指令字长是否固定
- 操作码位数、是否采用扩展操作码技术,
- 地址码位数、地址个数、寻址方式类型
- 寻址方式:指令寻址、操作数寻址
- 寄存器个数:寄存器的多少直接影响指令的执行时间
2.指令格式举例
**Intel 8086 **
五、RISC技术
1.RISC的产生和发展
2.RISC的主要特征
3.CISC的主要特征
4.RISC和CISC的比较
注:本文章除思维导图,其他图片来源于课程PPT。
?您的赏识是我前进的动力!?(???ω???)??