网站大量收购独家精品文档,联系QQ:2885784924

第五讲186系列微型计算机指令系统.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
① 压栈指令 PUSH src ; src为16位操作数 例:PUSH AX ;将AX内容压栈 执行操作:(SP)-1←高字节AH (SP)-2←低字节AL (SP)←(SP)- 2 设(AX)=1020H,执行示意图 低地址 存储区 (SS段) 执行前 (AX)=1020 (SP) 存储区 (SS段) 进栈方向 执行后 20 10 (AL) (AH) PUSH AX指令执行示意图 (SP)-2 (SP) 高地址 低地址 高地址 (SP)-1 压栈指令的格式为: PUSH mem/reg/segreg 例如: PUSH AX PUSH [BX] PUSH DS 注意进栈方向是高地址向低地址发展。 ② 弹出指令 POP dest 例:POP BX ;将栈顶内容弹至BX 执行操作:(BL)←(SP) (BH)←(SP)+1 (SP)←(SP)+2 POP BX 的执行示意图如下图所示 低地址 存储区 (SS段) 出栈方向 执行前 20 10 POP BX指令执行示意图 (SP) 存储区 (SS段) 执行后 (BX)=1020 (SP) (SP)+1 (SP)+2 BX 20 10 高地址 低地址 高地址 堆栈指令使用时应注意几点: ①堆栈操作总是按字进行 ②不能从栈顶弹出一个字给CS ③堆栈指针为SS:SP,SP永远指向栈顶 ④SP自动进行增减量(-2,+2) 1、已知SP=8000H,执行PUSH SI指令后,SP的内容是( ) A.8002H B.7FFEH C.7998H D.7FFFH B (2004,重庆大学) 2、设当前SP=2400H,AX=4000H,BX=3600H。则执行以下指令后,SP=( ),AX=( ),BX=( )。 PUSH AX PUSH BX POP AX (2002,北京航空航天大学) 23FEH 3600H 3600H 格式:XCHG reg,mem/reg 功能:交换两操作数的内容。 要求:两操作数中必须有一个在寄存器中; 操作数不能为段寄存器和立即数; 源和目地操作数类型要一致。 举例: XCHG AX,BX XCHG [2000],CL 3.交换指令XCHG 4.查表指令XLAT 执行的操作:AL←[(BX)+(AL)] 又叫查表转换指令,它可根据表项序号查出表中对应代码的内容。执行时先将表的首地址(偏移地址)送到BX中,表项序号存于AL中。 例如:内存数据段有一张16进制数的ASCII码表,设首地址为2000H,如欲查出表中第11个代码(代码序号从0开始)即十六进制数B的ASCII码。ASCII表在DS段中,并假设(DS)=4000H。见下页图。 30 31 32 ... 39 41 42 ... 45 46 ... 42000H+0 42000H+11 ‘0’ ‘1’ ‘2’ ‘9’ ‘A’ ‘B’ ‘E’ ‘F’ 十六进制数ASCII码表 存储器 则可用如下几条指令实现: MOV BX,2000H ;(BX)←表首地址 MOV AL,0BH ;(AL)←序号 XLAT ; 查表转换 执行后得到:(AL)= 42H = ’ B’ 注意:转换表长度最大为256个表项(字节)。 共有三条: 格式:LEA reg,mem ; 将指定存储器的16位偏移 地址送指定寄存器 LDS reg, mem32; DS:reg←(mem开始的四 个内存单元) LES reg, mem32; 同上,但DS改为ES 要求源操作数必须是一个内存操作数,目的操作数必须是一个16位的通用寄存器。 5. 地址传送指令 设:(SI)=1000H 则执行该指令后,(BX)=1010H 注意以下两条指令差别: LEA BX,[1000H] MOV BX,[1000H] 前者表示将符号地址为[1000H]的存储单元的偏侈地址取到 BX中;后者表示将[1000H]存储单元中的内容取到 BX中. 例:LEA BX,[SI+10

文档评论(0)

wx171113 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档