- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[科技]汇编第05章循环与分支程序设计
第五章 循环和分支结构程序设计 第五章 循环和分支结构程序设计 5.1转移指令 1、无条件转移指令 (1)段内直接短转移:JMP SHORT 标号 执行操作:(IP) ← (IP) + 8位位移量 (2)段内直接近转移:JMP NEAR 标号 执行操作:(IP) ← (IP) + 16位位移量 (3)段内间接转移:JMP WORD PTR OPR 执行操作: (IP) ← (EA) (4)段间直接远转移:JMP 标号 执行操作:(IP) ← OPR 的段内偏移地址 (CS) ← OPR 所在段的段地址 (5)段间间接转移: JMP DWORD PTR OPR 执行操作: (IP) ← (EA) (CS) ← (EA+2) 第五章 循环和分支结构程序设计 5.1转移指令 2、条件转移指令:注意:只能使用段内直接寻址的8 位位移量 (1) 根据单个条件标志的设置情况转移 格式 测试条件 JZ(JE) label ZF = 1 JNZ(JNE) label ZF = 0 JS label SF = 1 JNS label SF = 0 JO label OF = 1 JNO label OF = 0 JP label PF = 1 JNP label PF = 0 JC label CF = 1 JNC label CF = 0 第五章 循环和分支结构程序设计 5.1转移指令 2、条件转移指令:注意:只能使用段内直接寻址的8 位位移量 (2) 比较两个无符号数,并根据比较结果转移 格式 测试条件 < JB (JNAE,JC) label CF = 1 ≥ JNB (JAE,JNC) label CF = 0 ≤ JBE (JNA) label CF∨ZF = 1 > JNBE (JA) label CF∨ZF = 0 第五章 循环和分支结构程序设计 5.1转移指令 2、条件转移指令:注意:只能使用段内直接寻址的8 位位移量 (3) 比较两个带符号数,并根据比较结果转移 格式 测试条件 < JL (JNGE) label SF?OF = 1 ≥ JNL (JGE) label SF?OF = 0 ≤ JLE (JNG) label (SF?OF)∨ZF = 1 > JNLE (JG) label (SF?OF)∨ZF = 0 说明:对于A-B 当没有溢出时,S=1,AB; 有溢出时,S=1,AB; 当没有溢出时,S=0,A=B; 有溢出时, S=0,AB. 第五章 循环和分支结构程序设计 5.1转移指令 2、条件转移指令:注意:只能使用段内直接寻址的8 位位移量 (4) 测试 CX 的值为 0 则转移 格式 测试条件 JCXZ label (CX)=0 第五章 循环和分支结构程序设计 5.2 分支结构程序设计 1、双分支结构程序设计 例 将AL的最高位显示出来 SHL AL,1 JC NT1 MOV DL,30H JMP NT2 NT1: MOV DL,31H NT2
文档评论(0)