- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 8086/8088寻址方式和指令系统 3.1 8086/8088指令的构成 3.1.1 指令的种类 汇编指令的构成规则并不是随意确定的,是根据机器指令代码的构成规则演变而来的。 (1)双操作数指令 格式:OPR DEST, SRC OPR 操作助记符,说明指令功能 DEST 目的操作数地址 SRC 源操作数或源操作数地址 8086/8088指令系统中的指令最大只能支持两个操作数,而且位于内存中的操作数最大只能有一个。 例1.简要说明以下双操作数指令的格式 MOV AX, BX 数据传送指令 功能: AX <=( BX ) MOV 操作助记符 AX 目的操作数地址 BX 源操作数地址 ADD AX, BX 加法指令 功能: AX <=( AX )+( BX ) ADD 操作助记符 AX 既是源操作数地址,又是目的操作数 地址 BX 是源操作数地址。 SUB BX, 157 减法指令 功能: BX <=( BX )-157 SUB 操作助记符 BX 既是源操作数地址又是目的操作数地址 157 源操作数(操作数,不是操作数地址), 立即数是在指令代码中的数据,CPU取得这个数据是直接在指令队列中读取的。 (2)单操作数指令 单操作数汇编指令的格式:OPR DEST OPR是操作助记符,说明指令的功能 DEST是源操作数地址,可能同时也是目的操作数地址。 例2.简要说明下面单操作数指令的格式 NEG AX 求相反数指令 功能: AX = -( AX ) NEG 操作助记符 AX 既是源操作数地址,又是目的操作数 地址。 PUSH AX 压栈指令 功能:SP<=(SP)-2 (SP)<=(AX) PUSH 操作助记符 AX 源操作数地址 目的操作数是隐含的,是堆栈段当前栈顶之上的那个字单元。 (3)无操作数指令 无操作数汇编指令的格式:OPR OPR是操作助记符,说明指令的功能 无操作数指令可能真的没有操作数,但是也可能有隐含的操作数。 例3 简要说明下面无操作数指令的格式 CLC 清除CF标志指令 CF <= 0 CLC 操作助记符 指令格式中没有任何操作数,隐含使用的操作数地址为FR中的CF标志位。 NOP 空操作指令 功能:什么操作也不做,只是让CPU空转三个时钟周期(节拍)。 在汇编语言程序中,空操作指令可用于延时,也可以用在调试程序时清除其它指令的最好工具。 POPF 功能:出栈数据送到标志寄存器FR 指令中没有显式的操作数,隐含操作数地址为标志寄存器和栈顶字单元。 3.1.2 指令的寻址方式 指令的寻址方式是指指令获取操作数的方式, 寻址方式总是针对具体某个操作数而言的,如果一条指令中各个操作数的寻址方式不同,那么这条指令就同时具有多种寻址方式。 (1)寄存器寻址(Register Addressing) 如果一条指令中的某个操作数地址是寄存器,那么称该指令按照寄存器寻址获取该操作数。 例1. 指令中使用寄存器寻址方式获取操作数 MOV AX,BX AX<=(BX) BX为源操作数地址,AX为目的操作数地址,两个操作数地址均为寄存器,寻址方式均为寄存器寻址。 MOV DS,AX 功能:DS<=(AX) AX为源操作数地址,DS为目的操作数地址,两个操作数的寻址方式均为寄存器寻址。 寄存器寻址的特点:寄存器在CPU内部,不需要执行总线周期,对操作数的读写速度会很快。 (2)立即数寻址(Immediate Addressing) 如果指令所需要的操作数直接在指令代码中,称指令按照立即数寻址方式获取该操作数(参见P33的图3-2) 。 立即数寻址方式只能针对源操作数,不能针对目的操作数,因为立即数是数据本身,不是存储单元地址。 例2. 在指令中使用立即数寻址方式获取源操 作数 MOV CX,0B3CAH CX<=0B3CAH 0B3CAH是源操作数,寻址方式为立即数寻址,CX为目的操作数地址,寻址方式为寄存器寻址。 MOV AL,25 AL<=25 25是源操作数,寻址方式为立即数寻址, AL为目的操作数地址,寻址方式为寄存器寻址。 MOV BX,“AB” 把A、B两个字符的ASCII码保存到寄存器BX中, “AB”字符串为源操作数,寻址方式为立即数寻址, BX为目的操作数地址,寻址方式为寄存器寻址。 (3)存储器寻址 寄存器寻址针对的操作数在寄存器中,不是针对内存操作数 立即数寻址针对的操作数在指令中,不能把它和一般的内存操作数混淆起来。 这里讨论的存储器寻址,就是主要讨论偏移量的各种构成方法。总
您可能关注的文档
最近下载
- 初三数学二次根式测试题目一二.doc VIP
- 高考物理公式大全.doc VIP
- 《心肺复苏术》PPT课件ppt.pptx VIP
- 2023-2025高考英语高频词汇汇编(打印背诵版).pdf
- 5.1 社会历史的本质 课件(共34张PPT)(含音频+视频).pptx VIP
- 让蕲艾走向世界详细资料.ppt VIP
- 家政保洁企业发展规划经营计划.pptx VIP
- 局限性脑炎多学科决策模式中国专家共识(2025版).docx VIP
- 中国成人急性呼吸窘迫综合征(ARDS)诊断与非机械通气治疗指南(2023)解读PPT课件.pptx VIP
- 2023中国成人急性呼吸窘迫综合征(ARDS)诊断与非机械通气治疗指南(完整版).pdf VIP
文档评论(0)