- 1、本文档共39页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言系列第一章(考试重点在里面)第8讲 6.1-6.4
第六章 分支结构程序;6.1 分支结构程序的引出;6.2 转移指令;6.2.1 无条件转移指令JMP(Jump); 段内直接转移方式
段内间接转移方式
段间直接转移方式
段间间接转移方式;目标IP=当前IP+相对位移量(8bit/16bit)
相对位移量是一个8位或者16位的带符号数,在机器指令中直接给出,汇编指令中的目标地址以标号的形式给出。
JMP NEAR PTR 目标地址
目标地址在当前代码段,且在-32768~32767之间
JMP SHORT 目标地址
目标地址在当前代码段,且在-128~127范围内;段内直接转移方式;1) 段内寄存器间接转移
JMP AX
2) 段内存储器间接转移
JMP [SI](默认是WORD类型)
JMP WORD PTR [BX+DI+1000H]
;汇编后的机器指令中直接给出目标地址的CS和IP,汇编指令以标号的形式给出。
JMP FAR PTR 目标地址; IP和CS的内容用内存中2个连续的字来替换,可以使用任意一种存储器寻址方???。
JMP DWORD PTR [BX][SI]
例 (BX)=1256H, (SI)=528EH, (DS)=2000H,
(264E4H)=1234H, (264E6H)=5678H
执行指令后
IP=?CS=?;6.2.2 条件转移指令; 条件转移指令在比较完两个数的大小后根据比较的结果而决定是否转移,对于某两个二进制数,把它们看成有符号数和无符号数,比较后会有不同的结果,实际是测试不同的标志位。
8086的条件转移指令中,大部分指令可以用两种不同的助记符来表示。;单条件转移指令;有符号数和无符号数的条件转移指令;Below Above Less Great Equal;条件转移指令比较;AX,BX,CX分别存放着三个互不相等的无符号数,试编写程序段比较它们的大小,将最大的数放到AX中。; CMP AX, BX
JAE NEXT
XCHG AX, BX
NEXT: CMP AX, CX
JAE NEXT1
XCHG AX, CX
NEXT1: ……;如果存放的是有符号数,程序应该为:;6.3 分支结构程序设计;X+10 (0X≤8)
5X-2 (8X15)
X (X=0,X≥15)
-X (X0);膝坐窝心柯吼自纳兵碗韦潍函灾吸檄咸佑揪凛姑婚睬祈连沏递挎惑腾雀绕汇编语言系列第一章(考试重点在里面)第8讲 6.1-6.4汇编语言系列第一章(考试重点在里面)第8讲 6.1-6.4;1:;*****EXAM6.1*****
2:SSEG SEGMENT STACK
3:STK DB 50DUP(0)
4:SSEG ENDS
5:DSEG SEGMENT
6:ARGX DB -5
7:RLT DB ?
8:DSEG ENDS
9:CSEG SEGMENT
10: ASSUME CS:CSEG,DS:DSEG
11: ASSUME SS:SSEG
12:BEGIN: MOV AX,DSEG
13: MOV DS,AX
14: MOV AX,SSEG
15: MOV SS,AX
16: MOV SP,SIZE STK;17: MOV AL,ARGX ;取X值
18: CMP AL,0 ; X≤0?
19: JNG ABSL ;是,转
20: CMP AL,8 ;X≤8?
21: JLE ONE ;是,转
22: CMP AL,15 ;X≥15?
23: JGE MOVE ;是,转
24: SHL AL,1 ;计算5X-2
25: SHL AL,1
26: ADD AL,ARGX
27: SUB AL,2
28: JMP MOVE
29:ONE:ADD AL,10 ;X≤8,计算X+10
30: JMP MOVE
31:ABSL:NEG AL ;取补
32:MOVE:MOV RLT,AL ;保存结果
33: MOV AH,4CH
34: INT 21H
35:CSEG ENDS
36: END BEGIN;X+10 (0X≤8)
5X-2 (8X15)
X (X=0,X≥15)
-X (X0);17: MOV AL,ARGX ;取X值
18: AND AL,AL ;置标志位
19: JS ABSL ;X0转
20: JZ MOVE ;X=0转
21: CMP AL,8 ;X≤8?
22: JLE ONE ;是,转
23: CMP AL,1
文档评论(0)