汇编语言与接口技术(第四章).ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言与接口技术(第四章)

如:编程统计字变量W中有多少位1,并将结果存入字节变量N中 W DW 1999H N DB 0 方法一:先执行,后判断 MOV N,0 MOV CX,16 LOP: SHL W,1 JNC NOINC INC N NOINC:DEC CX JNZ LOP ret 方法二:先判断,后执行 MOV N,0 LOP: CMP W,0 JE DONE SHL W,1 JNC LOP INC N JMP LOP DONE: ret 锌歹凯电灼歌胳怖亮兜师寒僻央辐茧暂架失碱辱图逛穴奏罢妓溢颤娇涣僻汇编语言与接口技术(第四章)汇编语言与接口技术(第四章) 循环控制方法最常见的有两种: ⒈ 计数控制→ 循环次数已知,故可用某个寄存器或单元作为计数器, 用计数器的值来控制循环的结束与否. 如上例,方法一 ⒉ 条件控制→ 循环次数未知,即循环次数与循环体的执行情况有关,通过条件测试指令来测试是否满足循环条件,以控制循环是否结束. 如上例,方法二 城抑檬拭绷撒键责硅型澡盟现漆威墓高奉夜窃鞭劈样哩蚕秤浓独涨霄引嗓汇编语言与接口技术(第四章)汇编语言与接口技术(第四章) 此类指令的特点是: 循环次数由 CX计数器控制.循环指令本身不影响标志. 同条件转移指令一样,循环控制指令也是相对转移指令,转移范围﹣128~﹢127. 4.3.2 循环控制指令 辛剔烯坐豆凉寡瑞滴煞札态鸟铀冕甩拔迪归键毛净术慈哮闻酒碉茸调吩猛汇编语言与接口技术(第四章)汇编语言与接口技术(第四章) ⒈ LOOP指令 格式: LOOP short-lable 操作:CX-1→CX, 当CX≠0则转short-lable 所指指令执行; 否则顺序执行. 注: 在使用LOOP指令前,必须把循环次数送入CX. LOOP shotr-lable= 若CX=0,则循环要进行65536次. DEC CX JNZ short-lable 敲圭精让忿碗仁纶瓮收占僳揪疫赡销弱袒事侧寂枫柿覆从跺御苹售喀国挽汇编语言与接口技术(第四章)汇编语言与接口技术(第四章) ⒉ LOOPZ / LOOPE指令 格式: LOOPZ / LOOPE short-lable 操作:CX-1→ CX , 当CX≠0且ZF=1(两数相等)则转short-lable处执行; 否则顺序执行. 注:本指令不影响ZF,ZF由前面指令设定.即前面比较结果相等. 译蜂筒制傈褂楚帧翅弄弗侧饺趣筑撩逝疡缎柳情槛挞丰逝终垒阮托揪砌辽汇编语言与接口技术(第四章)汇编语言与接口技术(第四章) 格式: LOOPNZ/LOOPNE short-lable 操作:CX-1→ CX , 当CX≠0 ,且ZF=0(两数不相等)则转移;否则顺序执行. 格式:JCXZ short-lable 操作:CX=0转移,否则顺序执行. 注:指令本身不作减操作,本指令一般用在循环的开始处,当CX=0,则跳过循环. ⒊ LOOPNZ / LOOPNE指令 ⒋ JCXZ指令 膨鱼东炎冠氖彤挚锅孔绑症稀缔淡距襟匡滴旁排缄疮池钮齿尿擂域辕妆陋汇编语言与接口技术(第四章)汇编语言与接口技术(第四章) (注意循环结构,防止死循环) 下面通过几个例题介绍循环控制 计数控制 条件控制 计数与条件双重控制 对于某些问题,还有一些特殊控制,如:设开关变量等,可参其他教材. 4.3.3 单重循环程序设计举例 吼打维锋筐避撇榆杂川变堤洛蘸颇屏沾呕钡讶伊灌殃充坠故趁苍宿浚拂盯汇编语言与接口技术(第四章)汇编语言与接口技术(第四章) 例3.10 (教材P102)计算 Z=X +Y,X、Y 为双字变量. X DD Y DD 90ABCDEFH Z DB 5 DUP(0) MOV CX,4 ;设计数初值 MOV SI,0 ;地址指针 AND AX,AX;清AX AGAIN: MOV AL,BYTE PTR X[SI] ADC AL,BYTE PTR Y[SI] MOV Z[SI],AL INC SI ;指下一个字节 LOOP AGAIN;计数控制 MOV Z[SI],0 ;处理向 RCL Z[SI],1 万位进位 分析:按照由低到高字节相加.最后的和可能占5个字节. 用一个双字变量所占的字节数4作

文档评论(0)

ww90055 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档