计算机系统结构 计算机指令集结构
2016-05-05 23:57
330 查看
一、寻址方式
二、指令集结构的功能设计
2.1 CISC指令集结构的功能设计
1.面向目标程序增强指令功能
2.面向高级语言的优化实现来改进指令集
3.面向操作系统的优化实现改进指令集
2.2 RISC指令集结构的功能设计
设计RISC机器一般应当遵守以下规则
三、MIPS指令集结构
3.1 MIPS的寄存器
3.2 MIPS的数据表示
3.3 MIPS的数据寻址方式
3.4 MIPS的指令格式
(1)I类指令
(2)R类指令
(3)J类指令
3.5 MIPS的操作
3.6 MIPS的控制指令
二、指令集结构的功能设计
对于指令集的基本要求是:完整性、规整性、高效性和兼容性。
2.1 CISC指令集结构的功能设计
1.面向目标程序增强指令功能
1)增强运算型指令的功能 2)增强数据传送指令的功能 3)增强程序控制指令的功能
2.面向高级语言的优化实现来改进指令集
1)增强对高级语言和编译器的支持 2)高级语言机器
3.面向操作系统的优化实现改进指令集
1)处理机工作状态和访问方式的切换 2)进程的管理和切换 3)存储管理和信息保护 4)进程的同步与互斥,信号灯的管理
2.2 RISC指令集结构的功能设计
设计RISC机器一般应当遵守以下规则
1)指令条数少而简单。确定指令集时,只选取使用频率很高的指令,在此基础上补充一些最有用的指令。 2)采用简单而又统一的指令格式,并减少寻址方式。指令字长都为32位或64位。 3)指令的执行在单个机器周期内完成。 4)只有load和store指令才能访问存储器,其他指令的操作都是在寄存器之间进行。即采用load-store结构。 5)大多数指令都采用硬逻辑来实现。 6)强化优化编译器的作用,为高级语言程序生成优化的代码。 7)充分利用流水技术来提高性能。
三、MIPS指令集结构
3.1 MIPS的寄存器
MIPS64有32个64位通用寄存器(GPR):R0,R1,...,R31,它们有时被称为整数寄存器,R0的值永远是0. 32个64位浮点数寄存器(FPR):F1,F2,...,F31.
3.2 MIPS的数据表示
MIPS的数据表示有: (1)整数:字节(8位)、半字(16位)、字(32位)、双字(64位) (2)浮点数:单精度浮点数(32位)、双精度浮点数(64位)
3.3 MIPS的数据寻址方式
MIPS的数据寻址只有立即数寻址和偏移量寻址。
3.4 MIPS的指令格式
(1)I类指令
这类指令包括所有的load和store指令、立即数指令、分支指令、寄存器跳转指令、寄存器链接跳转指令。 1)load指令:访问有效地址为Regs[rs] + immediate,从存储器取来的数据放入寄存器rt。 2)store指令:访问有效地址为Regs[rs] + immediate,要存入存储器的数据放在寄存器rt中。 3)立即数指令:Regs[rt] <- Regs[rs] op immediate。 4)分支指令:转移目标地址为Regs[rs] + immediate,rt无用。 5)寄存器跳转、寄存器跳转并链接:转移目标地址为Regs[rs]。
(2)R类指令
包括ALU指令、专用寄存器读/写指令、move指令等 ALU指令:Regs[rd] <- Regs[rs] func Regs[rt] (func为具体的运算操作编码)
(3)J类指令
包括跳转指令、跳转并链接指令、自陷指令、异常返回指令。在这类指令中,指令字的低26位是偏移量,它与PC值相加形成跳转的地址。
3.5 MIPS的操作
MIPS指令可以分为4大类:load和store、ALU操作、分支与跳转、浮点操作。
3.6 MIPS的控制指令
(1)J name : 跳转 (2)JAL name : 跳转并链接 (3)JALR R3 : 寄存器跳转并链接 (4)JR R5 : 寄存器跳转 (5)BEQZ R4,name : 等于零时分支 (6)BNE R3,R4,name : 不相等时分支 (7)MOVZ R1,R2,R3 : 等于零时移动
相关文章推荐
- 计算机系统结构 计算机系统结构的基本概念
- apache配置文件:http.conf配置详解
- VC++6.0 通过HTTP方式获取网页 OpenURL
- [javaSE] 网络编程(TCP,UDP,Socket特点)
- Spring的构造请求类 SimpleClientHttpRequestFactory
- [javaSE] 网络编程(概述)
- BP神经网络的实例一则
- java socket 网络编程 超详细讲解
- 数据结构实验之链表四:有序链表的归并
- 安卓GridView异步加载网络图片
- Java 网络编程
- HTTP返回状态码总结
- 数据结构_线性表_链式存储_单链表 的基本操作
- 第十、十一周数据结构代码
- MTK Http Socket GPRS以及解析器和下载器概述
- 数据结构实验之链表三:链表的逆置
- 机器学习之神经网络bp算法推导
- SDUT 3401 数据结构实验之排序四:寻找大富翁 堆排序
- HTTPS
- 网络仿真工具TOTEM之——Worst Case Analysis