《系统结构与分析》第十章:指令集:特征和功能

上传人:lizhe****0001 文档编号:55420054 上传时间:2018-09-29 格式:PPT 页数:41 大小:1.15MB
返回 下载 相关 举报
《系统结构与分析》第十章:指令集:特征和功能_第1页
第1页 / 共41页
《系统结构与分析》第十章:指令集:特征和功能_第2页
第2页 / 共41页
《系统结构与分析》第十章:指令集:特征和功能_第3页
第3页 / 共41页
《系统结构与分析》第十章:指令集:特征和功能_第4页
第4页 / 共41页
《系统结构与分析》第十章:指令集:特征和功能_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《《系统结构与分析》第十章:指令集:特征和功能》由会员分享,可在线阅读,更多相关《《系统结构与分析》第十章:指令集:特征和功能(41页珍藏版)》请在金锄头文库上搜索。

1、第十章 指令集:特征和功能,10.1 机器指令特征,何谓指令集 CPU能够理解的所有指令的集合 机器语言,二机制码 为方便阅读和交流,通常采用汇编语言的形式,操作码 源操作引用 目的操作引用 下一条指令引用 在跳转、循环指令中指明下一步执行哪一句,机器指令要素,指令周期状态图,在机器内部,指令用一个唯一的位串表示 为方便阅读,用符号(助记符)来代替位串 e.g. ADD, SUB, MOV,指令表示,简单的指令格式,数据处理:算数和逻辑指令 ADD,SUB,AND,OR,XOR,etc 数据存储:存储器命令 MOV,XCHG,XLAT,etc 数据传送:I/O指令 IN,OUT 控制 JMP,

2、LOOP,HLT,指令类型,3 地址指令 操作数1, 操作数2, 结果 a = b + c; 可能有第4个操作数 下一条指令的地址 (通常隐含在程序计数器里) 3地址指令不普遍,因为它需要较长的指令格式,地址数目(a),2 地址指令 有一个地址既是操作数又是操作结果 a += b 缩短了指令长度 有时需要一些额外的工作,例如临时存储某些运算结果,地址数目(b),单地址指令 第二个地址是隐含的 通常是寄存器 (累加器) eg. DIV BX ;隐含了AX寄存器MUL CX ;隐含了AX寄存器 常见于早期的CPU,地址数目(c),0 地址指令 所有地址均是隐含的 通常与堆栈有关 e.g. PUSH

3、F ;隐含了标志寄存器POPF ;隐含了标志寄存器,地址数目(d),地址数目多时 指令更复杂 需要更多的寄存器 程序需要的指令数目较少 地址数目少时 指令较简单 程序需要的指令数目较多 指令的读取和执行都很快,地址数目应该是多少,操作指令表 应提供多少和什么样的操作 操作是何等复杂 数据类型 所操作的数据的类型 指令格式 指令的长度 地址的数目,指令集设计要素(1),寄存器 CPU中可使用的寄存器的数目 哪种操作在哪个寄存器上完成 寻址方式 RISC v CISC,指令集设计要素(2),内存单元地址 数值 整数/浮点数 字符 ASCII etc. 逻辑数据 位或标志,10.2 操作数类型,8

4、bit Byte 16 bit word 32 bit double word 64 bit quad word 以 Byte 为单位进行寻址 存放数据时,低字节放在低地址,高字节放在高地址,10.3.1 Pentium 数据类型,常规 Byte,Word,DWord,QWord 整数 有符号二进制数,补码表示 序数 无符号整数 未压缩的BCD码 1个字节表示1位10进制数 压缩的BCD码 4位2进制数表示1位10进制数 近指针 段内的32位地址偏移量 位串 连续的位序列 字符串 浮点数(IEEE 标准),Pentium数据类型,Pentium 浮点数类型-整数(1),Pentium 浮点数类

5、型-整数(2),Pentium 浮点数类型-浮点数,8 (字节), 16 (半字), 32 (字) , 64 (双字) 既可以使用低位地地址格式,又可以使用高位低地址格式 定点处理器能识别如下数据类型: 无符号字节, 无符号半字, 有符号半字, 无符号字, 有符号字, 无符号双字, 字符串 (长度128 字节) 浮点数 IEEE 754 单精度或双精度,10.3.2 Power PC 数据类型,数据传送 算数运算 逻辑运算 转换 I/O指令 系统控制 控制传递,10.4 操作类型,需要指定: 源操作位置 目的操作位置 传送数据个数 不同的传送可能有不同的指令 e.g. IBM 370 或同一指

6、令有不同的操作数 e.g. VAX,数据传送类指令(P273表10.3),Add, Subtract, Multiply, Divide 指令 为有符号整数提供 有时也为浮点数提供 可能包括 Increment (a+) Decrement (a-) Negate (-a) Absolute (|a|),算数运算类指令(P273表10.3),移位指令 : 平移,移位指令 : 循环移位,位操作 AND, OR, NOT,逻辑运算类指令,将字的内容从一种形式转换为另一种形式 E.g. Binary to Decimal CBW:8086,字节转换为字 CWD:8086,字转换为双字,转换类指令,不

7、同的I/O方式有不同的指令 存储映射编程控制的I/O 可以使用与存储器一样的指令 独立编程控制的I/O 使用专用的I/O指令 可能被一个独立的控制器控制 (DMA),I/O指令,通常是特权指令 仅当 CPU 正处于某种特权状态时才使用 一般都是保留给操作系统使用,系统控制类指令,转移指令 e.g. 若结果为0转移到 x 跳步指令 e.g. 增量,并且若为0则跳过下一条指令 过程调用指令 c.f. 中断调用或子程序调用,控制传递类指令,子程序的嵌套调用,堆栈的使用,P284,表10.8 Intel 指令集基本上是向下兼容的 个别低版本CPU的指令被淘汰,10.5.1 Pentium操作类型,Ca

8、ll,Enter,Leave,Return Call 指令: 1、将当前指令指针值(下一条将要执行的语句的地址)压入堆栈; 2、将子程序的入口地址放入指令指针进行执行 Return 指令: 从堆栈中弹出下一条指令的地址放入指令指针,Pentium 调用/返回指令,特权指令,仅供操作系统使用 允许局部或全局段表被装入或读取,并可检查和更改段的优先级别,Pentium 存储管理指令,标志位 CF:进位标志 AF:辅助进位标志 PF:奇偶标志 ZF:0标志位 SF:符号标志位 OF:溢出标志位 通常用在转移和循环语句 JZ/JNZ,JP/JNP JL/JNL,JLE,JGE,JG/JNG,Penti

9、um 条件代码,MMX 是一组用于多媒体任务的优选指令,共57条,1996年Intel开始引入 Pentium 产品系列 多媒体数据的特点: 数据元素小,通常为8位 数据数量大,通常为向量(音频)或矩阵(图像) MMX 针对多媒体数据的处理方式 以 SIMD(单指令多数据) 的样式处理数据,可较好完成向量的加、乘运算(向量最常见的运算) 定义 3 种新的数据类型,方便批处理短数据,Pentium MMX 指令,10.5.2 Power PC 操作类型,P291,表10.12 装入/存储指令 只有装入(Load)和存储(Store)指令能访问存储器 算术和逻辑指令只能在寄存器上完成 这是 RISC 设计的一个特征,当存储的数据多于一个字节时,这些数据在主存中的组织方式(2种) 1、高位放高地址,地位放低地址 2、高位放低地址,低位放高地址,补充:字节逻辑,Pentium (80x86), VAX, 高位放高地址 IBM 370, Moterola 680x0 (Mac), 多数 RISC CPU,高位放低地址 Internet ,高位放低地址,常用的字节逻辑,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号