- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 8086寻址方式与指令系统
第三章 8086的寻址方式和指令系统; 指令有单操作数、双操作数和无操作数之分。如果是双操作数指令,要用逗号将两个操作数分开,逗号右边的操作数称为源操作数,逗号左边的为目的操作数。; ;8086的寻址方式;一、立即寻址方式;二、寄存器寻址方式;
;;2.段超越前缀
如果要对代码段、堆栈段或附加段寄存器所指出的存储区进行直接寻址,应在指令中指定段超越前缀。;3.符号地址(变量名)
在汇编语言中还允许用符号地址代替数值地址,实际上就是给存储单元起一个名字,这样,要与这些单元打交道,只要使用其名字即可,不必记住具体数值是多少。例如MOV AX,AREA1这里的AREA1就是操作数的符号地址,该指令执行后,将从有效地址为AREA1的存储单元中取出一个字送到AX中去。;四、寄存器间接寻址方式; 例如 MOV BX,[SI]
设DS=1000H,SI=2000H,(12000H)=3456H
则物理地址=DS×16+SI
=10000H+2000H
=12000H
此指令的功能就是(12000H)字→BX,因此指令执行后BX=3456H。执行过程如下图所示。;指令MOV BX,[SI]的执行过程; 例如指令MOV AX,[BP],则默认操作数在堆栈段中,操作数的物理地址=SS×16+BP。
设SS=4000H,BP=1000H,(41000H)=5678H
则物理地址=SS×16+BP
=40000H+1000H
=41000H
此指令的功能就是(41000H)字→AX,因此指令执行后AX=5678H。执行过程如下图所示。;指令MOV AX,[BP]的执行过程; 寄存器间接寻址方式的指令中也可以指定段超越前缀来从默认段以外的段中取得数据,如:
MOV BX,DS:[BP]
物理地址=DS×16+BP
MOV AX,ES:[DI]
物理地址=ES×16+DI;五、寄存器相对寻址方式
操作数的有效地址是一个基址或变址寄存器的内容与指令中指定的8位或16位位移量之和。这种寻址方式与寄存器间接寻址十分相似,主要区别是前者在有效地址的基础上还要加一个位移量。同样,当指令中指定的寄存器是BX,SI或DI时,默认的段寄存器是DS,当指定寄存器是BP时,默认的段寄存器是SS。;指令MOV BX,COUNT[SI]的执行过程;六、基址变址寻址方式
操作数的有效地址是一个基址寄存器(BX或BP)和一个变址寄存器(SI或DI)的内容之和,两个寄存器均由指令指出。
若基址寄存器BX时,段寄存器用DS;
若基址寄存器BP时,段寄存器用SS。;指令MOV AX,[BX][SI]的执行过程;七、相对基址变址寻址方式
操作数的有效地址是一个基址寄存器(BX或BP)和一个变址寄存器(SI或DI)的内容,再加上指令中指定的8位或16位位移量之和。
若基址寄存器BX时,段寄存器用DS;
若基址寄存器BP时,段寄存器用SS。;指令MOV AX,MASK[BX][SI]的执行过程; 从以上这些寻址方式可以看到,在涉及到操作数的地址时,常常要在指令中使用方括号,有关带方括号的地址表达式必须遵循下列规则:;③由于方括号有相加的含义,下面几种写法都是等价的:
6[BX][SI]
[BX+6][SI]
[BX][SI+6]
[BX+SI+6];八、其它寻址方式;3.一条指令有几种寻址方式
前面介绍的各种寻址方式都是针对源操作数的,目的操作数均用寄存器来表示。实际上,目的操作数也可以除立即寻址方式以外的所有寻址方式指定。;作业:P120(1,2,3)
其中1(1),(3),(5)
2(2),(4),(6)
3 (2),(4),(6)
(8),(10);3-2 指令的机器码表示方法; 通常,计算机用户采用汇编语言编写
程序时,一般可不必了解每条指令的机器
码。不过,若要透彻了解计算机的工作原
理,以及能看懂包含机器码的程序清单,
对程序进行正确的调试、排错等,就需要
熟悉机器语言。所以我们要简单介绍一下
机器语言指令的基本概念和编码方式。
2.机器语言指令的编码特点
对于Z80、8085等8位微处理器,进行
指令编码是很容易的事,只要有一张指令
编码表,汇编语言源程序与机器码之间的;对应关系就一目了然,很容易通过查表求
出每条指令的机器码。但对于8086系统来
说,由于其很多种寻址方式,很难列出一
张8086指令与机器语言的对照表。但我们
可以为每种基本指令类型给
您可能关注的文档
最近下载
- 蒸压加气混凝土砌块施工技术课件.ppt VIP
- 沥青路面再生利用项目可行性研究报告项目建议书.docx
- 医学课件-老年卧床患者压力性损伤的预防和护理进展.pptx
- 电力系统经济学原理习题解答 全.doc VIP
- 数据中心机房工程施工组织设计方案.pptx VIP
- 传统文化与修身(鲁东大学)知到智慧树章节答案.docx VIP
- 湖南文艺出版社(2024)新教材小学二年级音乐上册第五课《草原就是我的家》精品课件.pptx VIP
- 益智课堂数字华容道教学课件.pptx VIP
- (2025秋新版)部编版二年级道德与法治上册《第8课 我为班级作贡献》教案.docx VIP
- 尼科尔森《微观经济理论-基本原理与扩展》(第9版)课后习题详解(第18章--不确定性和风险厌恶).doc VIP
文档评论(0)