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

上传人:xt****7 文档编号:180881320 上传时间:2023-01-08 格式:PPT 页数:44 大小:399.50KB
收藏 版权申诉 举报 下载
信息表示-指令系统(复习)_第1页
第1页 / 共44页
信息表示-指令系统(复习)_第2页
第2页 / 共44页
信息表示-指令系统(复习)_第3页
第3页 / 共44页
资源描述:

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

1、本节习题内容重点掌握和了解重点掌握和了解 指令格式指令格式寻址方式寻址方式2 指令格式指令格式指令格式 操作码操作码(OP):根据编码不同,区分不同操作的性质及功根据编码不同,区分不同操作的性质及功能。能。地址码:指明操作数的地址,特殊情况下也可能直接给地址码:指明操作数的地址,特殊情况下也可能直接给出操作数本身。出操作数本身。显式地址:在指令中直接给出显式地址:在指令中直接给出隐式地址:用隐含方式给出隐式地址:用隐含方式给出操作码字段操作码字段地址码字段地址码字段指令功能指令功能操作码操作码助记符助记符加法加法001ADD减法减法010SUB传送传送011MOV操作码操作码字段的位数取决于计

2、算机指令系统的规模。操作码字段的位数取决于计算机指令系统的规模。假设一台计算机系统有假设一台计算机系统有mm条指令,指令中操作码的位数条指令,指令中操作码的位数为为N N位,则位,则m=2m=logN=log2 2mm例:指令系统有例:指令系统有8条指令,则操作码需条指令,则操作码需3位;有位;有32条条指令,需要指令,需要5位操作码。位操作码。操作码的编码方式操作码的编码方式定长编码定长编码操作码的位数和位置固定。操作码的位数和位置固定。变长编码变长编码操作码的位数不固定,位置分散。操作码的位数不固定,位置分散。定长编码操作码的位数和位置固定。操作码的位数和位置固定。有利于简化操作码译码器的

3、设计。有利于简化操作码译码器的设计。常用于大、中型机中。常用于大、中型机中。例:例:IBM370系统(字长系统(字长32位)位)操作码长度固定均为操作码长度固定均为8 8位,共可表示位,共可表示256256种不同的指令。种不同的指令。12位4位4位4位8位类型 B B2 2 D D2 2DD1 1B B1 1L L1 1OPOPSSSS型型DD1 1B B1 1I I2 2OPOPSISI型型DD1 1B B2 2R R2 2R R1 1OPOPRSRS型型DD2 2B B2 2X X2 2R R1 1OPOPRXRX型型R R2 2R R1 1OPOPRRRR型型4位 12位变长编码操作码的

4、位数不固定,位置分散。操作码的位数不固定,位置分散。可充分利用指令字长度,尽可能用有限的指令字长度来可充分利用指令字长度,尽可能用有限的指令字长度来表示更多的指令,或在更大的地址空间中寻址。表示更多的指令,或在更大的地址空间中寻址。常用于小、微型机中。常用于小、微型机中。例:例:PDP11(字长字长16位)位)等长指令扩展操作码法指令字长度一定时,地址位多,操作码位少;操作码位多,指令字长度一定时,地址位多,操作码位少;操作码位多,地址位少。地址位少。例例 某机指令字长度某机指令字长度1616位,采用扩展操作码法,设计三地址位,采用扩展操作码法,设计三地址指令指令1515条,二地址指令条,二地

5、址指令1515条,单地址指令条,单地址指令1515条,零地址指条,零地址指令令1616条。条。00000000 .11101110(1111)(1111)OP=8OP=8位位1111 00001111 0000 .1111 11101111 1110(1111 1111)(1111 1111)OP=12OP=12位位1111 1111 00001111 1111 0000 .1111 1111 11101111 1111 1110(1111 1111 1111)(1111 1111 1111)OP=16OP=16位位1111 1111 1111 0000 1111 1111 1111 0000

6、 .1111 1111 1111 11111111 1111 1111 11111515条三地址指令条三地址指令1515条二地址指令条二地址指令1515条单地址指令条单地址指令1616条零地址指令条零地址指令OP(4OP(4位位)A A2 2(4(4位位)A A1 1(4(4位位)A A3 3(4(4位位)补3 指令和数据的寻址方式编址技术:对寄存器、内存储器和输入输出设备编址技术:对寄存器、内存储器和输入输出设备等编排地址便于访问。等编排地址便于访问。编址单位编址单位 字编址字编址以字为单位进行编址,编址单位与访问单位相一以字为单位进行编址,编址单位与访问单位相一致。简单,但不实用。致。简单

7、,但不实用。字节编址字节编址以字节为单位,比较普遍,存在着地址的浪费。以字节为单位,比较普遍,存在着地址的浪费。例:字长例:字长3232位,以字为单位进行读写时,地位,以字为单位进行读写时,地址浪费址浪费3/43/4。位编址位编址以二进制位为单位进行编址,地址信息浪费更大以二进制位为单位进行编址,地址信息浪费更大例题一、问一个具有例题一、问一个具有64个单元个单元,每,每个单元由个单元由8位组成的存储器,按位组成的存储器,按字节字节编址编址需要多少条地址线(需要多少条地址线(地址码需地址码需要几位)?要几位)?如果:存储器增至如果:存储器增至1K(1024)个单元个单元的需要多少条地址线(的需

8、要多少条地址线(地址码需要地址码需要几位)?几位)?寻址寻址编址:编址:8bits主存储器主存储器000000000001111111数据寄存器数据寄存器MBR存储体存储体(m字字 w位位)地址寄存器地址寄存器MAR64个单元的存储器结构存储器结构寻址方式1 1、指令寻址方式:、指令寻址方式:计算下一条要执行的指令地址计算下一条要执行的指令地址的方法的方法顺序寻址方式顺序寻址方式程序计数器程序计数器PCPC保存下一条指令的地址。保存下一条指令的地址。PCPC每次增加一个指令间隔,指向下一条要执行的指每次增加一个指令间隔,指向下一条要执行的指令。令。顺序执行程序。顺序执行程序。跳跃寻址方式跳跃寻

9、址方式下一条指令的地址由跳转指令给出。下一条指令的地址由跳转指令给出。PCPC内容由跳转指令赋值,转为目的地址。内容由跳转指令赋值,转为目的地址。程序转移、循环和转子等。程序转移、循环和转子等。2 2、数据寻址方式:、数据寻址方式:确定指令中操作数地址的方法确定指令中操作数地址的方法操作数寻址方式操作数寻址方式:寻找指令中操作数所在地址的操作数寻址方式:寻找指令中操作数所在地址的方式。方式。形式地址形式地址指令中给出的地址,这个地址有时不能直接访存。指令中给出的地址,这个地址有时不能直接访存。有效地址有效地址(EA)(EA)能够直接访存的地址。能够直接访存的地址。操作数的地址分类操作数的地址分

10、类运算器中的通用寄存器编号运算器中的通用寄存器编号输入输入/输出设备的端口地址输出设备的端口地址内存单元的地址内存单元的地址指令中的形式地址指令中的形式地址有效地址有效地址寻址寻址方式方式操作数寻址方式隐含寻址隐含寻址操作数地址在指令中隐含给出。操作数地址在指令中隐含给出。IMUL BL;ALBLAX立即寻址:操作数在指令中直接给出。立即寻址:操作数在指令中直接给出。取指令同时取出操作数,不必再次访存,提高了指令的取指令同时取出操作数,不必再次访存,提高了指令的执行速度。执行速度。立即数固定,不能修改。立即数固定,不能修改。受指令字长度限制,立即数位数较小(占用位数少)受指令字长度限制,立即数

11、位数较小(占用位数少)适用于给某一寄存器或内存单元赋初值。适用于给某一寄存器或内存单元赋初值。MOV AX,0300H;0300HAXOPOP立即数立即数操作数寻址方式直接寻址:操作数的地址在指令中直接给出。直接寻址:操作数的地址在指令中直接给出。例:例:MOV AL,5718H;若;若5718H=3,则,则3 AL简单直观,便于硬件实现简单直观,便于硬件实现但内存容量大时,地址码长度变长。但内存容量大时,地址码长度变长。常用于读写内存的指令常用于读写内存的指令 操作数操作数 内存储器内存储器OPOP直接地址3 357185718HH57185718HH操作数寻址方式间接寻址:地址码字段给出的

12、是操作数间接寻址:地址码字段给出的是操作数地址的地地址的地址址。通常在指令中设置直接通常在指令中设置直接/间接寻址标志位间接寻址标志位I(或或),当,当I=1时,间接寻址。时,间接寻址。存储器存储器OPOP间接地址间接地址1 1一级间址一级间址 I=1 I=1有效地址有效地址操作数操作数操作数寻址方式间接寻址:地址码字段给出的是操作数间接寻址:地址码字段给出的是操作数地址的地地址的地址址。通常在指令中设置直接通常在指令中设置直接/间接寻址标志位间接寻址标志位I(或或),当,当I=1时,间接寻址。时,间接寻址。特点特点扩大了寻址范围扩大了寻址范围可以实现指针型数据可以实现指针型数据但延长了取操作

13、数的速度但延长了取操作数的速度存储器存储器OPOP一级间址一级间址1 1多级间址多级间址 I=1 I=11 1|二级间址二级间址1|三级间址三级间址0|有效地址有效地址操作数操作数操作数寻址方式寄存器寻址寄存器寻址指令地址码字段给出的是指令地址码字段给出的是CPU内通用寄存器的编号内通用寄存器的编号(地地址址)所需的操作数就在这一寄存器中。所需的操作数就在这一寄存器中。寄存器操作速度比内存快寄存器操作速度比内存快寄存器少,编址短,缩短了指令长度寄存器少,编址短,缩短了指令长度OPOPR Ri i操作数操作数R Ri i寄存器寄存器操作数寻址方式寄存器间接寻址寄存器间接寻址寄存器中存放的是操作数

14、在内存中的地址。寄存器中存放的是操作数在内存中的地址。只须一次访存。只须一次访存。例:例:i=5i=5,使用,使用R R5 5寄存器,若寄存器,若R R5 5中的内容为中的内容为 7 7寄存器寻址:操作数寄存器寻址:操作数=7=7寄存器间接寻址:操作数寄存器间接寻址:操作数=(7#7#)=13=13OPOPRiRi存储器存储器R Ri i寄存器寄存器有效地址有效地址操作数操作数7 7R R5 57 71313操作数寻址方式相对寻址:有效地址相对寻址:有效地址EA由程序计数器由程序计数器 PC 的内容的内容和指令中的地址码相加得到。和指令中的地址码相加得到。例:例:D=48H (PC)=5600

15、H 有效地址有效地址EA=5648H主要用于转移指令,对浮动程序很有用。主要用于转移指令,对浮动程序很有用。位移量可正可负,通常用补码表示。位移量可正可负,通常用补码表示。PC加法器加法器操作数操作数OPOPDD存储器存储器操作数寻址方式基址寻址:有效地址由基址寄存器基址寻址:有效地址由基址寄存器Rb的内容和指的内容和指令中的位移量令中的位移量D相加得到。相加得到。例:例:D=18H,BS=5700H 有效地址有效地址EA=5718H主要用于为程序或数据分配存储区,对多道程序或主要用于为程序或数据分配存储区,对多道程序或浮动程序很有用,解决了程序在存储器中的定位和浮动程序很有用,解决了程序在存

16、储器中的定位和扩大寻址空间等问题。扩大寻址空间等问题。大型机中,基址寄存器只能由特权指令来管理,用大型机中,基址寄存器只能由特权指令来管理,用户指令无权操作和修改。户指令无权操作和修改。加法器加法器操作数操作数基址寄存器基址寄存器OPOPR Rb bDD存储器存储器操作数寻址方式变址寻址:有效地址由变址寄存器变址寻址:有效地址由变址寄存器Rx的内容和指的内容和指令中的地址码相加得到。令中的地址码相加得到。例:例:A=18H,x=5,(Rx)=5700H 有效地址有效地址EA=5718H主要用于对数组元素和字符串进行处理。主要用于对数组元素和字符串进行处理。存储器存储器OPOPR Rx xDD操

17、作数操作数加法器加法器变址寄存器变址寄存器一般的系统都不再区分变址和基址了成原理中的变址和基址的由来和计算机硬件技术的发展,特别是电子工艺的发展比较成原理中的变址和基址的由来和计算机硬件技术的发展,特别是电子工艺的发展比较密切,由于计算机硬件制造成本的改变,目前,一般的系统都不再区分变址和基址了密切,由于计算机硬件制造成本的改变,目前,一般的系统都不再区分变址和基址了把两种情况讲清楚就可以了,即把两种情况讲清楚就可以了,即1、地址码分两部分、地址码分两部分2、其中的一个部分地址可以访问整个主存空间的任何一个单元,、其中的一个部分地址可以访问整个主存空间的任何一个单元,其第二个地址部分,可以在其

18、一所确定的单元地址的基础之上做局部的变换。其第二个地址部分,可以在其一所确定的单元地址的基础之上做局部的变换。同时区分两种地址码的形式:同时区分两种地址码的形式:1、可以访问整个主存空间的任何一个单元的地址部分在指令中用寄存器给出的,、可以访问整个主存空间的任何一个单元的地址部分在指令中用寄存器给出的,这个寄存器称为基址寄存器记为这个寄存器称为基址寄存器记为Rb,此时,局部的变换范围用偏移量,此时,局部的变换范围用偏移量D表示,表示,有效地址为有效地址为Rb+D,称之为基址寻址方式。,称之为基址寻址方式。2、可以访问整个主存空间的任何一个单元的地址部分在指令中用立即数、可以访问整个主存空间的任

19、何一个单元的地址部分在指令中用立即数D给出的,给出的,而在而在D所确定的单元地址的基础之上做局部的变换的地址部分用寄存器表示的,所确定的单元地址的基础之上做局部的变换的地址部分用寄存器表示的,这个寄存器称为变址寄存器记为这个寄存器称为变址寄存器记为Rx,有效地址为,有效地址为D+Rx,称之为变址寻址方式。,称之为变址寻址方式。3、虽然两种寻址方式形式相似,但要注意的是字母、虽然两种寻址方式形式相似,但要注意的是字母D,的两种说法(偏移量和形式地的两种说法(偏移量和形式地址)址)操作数寻址方式页面寻址页面寻址地址空间分页并编号地址空间分页并编号页面号页面号页内各单元编号页内各单元编号页内地址页内

20、地址有效地址有效地址=页面号页面号/页内地址页内地址无须计算,寻址迅速。无须计算,寻址迅速。三种形式三种形式基页寻址基页寻址 EA=0/页内地址页内地址当前页寻址当前页寻址 EA=PCH/页内地址页内地址页寄存器寻址页寄存器寻址 EA=页面号页面号/页内地址页内地址00000000H H0000FFHFFH010100H00H0101FFHFFHFFFF00H00HFFFFFFHFFH0 0页页1 1页页255255页页操作数操作数PCPCHH当前页面当前页面 页内地址页内地址PCPCL L操作数操作数页面号页面号页内地址页内地址页寄存器页寄存器页面号页面号操作数操作数0 0页内地址页内地址0

21、 0各种寻址方式比较间接的复杂,直接的简单间接的复杂,直接的简单间接慢,直接快间接慢,直接快间接的灵活,直接的死板间接的灵活,直接的死板内存慢,寄存器快,立即数更快内存慢,寄存器快,立即数更快内存地址长,寄存器地址短内存地址长,寄存器地址短需要运算的慢,不需运算的快需要运算的慢,不需运算的快指令中的地址码一般包含寻址方式的信息指令中的地址码一般包含寻址方式的信息操作码操作码op op 地址地址A1 A1 地址地址A2 OPOP间接地址间接地址1 1地址地址A1A1寻址方式例题CPU完成哪一种操作所花时间最短?完成哪一种操作所花时间最短?第一种指令所花时间最短。第一种指令所花时间最短。RR型指令

22、,无需访问存储器。型指令,无需访问存储器。哪一种操作所花时间最长?哪一种操作所花时间最长?第二种指令所花时间最长。第二种指令所花时间最长。RS型指令,需要访问存储器型指令,需要访问存储器要进行有效地址的计算要进行有效地址的计算(基址或变址基址或变址)第二种指令的执行时间有时会等于第三种指令的第二种指令的执行时间有时会等于第三种指令的执行时间吗?执行时间吗?不等于。不等于。第三种指令虽然也访问存储器,但直接寻址,无需第三种指令虽然也访问存储器,但直接寻址,无需计算有效地址,速度快。计算有效地址,速度快。Page58 堆栈与堆栈操作堆栈堆栈按按“后进先出后进先出”(LIFOLIFO)或或“先进后出

23、先进后出”(FILOFILO)顺顺序进行存取的存储区序进行存取的存储区。堆栈用途堆栈用途中断时保存断点中断时保存断点子程序调用时保存返回地址、状态标志、现场信息以及子程序调用时保存返回地址、状态标志、现场信息以及参数传递等。参数传递等。堆栈分类堆栈分类寄存器堆栈:用一组专门的寄存器串联构成的堆栈,也寄存器堆栈:用一组专门的寄存器串联构成的堆栈,也称为称为串联堆栈串联堆栈或或硬堆栈硬堆栈。存储器堆栈:由程序员设置出一部分主存储器来作为堆存储器堆栈:由程序员设置出一部分主存储器来作为堆栈,也称为栈,也称为软堆栈软堆栈。寄存器堆栈由由CPU的一组串联的寄存器构成堆栈的一组串联的寄存器构成堆栈通用寄存

24、器通用寄存器寄存器堆栈寄存器堆栈栈顶栈顶寄存器寄存器0 0寄存器寄存器1 1寄存器寄存器2 2.寄存器寄存器K-2K-2寄存器寄存器K-1K-1A AA AA AA AB BA AB BA AB BC CC CA AB BC CA AB B A AC CP PU U存存储储器器栈顶指针栈顶指针SPSP300300通用寄存器通用寄存器A A276276277277300300301301X Xa a八八进进制制地地址址存储器堆栈由程序员设置出一部分主存储器来作为堆栈由程序员设置出一部分主存储器来作为堆栈 堆栈能够具有程序员要求的任意长度;堆栈能够具有程序员要求的任意长度;栈底固定,栈顶浮动;需要

25、设置栈顶指针栈底固定,栈顶浮动;需要设置栈顶指针SPSP(本例中(本例中SPSP指向栈顶空单元)指向栈顶空单元)堆栈操作堆栈操作入栈:入栈:(A)MSP;(SP)-1SP出栈出栈:(SP)+1 SP;(MSP)A a ab b277277b b276276277277b b300300a a软硬堆栈的比较硬堆栈硬堆栈寄存器堆栈寄存器堆栈容量有限容量有限堆栈的读出是破坏性的堆栈的读出是破坏性的速度快速度快 软堆栈软堆栈存储器堆栈存储器堆栈容量大容量大可以在整个内存区浮动可以在整个内存区浮动但每次堆栈操作均需访问内存,速度慢但每次堆栈操作均需访问内存,速度慢软硬结合的堆栈软硬结合的堆栈常规堆栈操作

26、在硬堆栈,保证速度;常规堆栈操作在硬堆栈,保证速度;大容量压栈时,与软堆栈衔接,保证数量。大容量压栈时,与软堆栈衔接,保证数量。2.3.3 指令的功能和类型CPU的指令系统可以有上百条指令,按功能分类的指令系统可以有上百条指令,按功能分类数据传送类指令数据传送类指令一般数据传送、堆栈操作、数据交换一般数据传送、堆栈操作、数据交换算术、逻辑运算类指令算术、逻辑运算类指令算术运算、逻辑运算、移位算术运算、逻辑运算、移位程控类指令程控类指令转移、子程序调用与返回转移、子程序调用与返回输入输入/输出类指令输出类指令字符串处理类指令字符串处理类指令特权指令特权指令其他指令其他指令CISC与RISC对比C

27、ISC指令系统日益庞大和复杂。指令系统日益庞大和复杂。进一步增强原有指令的功能,设置更为复杂的新指进一步增强原有指令的功能,设置更为复杂的新指令取代原先由软件子程序完成的功能。令取代原先由软件子程序完成的功能。采用这种途径设计成的计算机采用这种途径设计成的计算机复杂指令系统计算机复杂指令系统计算机(Complex Instruction Set Computer),简称简称CISC。RISC指令系统日益缩小和精简。指令系统日益缩小和精简。减少指令种类和简化指令功能来降低硬件设计的复减少指令种类和简化指令功能来降低硬件设计的复杂度,提高指令的执行速度。杂度,提高指令的执行速度。采用这种途径设计成

28、的计算机采用这种途径设计成的计算机精简指令系统计算机精简指令系统计算机(Reduced Instruction Set Computer),简称简称RISC。传统的计算机多属于传统的计算机多属于CISC指令系统多达几百条指令,许多指令的功能异常复杂,指令系统多达几百条指令,许多指令的功能异常复杂,具有多种寻址方式。具有多种寻址方式。计算机的研制周期变得很长,同时也增加了设计失误的计算机的研制周期变得很长,同时也增加了设计失误的可能性。可能性。由于复杂指令需进行复杂的操作,有时还可能降低系统由于复杂指令需进行复杂的操作,有时还可能降低系统的执行速度。的执行速度。20-80律律功能复杂的指令居多,

29、约占功能复杂的指令居多,约占80%。但其使用频率很低,只占但其使用频率很低,只占20%。CISC的特点CISC举例80X86指令系统数据传送类指令数据传送类指令MOVMOV指令:指令:MOV MOV 目标操作数,目标操作数,源操作数源操作数PUSH/POP指令指令算术运算类指令算术运算类指令加、减和比较指令加、减和比较指令ADDADD、ADCADC、SUBSUB、SBBSBB、INCINC、DECDEC、CMPCMP乘乘/除法指令除法指令乘法乘法IMUL/MULIMUL/MUL:有:有/无符号数乘法无符号数乘法除法除法IDIV/DIVIDIV/DIV:有:有/无符号数除法无符号数除法逻辑运算类

30、指令逻辑运算类指令AND、OR、XOR、NOT和和TEST80X86指令系统 移位类指令移位类指令普通移位指令普通移位指令SAL(算术左移算术左移)、SAR(算术右移算术右移):用于带符号数:用于带符号数 SAL:相当于对带符号数乘以:相当于对带符号数乘以2SAR:相当于对带符号数除以:相当于对带符号数除以2SHL(逻辑左移逻辑左移)、SHR(逻辑右移逻辑右移):用于无符号数:用于无符号数循环移位指令循环移位指令小循环(不带进位循环)小循环(不带进位循环)小循环左移(小循环左移(ROL)、)、小循环右移(小循环右移(ROR)。)。大循环(带进位循环)大循环(带进位循环)大循环左移(大循环左移(

31、RCL)、)、大循环右移(大循环右移(RCR)。)。80X86指令系统 程控类指令程控类指令控制程序的执行方向,使程序具有测试、分析与判断的控制程序的执行方向,使程序具有测试、分析与判断的能力。能力。转移控制指令转移控制指令 无条件转移指令(无条件转移指令(JMP):直接跳转:直接跳转条件转移指令:条件转移指令:JC、JNC、JZ、JNZ、JA、JB、JG、JL等。等。条件满足,跳转条件满足,跳转条件不满足,顺序执行条件不满足,顺序执行程序循环指令:程序循环指令:LOOPLOOP(LOOPE/LOOPNELOOPE/LOOPNE)CX/ECX-CX/ECX-1 1CX/ECXCX/ECX00,

32、循环;,循环;CX/ECX=0CX/ECX=0,跳出循环。,跳出循环。80X86指令系统 程控类指令程控类指令控制程序的执行方向,使程序具有测试、分析与判断的控制程序的执行方向,使程序具有测试、分析与判断的能力。能力。子程序调用和返回指令:子程序调用和返回指令:CALL和和RET子程序执行过程子程序执行过程CALL CALL 子程序子程序A A主程序主程序CSCS:IPIPCS:IP入栈入栈CS:IP出栈出栈子程序子程序A APUSH AXPUSH AXPUSH BXPUSH BXPOP BXPOP BXPOP AXPOP AXRETRET保护保护现场现场恢复恢复现场现场80X86指令系统 程

33、控类指令程控类指令控制程序的执行方向,使程序具有测试、分析与判断的控制程序的执行方向,使程序具有测试、分析与判断的能力。能力。中断控制指令:当出现某些特殊情况,必须暂停现中断控制指令:当出现某些特殊情况,必须暂停现在运行的程序,转去执行一组专门的程序进行某些在运行的程序,转去执行一组专门的程序进行某些处理,处理结束后又返回到原程序继续运行。处理,处理结束后又返回到原程序继续运行。硬件中断:由外部设备发出的中断请求信号。硬件中断:由外部设备发出的中断请求信号。软件中断:由内部驱动事件引发的。中断控制指软件中断:由内部驱动事件引发的。中断控制指令由软件驱动。令由软件驱动。INT n:n表示中断类型

34、码。表示中断类型码。INT 3:断点中断,用于断点的特殊软中断。:断点中断,用于断点的特殊软中断。INTO:溢出中断,:溢出中断,IRET:中断返回:中断返回80X86指令系统 输入输入/输出类指令输出类指令用来实现主机与外部设备之间的信息交换。用来实现主机与外部设备之间的信息交换。指令中应给出指令中应给出I/O端口地址。端口地址。直接端口寻址:指令中直接给出直接端口寻址:指令中直接给出I/O端口地址(端口地址(8位),最多只能寻址位),最多只能寻址256个端口;个端口;间接端口寻址:由间接端口寻址:由DX寄存器间接给出寄存器间接给出I/O端口地址端口地址(16位),最多可以寻址位),最多可以

35、寻址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位数据位数据指令条数少,只选择使用频度高的指令;指令条数少,只选择使用频度高的指令;指令长度固定,指令格式种类少,寻址方式种类指令长度固定,指令格式种类少,寻址方式种类少

36、;少;尽量减少访问内存,除存(尽量减少访问内存,除存(Load)、取()、取(Store)指令外,其它指令一律只对寄存器操作;指令外,其它指令一律只对寄存器操作;执行速度快,大多数指令在单个机器周期内完成;执行速度快,大多数指令在单个机器周期内完成;扩大通用寄存器的数目,一般不少于扩大通用寄存器的数目,一般不少于32个;个;为提高指令执行速度,大多数指令用硬连线控制为提高指令执行速度,大多数指令用硬连线控制实现,少数指令才用微程序实现;实现,少数指令才用微程序实现;优化编译,简单有效地支持高级语言的实现。优化编译,简单有效地支持高级语言的实现。RISC的特点RISC举例SPARC指令系统SPA

37、RC:32位机,共有位机,共有75条指令。条指令。指令类型指令类型算术运算算术运算/逻辑运算逻辑运算/移位指令;移位指令;取数取数(LOAD)/存数存数(STORE)指令;指令;控制转移指令;控制转移指令;读读/写专用寄存器指令;写专用寄存器指令;浮点运算指令;浮点运算指令;协处理器指令协处理器指令。SPARC指令系统SPARC:32位机,共有位机,共有75条指令。条指令。指令格式指令格式Rs:源寄存器或地址寄存器:源寄存器或地址寄存器 Rd:目标寄存器:目标寄存器 Simm13:13位扩展符号的立即数。位扩展符号的立即数。:选择第二操作数。:选择第二操作数。i=0/1 Rs2/Simm13。

38、格式格式CALL指令指令31 30 29 28 0OPDisp30(偏移量(偏移量)格式格式2BRANCH指令指令31 30 29 28 25 24 22 21 0OPaCondOP2Disp22(偏移量偏移量)格式格式3其他指令其他指令31 30 28 25 24 19 18 14 13 12 5 4 0OPRdOP3Rs1iAs1Rs2OPRdOP3Rs1iSimm13OPRdOP3Rs1OPfRs2本章小结指令系统指令系统指令格式指令格式寻址方式寻址方式指令寻址方式指令寻址方式:顺序寻址和跳跃寻址:顺序寻址和跳跃寻址数据寻址方式数据寻址方式 隐含寻址、立即寻址、直接寻址、间接寻址、寄存隐

39、含寻址、立即寻址、直接寻址、间接寻址、寄存器寻址、寄存器间接寻址、相对寻址、基址寻址、器寻址、寄存器间接寻址、相对寻址、基址寻址、变址寻址、块寻址、段寻址、页面寻址等。变址寻址、块寻址、段寻址、页面寻址等。堆栈:堆栈:“先进后出先进后出”的特殊数据寻址方式。的特殊数据寻址方式。寄存器堆栈寄存器堆栈/存储器堆栈存储器堆栈 典型指令系统典型指令系统数据传送类、算术运算类、逻辑运算类数据传送类、算术运算类、逻辑运算类程控类、程控类、I/O类、字符串类、系统控制类。类、字符串类、系统控制类。CISC与与RISC指令系统的发展与性能要求指令指令机器语言的语句,由二进制代码表示,用以指挥计算机器语言的语句

40、,由二进制代码表示,用以指挥计算机完成各种操作的命令。机完成各种操作的命令。指令系统指令系统一台计算机支持的全部指令的集合。一台计算机支持的全部指令的集合。是软件和硬件的主要界面。是软件和硬件的主要界面。为软件设计者提供最底层的程序设计语言为软件设计者提供最底层的程序设计语言为硬件设计者提供最基本的设计依据为硬件设计者提供最基本的设计依据对指令系统的要求对指令系统的要求完备性完备性:指令齐全,编程方便指令齐全,编程方便高效性:占内存少,运行省时高效性:占内存少,运行省时规整性:指令与运算规则统一规整性:指令与运算规则统一兼容性:新旧机指令软件兼容兼容性:新旧机指令软件兼容软件软件硬件硬件指令系统格式格式(D的位数只需覆盖一个较小的位数只需覆盖一个较小的存储区间)的存储区间)已知基址寻址格式如下已知基址寻址格式如下 ,如果存储器地址,如果存储器地址范围范围64K,64K,问问RbRb应该是多少位寄存器?应该是多少位寄存器?D D在指令在指令中占几位?中占几位?基址寄存器号基址寄存器号R Rb b 4K4K操作码操作码op op R Rb b D D 位移量位移量S=(S=(R(Rb b)+D D)基准地址基准地址 相对于基址的位移相对于基址的位移 M.R Rb b 4K4KRb=16位,位,D=1212位。位。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!