- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章4循环子程序DOS中断调用
例 求两个多位十进制数的加法运算。13576496=? 设计思想: 1.设计一个数据段,把要处理的两个加数放在数据区里。还要把两数和即相加的结果也放在数据区里。 DATA SEGMENT BUF1 DB 78H,56H,34H,12H ;被加数 BUF2 DB 96H,64H,57H,13H ;加数 BUF3 DB ?,?,?,?,? ;存放两数和的存储单元 DATA ENDS 2.设计一个代码段,编程实现两数相加的程序代码。 两数相加的程序指令: LEA BX,BUF1 ;将BUF1首地址送BX寄存器,作为被加数指针 LEA SI, BUF2 ;将BUF2首地址送SI寄存器,作为加数指针 LEA DI, BUF3 ;将BUF3首地址送DI寄存器,作为加数和指针 MOV AL,[BX] ADD AL,[SI] DAA MOV [DI],AL INC BX INC SI INC DI MOV AL,[BX] ADC AL,[SI] DAA MOV [DI],AL 。。。。。。 完整的程序: DATA SEGMENT BUF1 DB 78H,56H,34H,12H ;被加数 BUF2 DB 96H,64H,57H,13H ;加数 BUF3 DB ?,?,?,? ;存放两数和的存储单元 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA BX,BUF1 ;将BUF1首地址送BX寄存器,作为被加数指针 LEA SI, BUF2 ;将BUF2首地址送SI寄存器,作为加数指针 LEA DI, BUF3 ;将BUF3首地址送DI寄存器,作为加数和指针 MOV CX, 4 CLC ;将进位位清零 LOP: MOV AL,[BX] ADC AL,[SI] DAA MOV [DI],AL INC BX INC SI INC DI LOOP LOP MOV AH,4CH INT 21H CODE ENDS END START 第四章 汇编语言程序设计 汇编语言程序设计概述 汇编语言基本语法 汇编语言程序设计 BIOS及DOS功能调用 汇编语言程序设计实例 在程序中重复执行相同功能的一段代码,可用循环程序实现。循环程序通常由五部分组成: 初始化部分——为程序操作、地址指针、循环计数、结束条件等设置初始值。 循环工作部分——循环程序主体,完成基本操作。 循环修改部分——修改循环工作部分的变量,为重复操作做准备。 循环控制部分——修改计数器或判断循环结束条件,决定是否终止循环。 循 环 体 循环结束部分——循环终止后,对循环结果的处理部分。 循环结构程序设计 循环程序概述 终 止 起 始 初始化 循环工作 循环修改 循环控制 完 未完 终 止 起 始 初始化 循环工作 循环修改 循环控制 完 未完 先执行后判断 先判断后执行 循环程序基本结构 循环结构程序设计 未完 终 止 起 始 初始化 循环工作 循环修改 循环控制 完 计数循环——重复次数已知,用计数值控制循环的开始与终止。 条件控制循环——重复次数未知或不确定,需找出循环控制的条件。 解: 已知循环次数,采用计数循环控制。程序段如下: MOV CX,100 ;确定循环计数器值 MOV BX,1 ;确定循环初值 MOV AX,0 ;和的初值 LOP: ADD AX,BX INC BX LOOP LOP ;循环控制 【例】 编写程序计算C=1+2+3+4+……+100 循环控制方式 循环结构程序设计 计数循环的常见方法: 减1循环 MOV CX,N L : …… DEC CX JNZ L 加1循环 MOV CX,-N L: …… INC CX JNZ L LOOP 短标号
文档评论(0)