
硬件4 指令系统.ppt
20页第四章 指令系统,本章要点 1.了解指令的格式与分类 2.了解指令的寻址方式 3. 了解CISC与RISC的主要特点指令系统在计算机软件构成中的位置,计算机系统中运行的软件有系统软件和应用软件两种 系统软件对整个计算机系统进行调度、管理、监视、服务, 为用户使用提供方便,扩大机器功能,提高机器使用效率 应用软件是用户针对某种领域实际应用需求而开发的软件 许多通用商品化的应用软件现已成为系统软件,如Word等 前述所有各种软件的设计基础就是计算机的指令系统名词解释:,指令:命令计算机直接进行某种基本操作的二进制代码 串,也叫机器语言代码 指令系统:一台计算机能直接理解与执行的全部指令的集合称为该机的指令系统 指令系统是进行计算机逻辑设计和编制程序的基本依据它直接说明了这台计算机的功能不同类型CPU的指令系统是不能混用与兼容的,但同一系列的CPU一般升级后指令都有扩充,并可兼容 目标程序:为解决某一实际问题而编制的有序的指令集合它们一般是由语言处理程序转换得到的,而并非是直接编写出来的 语言处理程序:即汇编、编译或解释等程序它们把BASIC等高级语言程序通过一定方式转换为目标程序。
4.1 指令的结构及其分类,4.1.1 指令的结构 1、典型的指令格式 一般由两部分组成: 操作码和操作数的地址码:,操作 码 OP——指明操作性质的命令码, 提供指令的操作控制信息 操作对象A——说明操作数存放的地址, 有时则就是操作数本身OP,2、指令格式的五种类型 ——根据地址码长度的不同而划分三地址指令,例: [A1]+[A2]→[A3],其中[A1]、[A2]为源地址,[A3]为目的地址,操作后源地址内容不变,仅被拷贝多地址指令:用于实现成批数据处理例:[A1]+[A2]→[A1],[A2]为源地址,[A1]目的地址,二地址指令,例如:递增,移位,取反,INC AX,NOT BX,一地址指令,例如:NOP 、HLT,也叫无操作数指令,零地址指令,4.1.2 指令的分类,一个指令系统常有几十、几百条指令(Intel 8086具有133条指令),但按功能可以划分为如下几大类: 1、数据传送指令 用以实现给寄存器或存储单元赋值,寄存器与寄存器之间、寄存器与内存单元之间等的数据传送数据能够从源地址被传送到目的地址,而源地址中数据不变——拷贝例:MOV AX,5 MOV EAX,12345678H MOV DS,AX,2、算术与逻辑运算指令,算术运算指令:一般包括定点、浮点的加、减、乘、除运算。
根据运算结果改变标志寄存器的状态位 助记符: ADD,ADC,SUB,SBB,INC,DEC,DIV,MUL,CMP,逻辑运算:一般包括逻辑与,逻辑或,逻辑非,逻辑异或等运算,是以二进制为单位按位进行运算 OR,AND,XOR,NOT等,3、移位指令,算术移位:左移时空位补0而符号位进标志位,右移时空位复制符号位,而移出位进标志位 逻辑移位:整体移位,空位补0,移出位进标志位 循环移位:有不带进位循环和带进位循环前者循环后的移出位进标志位,后者与标志位一起循环4、输入、输出指令,完成在中央处理器和外设之间进行数据交换 输入指令使数据由外设传送到处理机 ; 输出指令使数据由处理机传送到外设5、转移指令,无条件转移指令:强迫CPU运行程序地址转移至新地址开始执行程序 有条件转移指令:根据当前运算的结果进行逻辑判断,符合判断条件则转移到指令表明的新地址处执行程序,否则继续按原顺序执行原来的程序6、调用指令和返回指令,调用指令实现从一个程序转去执行子程序的操作; 返回指令则使CPU结束执行子程序而返回执行原程序7、字符串处理指令,用于各种文字编辑与排版处理 包括:字符串的传送、比较、查找、匹配以及字符串的抽取和字符串的替换等操作指令。
8、其它特殊指令,专用指令用来完成特殊的专门操作如:暂停、等待、空操作、位操作、以及开中断、关中断等等 特权指令分配和管理系统资源,防止非法用户对系统资源及其他用户程序的修改、打印以及删除等需要说明的是:计算机种类不同其指令系统包括数量与功能有所不同,用其编程时务必参照相应的指令系统手册4.2 指令的寻址方式,寻址方式:指令中如何提供操作数或操作数地址不同类型计算机的寻址方式有所差别,但大多可以归结为立即寻址、直接寻址、间接寻址、变址寻址以及相对寻址等几种寻址方式,或者这几种方式的组合与变形指令的地址码部分就是指令的操作数 优点:取指同时取得操作数,提高指令的运行速度 缺点:操作数的长度受指令长度的影响,且不便修改适合操作数固定的情况 例: MOV AX,1AH的结果: ( AX )← 1AH,一、立即寻址,二、直接寻址,指令的地址码部分给出的就是操作数在存储器中的地址特点:简单直观,便于硬件实现,但操作数地址是指令的一部分,只能用 于访问固定的存储器单元例: MOV AX,[0110H],三、寄存器寻址,在指令的地址码部分给出某一寄存器的名称,而所需的操作数就在这个寄存器中 特点:数据传送快,计算机中多用。
例:MOV AX,BX ;BX为源操作数地址,AX为目的操作数地址,操作的结果为将BX中的数据传送(拷贝)到AX中四、寄存器间接寻址,在指令的地址码部分直接给出的既不是操作数也不是操作数的地址,而是操作数地址的地址优点:改变寄存器 Rn中的内容就可访问内存的不同地址修改十分方便 缺点:二次寻址速度慢 例:MOV AX,[BX],1、基址寻址方式,操作数的有效地址是一个基址寄存器的内容加上偏移量例:8086的基址寄存器为BX和BP mov AX,[BX+6] ;(AX) ←((BX)+6),2、变址寻址方式,操作数的有效地址是一个变址寄存器的内容加上偏移量基址寻址面向系统,解决程序的存储定位问题;变址寻址面向用户,用以访问字串和数组例: 8086的变址寄存器为SI和DI mov AX,[SI+100H] ;(AX) ←((SI)+100H),3、基址变址寻址,例:mov AX,[BP+SI+6] ;(AX) ←((BP)+(SI)+6),操作数的有效地址是基址寄存器,变址寄存器和偏移量三者相加产生五、相对寻址,有效地址是指令中地址码部分给出的形式地址(偏移量Disp)与程序计数器PC的内容之和。
即有效地址是以当前PC的内容为基准浮动的,浮动的距离就是偏移量 偏移量可正可负,通常用补码表示 相对寻址方式主要应用于相对转移指令由于目的地址随PC变化不固定,所以非常适用于浮动程序的装配与运行4.3 精简指令系统计算机(RISC)简介,一、RISC由来 计算机的不断升级扩充,同时又兼容过去产品使指令系统日趋复杂,形成了“复杂指令系统计算机(CISC)” 复杂指令系统增加硬件复杂性,降低机器运行速度 经实际分析发现: 1、各种指令使用频率相差悬殊80%指令使用很少 2、指令系统的复杂性带来系统结构的复杂性,增加了设计时间和售价,也增加了VLSI设计负担,不利于微机向高档机器发展 3、复杂指令操作复杂、运行速度慢 由此提出“精简指令系统计算机(RISC)”的概念RISC不是简单地简化指令系统,而是通过简化指令使计算机的结构更加简单合理,从而提高运算速度 1、仅选使用频率高的一些简单指令和很有用但不复杂的指令 2、指令长度固定,指令格式少,寻址方式少 3、只有取数、存数指令访问存储器,其余指令都在寄存器中进行,即限制内存访问 4、CPU中通用寄存器数量相当多 5、大部分指令都在一个机器周期内完成。
6、采用流水线组织 7、以硬布线逻辑为主,不用或少用微程序控制 8、特别重视编译工作,以简单有效的方式支持高级语言,减少程序执行时间二、RISC的特点,。












