《微型计算机原理》课件chapter3 8086指令系统.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《微型计算机原理》课件chapter3 8086指令系统.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微型计算机原理 微型计算机原理课件chapter3 8086指令系统 微型计算机 原理 课件 chapter3 8086 指令系统
- 资源描述:
-
1、计算机硬件技术基础计算机硬件技术基础2024年3月19日第1页寻址方式1指令系统2系统功能调用3主要内容主要内容计算机硬件技术基础计算机硬件技术基础2024年3月19日第2页 一条指令一般包括操作码和操作数两个部分:操作码操作码 操作数操作数1 1,操作数,操作数2 2 操作码表示机器执行什么性质的操作;操作码表示机器执行什么性质的操作;操作数指定参加运算的操作数指定参加运算的数据数据或或存放数据的地方存放数据的地方。一条指令中,操作数可以没有,可以有一个或是两个,对有两个操作数的指令而言,前面一个是目的操作数,后一个是源操作数。指令的基本格式指令的基本格式MOV OPRD1,OPRD2AX1
2、234H计算机硬件技术基础计算机硬件技术基础2024年3月19日第3页3.1 寻址方式寻址方式v 指令中说明指令中说明操作数所在地址操作数所在地址或指令或指令获得转移地址获得转移地址的方法。的方法。v 操作数可以存放在寄存器、存储器或操作数可以存放在寄存器、存储器或I/O I/O 端口中,操作数端口中,操作数地址的计算方法因不同的寻址方式而异。地址的计算方法因不同的寻址方式而异。v 寻址方式的多样化,扩大了指令系统的灵活性寻址方式的多样化,扩大了指令系统的灵活性。计算机硬件技术基础计算机硬件技术基础2024年3月19日第4页说明操作数所在地址的寻址方式说明操作数所在地址的寻址方式:立即寻址立即
3、寻址直接寻址直接寻址寄存器寻址寄存器寻址寄存器间接寻址寄存器间接寻址寄存器相对寻址寄存器相对寻址基址、变址寻址基址、变址寻址基址、变址相对寻址基址、变址相对寻址隐含寻址隐含寻址操作码操作码0310ABC0代码段代码段数据段数据段3.1.1 操作数寻址方式操作数寻址方式计算机硬件技术基础计算机硬件技术基础2024年3月19日第5页1 1.立即寻址立即寻址 操作数就是一个立即数,它直接包含在指令中,与操作操作数就是一个立即数,它直接包含在指令中,与操作码一起存放在代码段。码一起存放在代码段。MOV AX,3100H操作码操作码0031AXAHAL3100代码段代码段计算机硬件技术基础计算机硬件技术
4、基础2024年3月19日第6页2 2.直接寻址直接寻址操作数地址的段内偏移地址(操作数地址的段内偏移地址(1616位)直接包含在指令中。位)直接包含在指令中。操作码操作码00313412MOV AX,3100H30000DS31003310033100HAXAHAL33101H3412代码段代码段数据段数据段计算机硬件技术基础计算机硬件技术基础2024年3月19日第7页3 3.寄存器寻址寄存器寻址 操作数在操作数在CPUCPU的内部寄存器中(寄存器可是的内部寄存器中(寄存器可是8 8位,也可位,也可是是1616位的)位的)MOV BX,AX12A6HBX 12A6HAX计算机硬件技术基础计算机
5、硬件技术基础2024年3月19日第8页4 4.寄存器间接寻址寄存器间接寻址 操作数的偏移地址(操作数的偏移地址(1616位)放在寄存器位)放在寄存器SISI、DIDI、BPBP、BXBX中中之一,操作数本身存放在存储器中。之一,操作数本身存放在存储器中。若以若以SI、DI、BX进行间接寻址,操作数存放在数据段中。进行间接寻址,操作数存放在数据段中。若以若以 BP 进行间接寻址,操作数存放在堆栈段中。进行间接寻址,操作数存放在堆栈段中。DSSS计算机硬件技术基础计算机硬件技术基础2024年3月19日第9页操作码操作码9ABC3412F5代码段代码段数据段数据段堆栈段堆栈段MOV AX,SIDS2
6、0000HSI1000H21000H21000H21001HAXAHAL341263000H63001H 用作间址的寄存器用作间址的寄存器(SI、DI、BX、BP)必须加上方必须加上方括号括号例:例:计算机硬件技术基础计算机硬件技术基础2024年3月19日第10页操作码操作码9ABC3412F5代码段代码段数据段数据段堆栈段堆栈段63000H63001H21000H21001HMOV BP,AXSS60000HBP3000H63000HAXAHAL9ABC计算机硬件技术基础计算机硬件技术基础2024年3月19日第11页5 5.寄存器相对寻址寄存器相对寻址操作数的偏移地址(操作数的偏移地址(16
7、16位)是寄存器位)是寄存器SISI、DIDI、BPBP、BXBX中之中之一的内容加上由指令中所指出的一的内容加上由指令中所指出的8 8位或位或1616位相对地址偏移位相对地址偏移量得到的。操作数本身存放在存储器中。量得到的。操作数本身存放在存储器中。偏移地址偏移地址EA =BXBPSIDI8位位移量位位移量16位位移量位位移量计算机硬件技术基础计算机硬件技术基础2024年3月19日第12页操作码操作码0310ABC0代码段代码段数据段数据段MOV BX,SI+1003H63203H60000HDS2200HSI1003H63203H位移量位移量BXBHBLABC0MOV BX,SI+1003
8、HMOV BX,DISPSIMOV BX,SI+DISPMOV BX,SI+DISP计算机硬件技术基础计算机硬件技术基础2024年3月19日第13页6 6.基址变址寻址基址变址寻址 是将基址寄存器和变址寄存器联合起来进行寻址的方式。是将基址寄存器和变址寄存器联合起来进行寻址的方式。基址寄存器:基址寄存器:BX、BPDSSS变址寄存器:变址寄存器:SI、DI偏移地址偏移地址EA =BXBPSIDI计算机硬件技术基础计算机硬件技术基础2024年3月19日第14页操作码操作码ABC0代码段代码段堆栈段堆栈段MOV AX,SIBP30000HSS1000H2000H33000H33000HSIBPAX
9、AHALC0ABMOV AX,BXBPMOV AX,SIDI错!错!计算机硬件技术基础计算机硬件技术基础2024年3月19日第15页7 7.相对基址加变址寻址相对基址加变址寻址 比基址、变址寻址多了比基址、变址寻址多了8 8位或位或1616位的相对位移量。位的相对位移量。偏移地址偏移地址EA =BXBPSIDI8位位移量位位移量16位位移量位位移量计算机硬件技术基础计算机硬件技术基础2024年3月19日第16页操作码操作码64ABC0代码段代码段数据段数据段MOV AX,COUNTBXSI6C764H60000H2200HA500H64H6C764HDSSIBXCOUNTAXAHALC0AB6
10、C765H计算机硬件技术基础计算机硬件技术基础2024年3月19日第17页8 8.隐含寻址隐含寻址 是将操作数的地址隐含在指令操作码中的寻址方式。是将操作数的地址隐含在指令操作码中的寻址方式。例如:例如:MUL BL;BL乘乘AL,结果结果存放在存放在AX中中计算机硬件技术基础计算机硬件技术基础2024年3月19日第18页操作数寻址方式小结操作数寻址方式小结数据数据寄存器寄存器立即寻址立即寻址寄存器寻址寄存器寻址数据数据指令指令指令指令寄存器寄存器直接寻址直接寻址EA数据数据指令指令内存内存寄存器寄存器EA数据数据指令指令寄存器寄存器内存内存 寄存器寄存器间接寻址间接寻址 寄存器寄存器相对寻址
11、相对寻址寄存器寄存器位移量位移量数据数据指令指令内存内存段地址段地址操作均在操作均在CPU内进行,内进行,执行速度快。执行速度快。操作数在操作数在内存数据内存数据区中。区中。段地址段地址计算机硬件技术基础计算机硬件技术基础2024年3月19日第19页 基址变址基址变址寻址寻址基址寄存器基址寄存器变址寄存器变址寄存器数据数据指令指令内存内存段地址段地址 相对基址相对基址加变址寻址加变址寻址基址寄存器基址寄存器位移量位移量数据数据指令指令内存内存有效地址有效地址有效地址有效地址变址寄存器变址寄存器段地址段地址操作数寻址方式小结操作数寻址方式小结计算机硬件技术基础计算机硬件技术基础2024年3月19
12、日第20页习习 题题 设设 BX=0158H,DI=10A5H,DISP=1B57H DS=2100H,SS=1100H,BP=0100H如何确定下列指令的如何确定下列指令的EAEA和物理地址?和物理地址?(1)MOV AX,DISP(2)MOV AX,BX(3)MOV AX,BX(4)MOV AX,DISPBP(5)MOV AX,BXDI(6)MOV AX,DISPBPDI计算机硬件技术基础计算机硬件技术基础2024年3月19日第21页3.1.2 转移地址的寻址方式转移地址的寻址方式段内相对寻址段内相对寻址段内间接寻址段内间接寻址段间直接寻址段间直接寻址段间间接寻址段间间接寻址 用于说明程序
13、转移目标地址的寻址方式。当用于说明程序转移目标地址的寻址方式。当CPU执行转执行转移、调用、中断等指令时,程序执行指令的顺序将不再是顺移、调用、中断等指令时,程序执行指令的顺序将不再是顺序执行,而是发生跳转,转移地址寻址方式就是告诉序执行,而是发生跳转,转移地址寻址方式就是告诉CPU转转移目标地址的计算方法,更改内部寄存器移目标地址的计算方法,更改内部寄存器IP或者或者IP与与CS的的值,实现程序的跳转。值,实现程序的跳转。计算机硬件技术基础计算机硬件技术基础2024年3月19日第22页1.1.段内相对寻址段内相对寻址转移地址转移地址=CS+IP+=CS+IP+偏移量偏移量操作码操作码50HJ
14、MP DISP1P70若此时若此时CS内容为内容为2000H,CPU读取该指读取该指令后,令后,IP内容为内容为1000H。则:则:该指令使该指令使CPU转向转向2000:1050H2000:0FFFH操作码操作码2000:1050H(IP)=1000H1050H 指令中直接给出转移目标地址,而形成的指令机器码中给出的是该目指令中直接给出转移目标地址,而形成的指令机器码中给出的是该目标地址与当前标地址与当前IP值的相对地址位移量值的相对地址位移量(带符号数,补码表示)。带符号数,补码表示)。计算机硬件技术基础计算机硬件技术基础2024年3月19日第23页2.2.段内间接寻址段内间接寻址段内偏移
15、地址存放在段内偏移地址存放在1616位寄存器中,或是存储器的两个相位寄存器中,或是存储器的两个相邻单元中。邻单元中。操作码操作码2000:0FFFH操作码操作码2000:4000HJMP CX若此时若此时CS的内容为的内容为2000H,CX的内的内容为容为4000H,则:则:该指令使该指令使CS保持不变,而保持不变,而IP值变值变为为CX的内容,即,使的内容,即,使CPU转向转向2000:4000H计算机硬件技术基础计算机硬件技术基础2024年3月19日第24页操作码操作码2000:4000HJMP WORD PTR BX2000:0FFFH操作码操作码数据段数据段5000:1000H若此时若
16、此时CS=2000H,DS=5000H,BX=1000H,5000:1001H4000则:则:该指令使该指令使CPU到数据段中偏移到数据段中偏移地址为地址为1000H开始的两个单元开始的两个单元中找到新中找到新IP的值,并转向的值,并转向CS:IP新新处。处。计算机硬件技术基础计算机硬件技术基础2024年3月19日第25页3.3.段间直接寻址段间直接寻址指令码中直接给出指令码中直接给出1616位的段地址及偏移地址。位的段地址及偏移地址。JMP FAR PTR ADD1操作码操作码偏移地址低字节偏移地址低字节偏移地址高字节偏移地址高字节段地址低字节段地址低字节段地址高字节段地址高字节操作码操作码
17、+1234H:5678H1234H:5678H34H12H78H56H计算机硬件技术基础计算机硬件技术基础2024年3月19日第26页4.4.段间间接寻址段间间接寻址转移地址放在存储器中,从起始地址开始依次存放偏移地转移地址放在存储器中,从起始地址开始依次存放偏移地址低、高字节和段地址的低、高字节信息。址低、高字节和段地址的低、高字节信息。JMP DWORD PTR BP DI若当前若当前CS=3000H,SS=2000H,BP=1000H,DI=0050H,内存单元(内存单元(21050H21053H)=00H,66H,00H,40H,则执行指令后:则执行指令后:新新IP=6600H,新,新
18、CS=4000H转移目的地址为:转移目的地址为:46600H计算机硬件技术基础计算机硬件技术基础2024年3月19日第27页JMP targetJMP CXJMP far ptr targetJMP DWORD PTRSIJMP WORD PTRBXJMP short target段内直接短转移段内直接短转移段内直接转移段内直接转移段内间接转移段内间接转移段内间接转移段内间接转移段间直接转移段间直接转移段间间接转移段间间接转移计算机硬件技术基础计算机硬件技术基础2024年3月19日第28页3.2 指令系统指令系统v 数据传送指令数据传送指令v 算术运算指令算术运算指令v 逻辑运算和位移指令逻辑
19、运算和位移指令v 串操作指令串操作指令v 程序控制指令程序控制指令v 处理器控制指令处理器控制指令P72计算机硬件技术基础计算机硬件技术基础2024年3月19日第29页输入输出指令输入输出指令标志位标志位传送指令传送指令地址传送指令地址传送指令通用数据通用数据传送指令传送指令1 1、数据传送指令、数据传送指令计算机硬件技术基础计算机硬件技术基础2024年3月19日第30页 通用数据传送指令通用数据传送指令MOV、PUSH和和POP、XCHG、XLAT1)MOV OPRD1,OPRD2目的操作数目的操作数源操作数源操作数功能:功能:OPRD1 OPRD2源操作数:寄存器、存储器及立即数源操作数:
20、寄存器、存储器及立即数目的操作数:寄存器、存储器目的操作数:寄存器、存储器MOV AX,1000HMOV BX,AX计算机硬件技术基础计算机硬件技术基础2024年3月19日第31页MOVMOV指令数据传送方向指令数据传送方向存储器存储器通用寄存器通用寄存器AX BX CX DXSP BP SI DI 段寄存器段寄存器DS SS ESCS立即数立即数计算机硬件技术基础计算机硬件技术基础2024年3月19日第32页MOV CS,AX注意:注意:MOV 2020H,DXMOV AX,BLMOV 100H,BXMOV AX,1000HMOV DS,ESMOV DS,2000H1CS和和IP不用传送指令
21、改变内容,不用传送指令改变内容,但但CS可为源操作数。可为源操作数。2立即数不可为目的操作数。立即数不可为目的操作数。3不允许不同类型的操作数互相传送。不允许不同类型的操作数互相传送。4不能用一条不能用一条MOV指令实现存储单指令实现存储单元之间、段寄存器之间以及立即数至元之间、段寄存器之间以及立即数至段寄存器的传送。段寄存器的传送。计算机硬件技术基础计算机硬件技术基础2024年3月19日第33页判别下列指令是否合法?判别下列指令是否合法?1MOV DI,SI+62MOV CS,AX3MOV AX,SIDI4MOV 120,CL5MOV BL,BX6MOV DS,CS7MOV AX,BX8MO
22、V SS,1000H9MOV SS,1000H10MOV CS:DI,2008H课堂练习课堂练习计算机硬件技术基础计算机硬件技术基础2024年3月19日第34页2)交换指令)交换指令 XCHG OPRD1,OPRD2目的目的源源功能:功能:把一个字节或一个字的源操作数与目的操作数相交换。把一个字节或一个字的源操作数与目的操作数相交换。可实现通用寄存器之间、通用寄存器和存储器之间的交换。可实现通用寄存器之间、通用寄存器和存储器之间的交换。XCHG AL,BLXCHG BX,SIXCHG BPDI,AX若(若(AL)=8AH,(,(BL)=A8H,则执行则执行XCHG AL,BL指令后,指令后,(
23、AL)=A8H,(,(BL)=8AH注意:注意:1 1、存储器之间不可交换;、存储器之间不可交换;2 2、段寄存器不能作为操作数。、段寄存器不能作为操作数。P73计算机硬件技术基础计算机硬件技术基础2024年3月19日第35页3)堆栈操作指令)堆栈操作指令 PUSH和和POPPUSH OPRD2;压入堆栈压入堆栈POP OPRD1;弹出堆栈弹出堆栈 源源目的目的操作数:通用寄存器(操作数:通用寄存器(16位)、存储器(位)、存储器(16位)、段寄存器位)、段寄存器堆栈:堆栈:堆栈是堆栈是CPUCPU在内存中按照在内存中按照先入后出的原则建立起来先入后出的原则建立起来的向下(朝地址减小的方的向下
24、(朝地址减小的方向向)生长的临时存储区。生长的临时存储区。栈顶:栈顶:堆栈中当前可用堆栈中当前可用PUSHPUSH或或POPPOP指令与之交换数据的指令与之交换数据的存储单元。堆栈指针寄存存储单元。堆栈指针寄存器器SPSP可自动进行调整,其可自动进行调整,其内容总是当前栈顶的偏移内容总是当前栈顶的偏移地址。地址。P74计算机硬件技术基础计算机硬件技术基础2024年3月19日第36页MOV AX,8000HMOV SS,AXMOV SP,2000HMOV DX,3E4AHPUSH DX PUSH AXPOP AXPOP DX(SP)82000H81FFFH81FFEH81FFDH81FFCH例例
25、计算机硬件技术基础计算机硬件技术基础2024年3月19日第37页PUSH DX (SP)82000H81FFFH81FFEH81FFDH81FFCH(SP)(SP)SP1 SPDH (SP)SP1 SPDL (SP)DX=3E4AH3 E4 A计算机硬件技术基础计算机硬件技术基础2024年3月19日第38页PUSH AX 82000H81FFFH81FFEH81FFDH81FFCH(SP)(SP)(SP)SP1 SPAH (SP)SP1 SPAL (SP)AX=8000H3 E4 A8 00 0计算机硬件技术基础计算机硬件技术基础2024年3月19日第39页POP AX 82000H81FFF
展开阅读全文