信息表示-指令系统(复习).ppt

上传人:牧羊曲112 文档编号:5230686 上传时间:2023-06-16 格式:PPT 页数:44 大小:409KB
返回 下载 相关 举报
信息表示-指令系统(复习).ppt_第1页
第1页 / 共44页
信息表示-指令系统(复习).ppt_第2页
第2页 / 共44页
信息表示-指令系统(复习).ppt_第3页
第3页 / 共44页
信息表示-指令系统(复习).ppt_第4页
第4页 / 共44页
信息表示-指令系统(复习).ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《信息表示-指令系统(复习).ppt》由会员分享,可在线阅读,更多相关《信息表示-指令系统(复习).ppt(44页珍藏版)》请在三一办公上搜索。

1、本节习题内容,重点掌握和了解 指令格式寻址方式,2 指令格式,指令格式 操作码(OP):根据编码不同,区分不同操作的性质及功能。地址码:指明操作数的地址,特殊情况下也可能直接给出操作数本身。显式地址:在指令中直接给出隐式地址:用隐含方式给出,操作码,操作码字段的位数取决于计算机指令系统的规模。假设一台计算机系统有m条指令,指令中操作码的位数为N位,则m=log2m例:指令系统有8条指令,则操作码需3位;有32条指令,需要5位操作码。操作码的编码方式定长编码操作码的位数和位置固定。变长编码操作码的位数不固定,位置分散。,定长编码,操作码的位数和位置固定。有利于简化操作码译码器的设计。常用于大、中

2、型机中。例:IBM370系统(字长32位),操作码长度固定均为8位,共可表示256种不同的指令。,变长编码,操作码的位数不固定,位置分散。可充分利用指令字长度,尽可能用有限的指令字长度来表示更多的指令,或在更大的地址空间中寻址。常用于小、微型机中。例:PDP11(字长16位),等长指令扩展操作码法,指令字长度一定时,地址位多,操作码位少;操作码位多,地址位少。例某机指令字长度16位,采用扩展操作码法,设计三地址指令15条,二地址指令15条,单地址指令15条,零地址指令16条。,0000.1110(1111)OP=8位1111 0000.1111 1110(1111 1111)OP=12位111

3、1 1111 0000.1111 1111 1110(1111 1111 1111)OP=16位1111 1111 1111 0000.1111 1111 1111 1111,补,3 指令和数据的寻址方式,编址技术:对寄存器、内存储器和输入输出设备等编排地址便于访问。编址单位 字编址以字为单位进行编址,编址单位与访问单位相一致。简单,但不实用。字节编址以字节为单位,比较普遍,存在着地址的浪费。例:字长32位,以字为单位进行读写时,地址浪费3/4。位编址以二进制位为单位进行编址,地址信息浪费更大,例题一、问一个具有64个单元,每个单元由8位组成的存储器,按字节编址需要多少条地址线(地址码需要几位

4、)?如果:存储器增至1K(1024)个单元的需要多少条地址线(地址码需要几位)?,寻址,编址:,8bits,主存储器,000000,000001,111111,寻址方式,1、指令寻址方式:计算下一条要执行的指令地址的方法顺序寻址方式程序计数器PC保存下一条指令的地址。PC每次增加一个指令间隔,指向下一条要执行的指令。顺序执行程序。跳跃寻址方式下一条指令的地址由跳转指令给出。PC内容由跳转指令赋值,转为目的地址。程序转移、循环和转子等。2、数据寻址方式:确定指令中操作数地址的方法,操作数寻址方式,操作数寻址方式:寻找指令中操作数所在地址的方式。形式地址指令中给出的地址,这个地址有时不能直接访存。

5、有效地址(EA)能够直接访存的地址。操作数的地址分类运算器中的通用寄存器编号输入/输出设备的端口地址内存单元的地址,操作数寻址方式,隐含寻址操作数地址在指令中隐含给出。IMUL BL;ALBLAX立即寻址:操作数在指令中直接给出。取指令同时取出操作数,不必再次访存,提高了指令的执行速度。立即数固定,不能修改。受指令字长度限制,立即数位数较小(占用位数少)适用于给某一寄存器或内存单元赋初值。MOV AX,0300H;0300HAX,操作数寻址方式,直接寻址:操作数的地址在指令中直接给出。例:MOV AL,5718H;若5718H=3,则3 AL简单直观,便于硬件实现但内存容量大时,地址码长度变长

6、。常用于读写内存的指令,操作数寻址方式,间接寻址:地址码字段给出的是操作数地址的地址。通常在指令中设置直接/间接寻址标志位I(或),当I=1时,间接寻址。,操作数寻址方式,间接寻址:地址码字段给出的是操作数地址的地址。通常在指令中设置直接/间接寻址标志位I(或),当I=1时,间接寻址。特点扩大了寻址范围可以实现指针型数据但延长了取操作数的速度,操作数寻址方式,寄存器寻址指令地址码字段给出的是CPU内通用寄存器的编号(地址)所需的操作数就在这一寄存器中。寄存器操作速度比内存快寄存器少,编址短,缩短了指令长度,操作数寻址方式,寄存器间接寻址寄存器中存放的是操作数在内存中的地址。只须一次访存。例:i

7、=5,使用R5寄存器,若R5中的内容为 7寄存器寻址:操作数=7寄存器间接寻址:操作数=(7#)=13,操作数寻址方式,相对寻址:有效地址EA由程序计数器 PC 的内容和指令中的地址码相加得到。例:D=48H(PC)=5600H 有效地址EA=5648H主要用于转移指令,对浮动程序很有用。位移量可正可负,通常用补码表示。,操作数寻址方式,基址寻址:有效地址由基址寄存器Rb的内容和指令中的位移量D相加得到。例:D=18H,BS=5700H 有效地址EA=5718H主要用于为程序或数据分配存储区,对多道程序或浮动程序很有用,解决了程序在存储器中的定位和扩大寻址空间等问题。大型机中,基址寄存器只能由

8、特权指令来管理,用户指令无权操作和修改。,操作数寻址方式,变址寻址:有效地址由变址寄存器Rx的内容和指令中的地址码相加得到。例:A=18H,x=5,(Rx)=5700H 有效地址EA=5718H主要用于对数组元素和字符串进行处理。,一般的系统都不再区分变址和基址了,成原理中的变址和基址的由来和计算机硬件技术的发展,特别是电子工艺的发展比较密切,由于计算机硬件制造成本的改变,目前,一般的系统都不再区分变址和基址了把两种情况讲清楚就可以了,即1、地址码分两部分2、其中的一个部分地址可以访问整个主存空间的任何一个单元,其第二个地址部分,可以在其一所确定的单元地址的基础之上做局部的变换。同时区分两种地

9、址码的形式:1、可以访问整个主存空间的任何一个单元的地址部分在指令中用寄存器给出的,这个寄存器称为基址寄存器记为Rb,此时,局部的变换范围用偏移量D表示,有效地址为Rb+D,称之为基址寻址方式。2、可以访问整个主存空间的任何一个单元的地址部分在指令中用立即数D给出的,而在D所确定的单元地址的基础之上做局部的变换的地址部分用寄存器表示的,这个寄存器称为变址寄存器记为Rx,有效地址为D+Rx,称之为变址寻址方式。3、虽然两种寻址方式形式相似,但要注意的是字母D,的两种说法(偏移量和形式地址),操作数寻址方式,页面寻址地址空间分页并编号页面号页内各单元编号页内地址有效地址=页面号/页内地址无须计算,

10、寻址迅速。三种形式基页寻址 EA=0/页内地址当前页寻址 EA=PCH/页内地址页寄存器寻址 EA=页面号/页内地址,各种寻址方式比较,间接的复杂,直接的简单间接慢,直接快间接的灵活,直接的死板内存慢,寄存器快,立即数更快内存地址长,寄存器地址短需要运算的慢,不需运算的快指令中的地址码一般包含寻址方式的信息,操作码op 地址A1 地址A2,地址A1,寻址方式例题,CPU完成哪一种操作所花时间最短?第一种指令所花时间最短。RR型指令,无需访问存储器。哪一种操作所花时间最长?第二种指令所花时间最长。RS型指令,需要访问存储器要进行有效地址的计算(基址或变址)第二种指令的执行时间有时会等于第三种指令

11、的执行时间吗?不等于。第三种指令虽然也访问存储器,但直接寻址,无需计算有效地址,速度快。,Page58 堆栈与堆栈操作,堆栈按“后进先出”(LIFO)或“先进后出”(FILO)顺序进行存取的存储区。堆栈用途中断时保存断点子程序调用时保存返回地址、状态标志、现场信息以及参数传递等。堆栈分类寄存器堆栈:用一组专门的寄存器串联构成的堆栈,也称为串联堆栈或硬堆栈。存储器堆栈:由程序员设置出一部分主存储器来作为堆栈,也称为软堆栈。,寄存器堆栈,由CPU的一组串联的寄存器构成堆栈,A,A,B,C,存储器堆栈,由程序员设置出一部分主存储器来作为堆栈 堆栈能够具有程序员要求的任意长度;栈底固定,栈顶浮动;需要

12、设置栈顶指针SP(本例中SP指向栈顶空单元)堆栈操作入栈:(A)MSP;(SP)-1SP出栈:(SP)+1 SP;(MSP)A,a,b,b,b,a,软硬堆栈的比较,硬堆栈寄存器堆栈容量有限堆栈的读出是破坏性的速度快 软堆栈存储器堆栈容量大可以在整个内存区浮动但每次堆栈操作均需访问内存,速度慢软硬结合的堆栈常规堆栈操作在硬堆栈,保证速度;大容量压栈时,与软堆栈衔接,保证数量。,2.3.3 指令的功能和类型,CPU的指令系统可以有上百条指令,按功能分类数据传送类指令一般数据传送、堆栈操作、数据交换算术、逻辑运算类指令算术运算、逻辑运算、移位程控类指令转移、子程序调用与返回输入/输出类指令字符串处理

13、类指令特权指令其他指令,CISC与RISC对比,CISC指令系统日益庞大和复杂。进一步增强原有指令的功能,设置更为复杂的新指令取代原先由软件子程序完成的功能。采用这种途径设计成的计算机复杂指令系统计算机(Complex Instruction Set Computer),简称CISC。RISC指令系统日益缩小和精简。减少指令种类和简化指令功能来降低硬件设计的复杂度,提高指令的执行速度。采用这种途径设计成的计算机精简指令系统计算机(Reduced Instruction Set Computer),简称RISC。,传统的计算机多属于CISC指令系统多达几百条指令,许多指令的功能异常复杂,具有多种

14、寻址方式。计算机的研制周期变得很长,同时也增加了设计失误的可能性。由于复杂指令需进行复杂的操作,有时还可能降低系统的执行速度。20-80律功能复杂的指令居多,约占80%。但其使用频率很低,只占20%。,CISC的特点,CISC举例80X86指令系统,数据传送类指令MOV指令:MOV 目标操作数,源操作数PUSH/POP指令算术运算类指令加、减和比较指令ADD、ADC、SUB、SBB、INC、DEC、CMP乘/除法指令乘法IMUL/MUL:有/无符号数乘法除法IDIV/DIV:有/无符号数除法逻辑运算类指令AND、OR、XOR、NOT和TEST,80X86指令系统,移位类指令普通移位指令SAL(

15、算术左移)、SAR(算术右移):用于带符号数 SAL:相当于对带符号数乘以2SAR:相当于对带符号数除以2SHL(逻辑左移)、SHR(逻辑右移):用于无符号数循环移位指令小循环(不带进位循环)小循环左移(ROL)、小循环右移(ROR)。大循环(带进位循环)大循环左移(RCL)、大循环右移(RCR)。,80X86指令系统,程控类指令控制程序的执行方向,使程序具有测试、分析与判断的能力。转移控制指令 无条件转移指令(JMP):直接跳转条件转移指令:JC、JNC、JZ、JNZ、JA、JB、JG、JL等。条件满足,跳转条件不满足,顺序执行程序循环指令:LOOP(LOOPE/LOOPNE)CX/ECX-

16、1CX/ECX0,循环;CX/ECX=0,跳出循环。,80X86指令系统,程控类指令控制程序的执行方向,使程序具有测试、分析与判断的能力。子程序调用和返回指令:CALL和RET子程序执行过程,80X86指令系统,程控类指令控制程序的执行方向,使程序具有测试、分析与判断的能力。中断控制指令:当出现某些特殊情况,必须暂停现在运行的程序,转去执行一组专门的程序进行某些处理,处理结束后又返回到原程序继续运行。硬件中断:由外部设备发出的中断请求信号。软件中断:由内部驱动事件引发的。中断控制指令由软件驱动。INT n:n表示中断类型码。INT 3:断点中断,用于断点的特殊软中断。INTO:溢出中断,IRE

17、T:中断返回,80X86指令系统,输入/输出类指令用来实现主机与外部设备之间的信息交换。指令中应给出I/O端口地址。直接端口寻址:指令中直接给出I/O端口地址(8位),最多只能寻址256个端口;间接端口寻址:由DX寄存器间接给出I/O端口地址(16位),最多可以寻址65536个端口。指令必须使用AL(8位)、AX(16位)或EAX(32位)进行传送。例:IN AX,00H;直接端口寻址,传送16位数据 IN AL,00H;直接端口寻址,传送8位数据 MOV DX,0300H;间接端口寻址 IN AL,DX;传送8位数据 或 IN AX,DX;传送16位数据,指令条数少,只选择使用频度高的指令;

18、指令长度固定,指令格式种类少,寻址方式种类少;尽量减少访问内存,除存(Load)、取(Store)指令外,其它指令一律只对寄存器操作;执行速度快,大多数指令在单个机器周期内完成;扩大通用寄存器的数目,一般不少于32个;为提高指令执行速度,大多数指令用硬连线控制实现,少数指令才用微程序实现;优化编译,简单有效地支持高级语言的实现。,RISC的特点,RISC举例SPARC指令系统,SPARC:32位机,共有75条指令。指令类型算术运算/逻辑运算/移位指令;取数(LOAD)/存数(STORE)指令;控制转移指令;读/写专用寄存器指令;浮点运算指令;协处理器指令。,SPARC指令系统,SPARC:32

19、位机,共有75条指令。指令格式Rs:源寄存器或地址寄存器 Rd:目标寄存器 Simm13:13位扩展符号的立即数。:选择第二操作数。i=0/1 Rs2/Simm13。,本章小结,指令系统指令格式寻址方式指令寻址方式:顺序寻址和跳跃寻址数据寻址方式 隐含寻址、立即寻址、直接寻址、间接寻址、寄存器寻址、寄存器间接寻址、相对寻址、基址寻址、变址寻址、块寻址、段寻址、页面寻址等。堆栈:“先进后出”的特殊数据寻址方式。寄存器堆栈/存储器堆栈 典型指令系统数据传送类、算术运算类、逻辑运算类程控类、I/O类、字符串类、系统控制类。CISC与RISC,指令系统的发展与性能要求,指令机器语言的语句,由二进制代码表示,用以指挥计算机完成各种操作的命令。指令系统一台计算机支持的全部指令的集合。是软件和硬件的主要界面。为软件设计者提供最底层的程序设计语言为硬件设计者提供最基本的设计依据对指令系统的要求完备性:指令齐全,编程方便高效性:占内存少,运行省时规整性:指令与运算规则统一兼容性:新旧机指令软件兼容,格式,(D的位数只需覆盖一个较小的存储区间),已知基址寻址格式如下,如果存储器地址范围64K,问Rb应该是多少位寄存器?D在指令中占几位?,基址寄存器号,4K,位移量,S=(Rb)+D),基准地址,相对于基址的位移,4K,Rb=16位,D=12位。,The End and Thanks,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号