微机原理与接口技术(第2版)第03章 8086的指令系统.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:67 大小:426KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

微机原理与接口技术(第2版)第03章 8086的指令系统.ppt

微机原理与接口技术(第2版)第03章8086的指令系统.ppt

预览

免费试读已结束,剩余 57 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第三章8086的指令系统3.18086指令特点3.28086的寻址方式寻址方式就是指令中用于说明操作数所在地址的方法MOVAX,1234H;B83412MOVAX,[1234H];A13412一、8086的寻址方式说明2、MOV数据传送指令其格式为:MOV目的操作数,源操作数目的操作数和源操作数均可采用不同的寻址方式,两个操作数的类型必需一致。二、寻址方式介绍2、寄存器寻址(Registeraddressing)操作数在寄存器中,指令中源操作数和目的操作数都可用这种寻址方式。例:MOVAL,BL88D8MOVAX,1234HB83412MOVAL,AH88E03、直接寻址(Directaddressing)当指令中的源操作数或目的操作数,采用直接给出被访问内存单元的逻辑地址时,这种寻址方式称直接寻址。例:MOVAX,[3E4CH]A14C3EMOV[1234H],ALA234124、寄存器间接寻址(Registerindirectaddressing)内存单元的逻辑偏移地址通过寄存器间接给出。例:MOVSI,61A8HMOVDX,[SI]5、基址/变址寻址(Based/Indexedaddressing)这种寻址方式中提出位移量的概念,即在寄存器间接寻址给出的偏移地址上,加一相对位移量。位移量是一带符号的16位16进制数。当使用BX或BP寄存器时,称基址寻址;使用SI或DI寄存器时,称变址寻址。例:MOVCX,36H[BX]MOV-20[BP],AL6、基址加变址寻址(BasedIndexedaddressing)它的EA是由三部分组成的,基址寄存器BX或BP的内容加上变址寄存器的内容再加位移量。物理地址由基址寄存器按规则选择段寄存器,也可以使用段超越。例:MOVAX,8AH[BX][SI]该例中EA=8AH+BX+SI物理地址=DS×10H+8AH+BX+SIB、串寻址(Stringaddressing)串寻址方式仅在8086的串指令中使用。规定源操作数的逻辑地址为DS:SI;目的操作数的逻辑地址为ES:DI。当执行串指令的重复操作时,根据设定的方向标志DF,SI和DI会自动调整。总结--段约定c、I/O(输入/输出)端口寻址(I/Oportaddressing)当操作数在外部设备时,使用I/O指令。此时有两种不同的寻址方式访问I/O端口。(1)直接端口寻址方式。(2)采用DX寄存器间接寻址方式(3)输入指令中目的操作数可为AL或AX;输出指令中源操作数可为AL或AX。例:INAL,25HE525HMOVDX,3E4HOUTDX,ALEEALAX3.38086的指令格式及数据类型一、指令中的操作数2、双操作数指令指令助记符指令的16进制代码MOVAL,04B004HMOVAX,04B804003、三个操作数指令8086指令系统中,大多数指令中只有1-2个操作数,但也有少数指令中有3个操作数,不过有一操作数隐含在操作码中。例:ADCAX,BX该指令完成操作数AX、BX和CF位相加。二、指令中的数据类型3.48086的指令集一、数据传送指令指令的共同特点是:常用的符号1、通用数据传送指令2)PUSH进栈指令指令格式为:PUSHoprdOprd:r,mem,seg其操作过程是:a、SP-2,指示堆栈中可以存放数据的位置b、存源操作数,完成进栈操作。3)POP出栈指令指令格式为:POPopedOped:r,mem,seg(不包括CS!!!)其操作过程是:a、将SS:SP所指示的栈顶处的两个字节的数据,弹到目的操作数中;b、SP+2,指示当前栈顶位置,完成出栈操作。4)XCHG交换指令指令格式为:XCHG目的操作数,源操作数XCHGR,OPRDOPRD:R,MEM操作数不能为立即数;源和目的不能同时为存储单元;段寄存器不能作为操作数。2、累加器专用传送指令3)XLAT换码指令指令格式为:XLAT功能[bx+al]->al例:查表求n的平方。n:[0-9]1、将0-9的平方表建立在偏移地址为2000H的内存中,如图。2、查表完成求5的平方指令序列为:MOVBX,2000H;指向平方表的首地址MOVAL,5;将5换码成5的平方值XLAT;查表,平方值在AL中3、目标地址传送指令这类指令有:1)LEA有效地址传送到寄存器2)LDS装入一个新的物理地址3)LES装入一个新的物理地址4、标志寄存器传送指令1)LAHFFR