汇编语言指令2.docx

上传人:b****8 文档编号:28821607 上传时间:2023-07-20 格式:DOCX 页数:12 大小:261.11KB
下载 相关 举报
汇编语言指令2.docx_第1页
第1页 / 共12页
汇编语言指令2.docx_第2页
第2页 / 共12页
汇编语言指令2.docx_第3页
第3页 / 共12页
汇编语言指令2.docx_第4页
第4页 / 共12页
汇编语言指令2.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

汇编语言指令2.docx

《汇编语言指令2.docx》由会员分享,可在线阅读,更多相关《汇编语言指令2.docx(12页珍藏版)》请在冰豆网上搜索。

汇编语言指令2.docx

汇编语言指令2

1.逻辑运算指令

2.移位指令

 

移位规则

▲左移:

高位←低位

右移:

高位→低位

▲移出位进入CF标志

▲对移位指令,移出CF标志后丢失

▲逻辑左移、算术左移的结果相同

▲逻辑右移,新移入的信息以0填入

算术右移,保持最高有效位原来的值(符号为不变)

3.循环移位指令

 

移位规则

▲左移:

高位←低位

右移:

高位→低位

▲移出位进入CF标志

▲对循环移位指令,改变各位的位置,信息不丢失

▲带进位循环移位,CF标志参加循环移位

注意事项:

SHLAL,1

SHRAL,CL

ROLBX,1

RCRAL,CL

源操作数为移位的次数

目的操作数类型决定操作类型

对标志位的影响

▲移位指令:

①据结果设置CF、SF、ZF、PF,对AF无定义

②OF只在移位次数为1时有效,其他无定义

移位后,最高有效位发生变化,则OF=1,否则为0

▲对循环移位指令:

①据移位结果设置CF,对其他标志无影响

②OF标志与移位指令同

控制转移指令

1)无条件转移指令JMP

格式   JMP目标地址

 执行操作 无条件转移到目标地址处

2)条件转移指令

格式 Jcc符号地址

测试条件的助记符

执行当转移条件满足,转向目标地址去执行。

当 、、 不满足,执行Jcc后的下一条指令。

转移方式只允许段内直接短方式,跳转范围在-128~127

 

按转移条件不同,条件转移指令可以分为四大类:

①以单个状态标志作为转移条件

②以CX的值为0作为转移条件

③以两个无符号数比较的结果作为转移条件

④以两个带符号数比较的结果作为转移条件

3)循环指令

格式 LOOPxx  符号地址

执行①(CX)←(CX)-1此操作不影响标志

②检查转移条件,满足,转向目标地址去执行;

  不满足,执行LOOPxx后一条指令

转移方式只允许段内直接短方式,跳转范围-128~127

循环指令说明:

LOOP退出循环条件是(CX)=0

LOOPZ和LOOPNZ提供了提前结束循环的可能,

不一定要等到(CX)=0才退出循环。

4)调用和返回指令

调用指令CALL

①段内直接调用

格式CALL符号地址;NEAR属性

执行(SP)←(SP)-2

(SS:

SP)←(IP)

(IP)←符号地址的偏址

②段间直接调用

格式CALL符号地址;FAR属性

执行

(SP)←(SP)-2

(SS:

SP)←(CS)

(SP)←(SP)-2

(SS:

SP)←(IP)

(IP)←符号地址的偏址

(CS)←符号地址的段址

返回指令RET

①段内返回

格式RET

执行(IP)←(SS:

SP)

(SP)←(SP)+2

②段间返回

格式RET或RETF

执行(IP)←(SS:

SP)

(SP)←(SP)+2

(CS)←(SS:

SP)

(SP)←(SP)+2

注意:

在调用、返回指令中,

利用堆栈保存、恢复返回地址。

对堆栈的操作应有目的性,

不乱用堆栈操作,不随意修改堆栈内容,

否则易造成死机。

5)中断调用、中断返回指令

 

中断子程以类型号N来区分

共有256个类型号(0~FFH,即0~255)

类型号0处理除0错误的中断子程

类型号4H处理溢出时的中断子程

类型号9H处理键盘操作的中断子程

类型号21H与DOS系统功能相关的中断子程

 

中断调用指令INT

格式INTN;其中N=0~FFH即0~255

入栈保存PSW

执行(SP)←(SP)-2

保存现场

(SS:

SP)←(PSW)

IF←0清IF标志

TF←0清TF标志

入栈保存CS

(SP)←(SP)-2

(SS:

SP)←(CS)

入栈保存IP

(SP)←(SP)-2

(SS:

SP)←(IP)

取中断子程入口地址

(IP)←(0:

N×4)

(CS)←(0:

N×4+2)

中断返回指令IRET

格式IRET

执行

(IP)←(SS:

SP)

(SP)←(SP)+2

(CS)←(SS:

SP)

(SP)←(SP)+2

(PSW)←(SS:

SP)

(SP)←(SP)+2

溢出中断调用INTO

格式INTO

执行OF为1时,执行INT4;

OF为0时,执行INTO下一条执行。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 管理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1