第3部分80x86指令系统和寻址方式培训讲学.ppt 立即下载
2024-12-04
约1.1万字
约148页
0
742KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

第3部分80x86指令系统和寻址方式培训讲学.ppt

第3部分80x86指令系统和寻址方式培训讲学.ppt

预览

免费试读已结束,剩余 143 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第3章80x86指令系统和寻址方式3.1指令系统的基本概念操作码说明计算机要执行哪种操作,如传送、运算、移位、跳转等操作,它是指令中不可缺少的组成部分。指令的功能——该指令能够实现何种操作。通常指令助记符就是指令功能的英文单词或其缩写形式。
指令支持的寻址方式——该指令中的操作数可以采用何种寻址方式。
指令对标志的影响——该指令执行后是否对各个标志位(OV、Z、C、P等)有影响,以及如何影响。指令助记符体现该指令的功能,它对应一条二进制编码的机器指令。
指令的操作数个数由该指令确定,可以没有操作数,也可以有一个、二个或三个操作数。3.2.3与数据有关的寻址方式1)立即寻址方式【例3.1】MOVAX,4576H执行后(AX)=?2)寄存器寻址方式指令中可以引用的寄存器及其符号名称如下:
8位寄存器有:AH、AL、BH、BL、CH、CL、DH和DL等;
16位寄存器:AX、BX、CX、DX、SI、DI、SP、BP和段寄存器等;【例3.2】下列程序执行后,(AX)=?,(BX)=?
MOVAX,1234H
MOVBX,5678H
ADDAX,BX3)直接寻址方式【例3.3】执行指令:MOVBX,[1234H]
设(DS)=2000H。执行后:(BX)=?在通常情况下,操作数存放在数据段中,所以,其物理地址将由数据段寄存器DS和指令中给出的有效地址直接形成,但如果使用段超越前缀,那么,操作数可存放在其它段。
例如:MOVES:[1000H],AX注意:立即寻址方式和直接寻址方式的书写格式不同,直接寻址的地址要写在括号“[”,“]”内。在程序中,直接地址通常用内存变量名来表示,如:MOVBX,VARW,其中,VARW是内存字变量。
试比较下列指令中源操作数的寻址方式(VARW是内存字变量):4)寄存器间接寻址方式【例3.4】假设有指令:MOVBX,[DI],在执行时,(DS)=1000H,(DI)=2345H,存储单元12345H的内容是4354H。问执行指令后,BX的值是什么?在不使用段超越前缀的情况下,有下列规定:
若有效地址用SI、DI和BX等之一来指定,则其缺省的段寄存器为DS;
若有效地址用BP来指定,则其缺省的段寄存器为SS(即:堆栈段)。
该寻址方式物理地址的计算方法如下:
BX
物理地址PA=16×DS+SI
			DI
或
物理地址PA=16×SS+BP作业
教材P107
3.1
3.2
3.41)2)3)5.寄存器相对寻址方式~
~【例3.5】假设指令:MOVBX,[SI+100H],在执行它时,(DS)=1000H,(SI)=2345H,内存单元12445H的内容为2715H,问该指令执行后,BX的值是什么?

解:EA=(SI)+100H=2345H+100H=2445H
PA=(DS)*16+EA=1000H*16+2445H=12445H。

所以,该指令的执行效果是:
把从物理地址为12445H开始
的一个字的值传送给BX。
6.基址变址寻址方式【例3.6】假设指令:MOVBX,[BX+SI],在执行时,(DS)=1000H,(BX)=2100H,(SI)=0011H,内存单元12111H的内容为1234H。问该指令执行后,BX的值是什么?

解:操作数的物理地址PA为:
PA=(DS)*16+(BX)+(SI)
=1000H*16+2100H+0011H=12111H

所以,该指令的执行效果是:
把从物理地址为12111H开始
的一个字的值传送给BX。7.相对基址变址寻址方式【例3.7】假设指令:MOVAX,[BX+SI+200H],在执行时,(DS)=1000H,(BX)=2100H,(SI)=0010H,内存单元12310H的内容为1234H。问该指令执行后,AX的值是什么?

解:该操作数的物理地址应由DS和EA的值形成,即:
PA=12310H

所以,该指令的执行效果是:
把从物理地址为12310H开始
的一个字的值传送给AX。
跨段越问题3.1.2与转移地址有关的寻址方式(1)段内直接寻址【例3.8】
(1)JMPSHORTQUEST
其中QUEST表示转移的符号地址,操作符SHORT表示是个8位带符号数,数的范围是80H~7FH,即-128~+127。它只能相对于当前IP(转移指令的下一条指令的首地址)所指的位置作-128~+127范围内跳转,所以称为短跳转。

(2)JMPNEARPTRPROGA
其中PROGA表示转移的符号地址,操作符NEARPRT表示是个16位带符号数,数的范围是8000H~7FFFH,即-32768~+32767。它只能相对于当前IP所指的位置作-32768~+32767范围内跳转,所以称为近跳转。(2)段内间接寻址【例3.9】
已知TABLE=20A2H,(BX
查看更多
王子****青蛙
实名认证
内容提供者
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

第3部分80x86指令系统和寻址方式培训讲学

文档大小:742KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用