




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
入栈(PUSH)指令格式:PUSHSRC
其中:SRC源操作数可以是16位的寄存器或存储器。功能:PUSH指令可以将寄存器及存储器中的一个字放入栈顶。执行操作:
16位指令:SP←SP-2[SP+1,SP]←SRC
出栈(POP)指令格式:POPDST
其中:DST:目的操作数则必须是16位寄存器或存储器。功能:将现行的SP所指栈顶的一个字传到寄存器或存储器中。执行操作:16位指令:DST←[SP+l,SP]SP←SP+2【例1】设AX=1234H,SP=0100,请画出执行PUSHAX前后的堆栈图,执行这条指令后SP=?执行步骤:SP=SP_2;[SP+1,SP]←AX【例2】设堆栈指针SP的初值为2000H,SS=1000H,AX=3000H,BX=5000H1)执行指令PUSHAX后SP=?
2)接着再执行PUSHBX及POPAX后SP=?AX=?BX=?并画出堆栈变化示意图。答:执行完PUSHAX后SP=1FFEH,执行完PUSHBX;POPAX后SP=1FFEH,AX=5000H,BX=5000H
在堆栈变化示意图中的地址用物理地址来描述的,也可以用逻辑地址描述。
(4)交换指令(XCHG)指令格式:XCHGDST,SCR功能:把一个字或一个字节的源操作数与目的操作数进行交换。执行操作:DST←→SCR【例3】XCHGAX,BX;通用寄存器间互换,字互换XCHGAL,BL;字节互换XCHGWORD_LOC,DX;存储器与通用寄存器互换,字互换XCHGDL,BYTE_LOC;字节互换
2.累加器专用传送指令XLAT换码指令这组指令只限于使用累加器AX或AL传送信息。换码指令:XLATSCR在执行XLAT之前,先要将字节表的首地址送入BX,将表的相对值(即[BX+AL]的内容)送入AL。指令执行操作:16位指令:AL←[BX+AL][例4]将表S_TAB中第4个字节的内容取出到AL中。
MOVAL,4;要找的字节序号送AL中
MOVBX,OFFSETS_TAB;将S_TAB的偏移地址送BXXLATS_TAB;;取值执行后,AL=FFH,如下图所示.
3.地址传送指令
LEA取有效地址LDS取地址指针到DSLES取地址指针到ESLSS取地址指针到SS(1)有效地址传送指令(LEA)指令格式:LEAreg,mem
指令功能:将源操作数的有效地址→reg【例5】取符号地址(或变量)XWORD的偏移地址送BX寄存器中。
xword
dw1234H;现假设xword的偏移地址为2000H方法1:用LEA指令;LEABX,XWORD
方法2:用OFFSET伪操作符;
MOVBX,OFFSETXWORD
(2)地址指针传送指令(LDS、LES、LSS)指令格式:LDS(/LES/LSS)reg
,mem指令功能:将存储器mem中的双字内容依次送入寄存器reg和段寄存器DS(或ES、SS)中。执行操作:
mem低位字→reg,
mem高位字→DS(或ES、SS)【例6】设变量X为字节变量,该字节中存放字符‘F’的ASCII码,变量Y是双字变量,该变量中存放X的段地址和偏移地址,请通过Y变量取出X变量的值,送AL中。
XDB‘F’
;X为字节变量,该字节中存放字符‘F’YDDX;Y的低字为X的偏移地址,;Y的高字为X的所在段的段地址。
LDSBX,Y;将Y的低位字(
即X的偏移地址)送BX,BX=1000H,;将Y的高位字(
即X的段地址)送DSMOVAL,[BX];‘F’送AL中【例7】设DS=2000H,BX=0502H,(20502H)=0666H,(20504H)=0888H;执行LSSBP,[BX];后BP=?,SS=?答:执行LSSBP,[BX]后BP=0666H,SS=0888H;
4.标志寄存器传送指令标志送AH(LAHF)AH送标志寄存器(SAHF)标志进栈(PUSHF)标志出栈(POPF)(1)LAHF标志送AH指令指令格式:LAHF
指令功能:将标志寄存器的低8位送到AH中。指令本身不影响标志。执行操作:AH←FLAGS的低字节(2)SAHFAH送标志寄存器指令指令格式:SAHF
指令功能:把寄存器AH的内容传送到标志寄存器的低8位。
执行操作:FLAGS的低字节←AH(3)PUSHF标志进栈指令指令格式:PUSHF指令功能:16位标志寄存器进栈。指令不影响标志。执行的操作:PUSHF:SP←SP-2;先移动栈指针[SP+l,SP]←FLAGS后将16位标志寄存器的内容进栈(4)标志出栈指令(POPF)指令格式:POPF指令功能:16位标志寄存器出栈。执行的操作:POPF:FLAGS←[SP+l,SP];先将堆栈中SP所指的字单元内容弹出到16位标志寄存器中
SP←SP+2;后移动栈指针,使SP指向栈顶
5、类型转换指令CBW字节转换为字CWD字转换为双字本组指令均不影响标志位(1)CBW字节转换为字指令格式:CBW其中:该指令是无操作数指令,源操作数为AL,对应目的操作数为AX指令功能:将AL的内容符号扩展到AH中,形成AX中的字。执行的操作:如果(AL)的最高有效位为0,则(AH)=0;如果(AL)的最高有效位为1,则(AH)=0FFH(2)CWD字转换为双字指令格式:CWD其中:该指令是无操作数指令,源操作数为AX,对应目的操作数为DX:AX。指令功能:CWD将AX的内容符号扩展到DX中形成DX:AX中的双字。执行的操作:CWD如果(AX)的最高有效位为0,则(DX)=0;如果(AX)的最高有效位为1,则(DX)=0FFFFH算术运算指令算术运算指令,主要分为二进制数运算和十进制数运算指令,它包括加、减、乘除等指令。算术运算的主要对象是二进制算术运算指令,8088/8086的指令操作数可以是8位或16位,(1)加法指令指令格式:ADDdst,src指令功能:目的操作数加源操作数,结果存入目的操作数中。
dst←(dst)+(src)受影响的状态标志位:OF,SF,ZF,AF,PF,CF说明:dst和src不能同时为存储器操作数。例:ADDAL,3ADDGAMA[BP][DI],BLADD[BP+DI+OFFSETGAMA],BL(2)带进位加法指令(ADC)指令格式:ADCdst,src指令功能:目的操作数加源操作数再加进位标志CF,结果存入目的操作数中。
dst←(dst)+(src)+(CF)受影响的状态标志位:OF,SF,ZF,AF,PF,CF例:ADCAL,3ADCDX,[BX+10](3)INC加1指令指令格式:INCOPR操作:将指定的操作数OPR加1,并将结果回送到目标操作数中。(OPR)←(OPR)+1例:INCAL
INCBX
2、减法指令(1)减法(SUB)指令格式:SUBdst,src指令功能:从目的操作数减去源操作数,结果存入目的操作数中。(dst)←(dst)-(src)例:SUBAL,10HSUBAL,[BX+10H]SUBAL,AL(2)带借位的减法指令指令格式:SBBdst,src指令功能:目的操作数中减去源操作数和CF,结果存入目的操作数中。(dst)←(dst)-(src)-CF说明:SBB指令主要用于多精度数据减法。例:SBBAL,0SBBDL,CL(3)DEC减1指令指令格式:DECOPR指令功能:将指定的操作数减1,并将结果送回到目标操作数中。(OPR)←(OPR)-1例:DECBXDECBYTEPTR[BX+SI+1000H]DECSP(4)求补指令(NEG)指令格式:NEGOPR指令功能:操作数按位求反,末位加1后,结果送回到操作数中。(OPR)←-(OPR)说明:NEG指令对于带符号的数来说是取负,即改变操作数的符号.例:NEGAXNEGBYTEPTR[BX+10](5)比较指令(CMP)指令汇编格式:CMPORP1,ORP2指令功能:ORP1减去ORP2,结果不保存。只是根据结果设置条件标志位。
(OPR1)-(OPR2)受影响的状态标志位:OF,SF,ZF,AF,PF,CF说明:CMP将两个操作数相减,两个操作数保持原值不变,但与SUB指令一样影响标志。例:CMPAL,BLCMPDL,10H1、DST、SRC、OPR可以是字节,字、双字(32位以上机型)操作,但类型要一致。2、标志寄存器主要影响:AF、CF、OF、PF、SF和ZF,在加减运算中主要分析的是ZF、SF、CF和OFZF:运算结果为0则ZF=1(ZR);运算结果不为0则ZF=0(NZ)。SF:运算结果最高位为1则SF=1(PL)是负数,最高位为0则SF=0(NG)是正数。CF:加法有进位(减法是借位)则CF=1(CY),加法无进位(减法无借位)则CF=0(NC)。OF:带符号数的溢出标志,;OF=1(OV),否则OF=0(NV)。乘除法指令(1)无符号乘法指令与有符号乘法指令(MUL/IMUL)指令格式:MUL/IMULSRC
其中:指令中的操作数为源操作数,可以是寄存器或存储器,目的操作数为隐含操作数,该指令是单操作数指令。指令功能:目的操作数(为隐含操作数,该操作数只能是AL或AX)乘源操作数(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 快递行业司机劳动合同范本
- 2025正规产品交易合同
- 装饰公司员工保密协议
- 2025购车贷款合同样本
- 2025农产品养殖生产销售合同书
- 2025买卖合同与租赁合同的联系与区别
- 电脑供货协议书样板
- 婚前单独旅行协议书
- Unit 9 From Here to There 第二课时Exploring the Topic(含答案)仁爱版2024七下英语日清限时练
- 2025年03月山东大学微生物改造技术全国重点实验室史大永团队公开招聘笔试历年典型考题(历年真题考点)解题思路附带答案详解
- “条令条例学习月”主题授课课件
- 海洋生态环境监测技术-全面剖析
- 2024年湖北省中学教师招聘考试真题
- 卫星科普知识
- 档案管理实务与技能试题及答案2024
- 北京市朝阳区2025届高三一模质量检测一 语文试题(含答案)
- 新教材高中生物选择性必修2课件:1 2 种群数量的变化(人教版)
- 车辆租赁服务保障计划
- 《装配式混凝土建筑》全套教学课件
- 交通运输企业会计制度
- 张矿集团人才发展规划
评论
0/150
提交评论