如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
会计学一、8086的指令格式(géshi)和寻址方式(一)、指令(zhǐlìng)格式3、二地址(dìzhǐ)指令格式二、8086的寻址方式(fāngshì)(二)、8086的寻址方式(fāngshì)1、立即(lìjí)数寻址操作数就在指令中提供,叫立即(lìjí)数寻址方式。例:MOVAL,15H2、寄存器寻址操作数在CPU内部的寄存器中,指令(zhǐlìng)中指定寄存器号例:MOVDI,AXINCCX;将CX的内容(nèiróng)加1ROLAH,1;将AH中的内容(nèiróng)循环左移一位(1)直接(zhíjiē)寻址操作数的16位有效地址在指令中物理地址=(DS)×16+EA例:MOVAX,[205AH](2)间接(jiànjiē)寻址:操作数的有效地址在寄存器BX,BP或变址寄存器SI,DI中例如(lìrú):MOVAX,[BX](3)相对寻址:操作数的有效地址由基址(jīzhǐ)寄存器BX,BP或变址寄存器SI,DI之一中的内容加上指令中指定的8位或16位位移量组成。例:MOVAX,COUNT[SI]例如(lìrú):MOVAX,20H[BX](4)基址变址寻址:操作数的有效地址(dìzhǐ)是指令中指定的基址寄存器(BX或BP)和变址寄存器(SI或DI)之和。例如(lìrú):MOVAX,[BX][SI](5)相对基址变址寻址:操作数的有效(yǒuxiào)地址是指令中指定的基址寄存器(BX或BP)和变址寄存器(SI或DI)与一个8位或16位位移量之和。例如(lìrú):MOVAX,10H[BX][SI]例如(lìrú):MOVAX,MASK[BX][DI]设(DS)=2000H,(SS)=3000H(BX)=1100H,(DI)=0010H,(SI)=0030HMASK=0203H,(21313H)=1234H(31313H)=2356H,(21333H)=0056H则:指出下列(xiàliè)指令中源操作数和目的操作数的寻址方式1.MOVAX,1002.MOV[SI],AX3.MOVCX,DATX[SI]4.ADDAX,[BX][DI]5.ANDAX,BX6.MOVAX,TAX[BX][SI]7.SUBAX,[2500H]二、8086的指令系统(zhǐlìnɡxìtǒnɡ)1、数据(shùjù)传送:负责把数据(shùjù)、地址或立即数送到寄存器或存储单元中。传送(chuánsònɡ)路径MOV指令(zhǐlìng)的几种形式堆栈操作指令(zhǐlìng)堆栈是在存储器中开辟的一个栈区。工作方式:“后进先出”的方式进行8086的堆栈是从高地址向低地址方向生长的堆栈操作:在CALL指令、RET指令、中断(zhōngduàn)响应和返回中都有入栈和出栈的操作。例如(lìrú):PUSHAX设执行前(SP)=2500H,SS=5000H,(AX)=3125H交换(jiāohuàn)指令:XCHG例如(lìrú):XCHGAX,BX执行前:AX=420AH,BX=7955H执行后:AX=7955H,BX=420AH例如(lìrú):XCHGDX,[BP][SI]可变端口输入数据格式:INAL/AX,DX;功能:从DX寄存器所存放的端口地址中送一个(yīɡè)字节或一个(yīɡè)字数据到AL或AX寄存器OUT指令(zhǐlìng)输出指令(zhǐlìng)格式:OUTPort,AL/AXOUTDX,AL/AX例如:INAX,21HINAL,DXOUT25H,AXOUTDX,AX(3)地址-目的传送指令(zhǐlìng):把地址送到指定的寄存器中LEA指令(zhǐlìng):例如(lìrú):LEACX,[BX][DI]执行前(BX)=1000H,(DI)=0250H(1)加法(jiāfǎ)指令:ADDADCINC(1)加法(jiāfǎ)指令:ADDADCINC例如:在存储区中有两个双字数据,分别存放在FIRST和SECOND单元(dānyuán)中(四个字节)将两个数相加后结果放在THIRD单元(dānyuán)中相关程序(chéngxù)如下:(1)加法(jiāfǎ)指令:ADDADCINC(2)减法(jiǎnfǎ)指令:SUBSBBDECCMP(2)减法(jiǎnfǎ)指令:SUBSBBDECCMP(2)减法(jiǎnfǎ)指令:SUBSBBDECCMP(2)减法(jiǎnfǎ)指令:SUBSBBDECCMP例如(lìrú):CMPAX,BX(3)乘法(chéngfǎ)指令:MULIMUL(3)乘法(chéngfǎ)指令:MULIMUL(4)除法(chúfǎ)指令:DIVIDIV(4)除法(