黄强 汇编 第4章基本程序设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
黄强 汇编 第4章基本程序设计

START: MOV AX,DATA MOV DS,AX MOV AL,DAT CMP AL,9 JG OTHR ADD AL,30H ;小于10则转换为数字(0~9) JMP DISP OTHR: ADD AL,37H ;大于10则转换为大写字母(A~F) DISP: MOV DL,AL MOV AH,2 INT 21H DONE: MOV AH,4CH INT 21H CODE ENDS END START 4.3 循环程序设计 在进行程序设计时,会出现某段程序反复多次执行的情况,如果这段程序是连在一起反复执行的,则可用循环程序结构来实现。其方法是用重复次数或某个条件控制循环程序的执行。采用循环程序结构不仅使程序变得简洁清晰,而且减少程序对内存的占用,因此,循环程序是重要的程序结构之一。 第4章 基本程序设计 4.3.1 循环程序的结构 循环程序是多种多样的,但一般认为循环程序由四部分构成: 1.初始化部分 本部分主要为循环程序作准备工作,如置循环次数、地址指针或关键字,寄存器置初值及标志位设置等。 2.循环工作部分 本部分是实际进行工作的部分,是循环结构的主体。 3.参数调整部分 本部分实现地址指针或循环次数的修改等,以便继续循环。 4.循环控制部分 本部分循环条件的检查,以判断是否继续循环。 以上四部分中,2、3、4有时统称为循环体。循环程序根据循环控制条件的不同,通常又分两种结构,如图4-2所示。 第4章 基本程序设计 (a) 先工作后判断循环条件 该结构为后判断型循环,循环次数已知,多用LOOP指令等构造循环。 初始 化 循环条件满足? 处 理 Yes No 第4章 基本程序设计 (b) 先判断循环条件后工作 该结构为先判断型循环,循环次数未知,多用条件转移指令构造循环。 初始 化 No 循环条件满足? 处理 Yes 第4章 基本程序设计 汇编语言程序设计 高等教育出版社 基本程序设计是使用单一结构的程序设计,它是程序设计的基础。程序有三种基本结构,即顺序结构、分支结构和循环结构。任何复杂的程序都是由基本结构组成的。因此,一定要掌握基本程序设计的方法。对于汇编语言程序设计而言,更要掌握好基本程序的设计,这是编写复杂程序的基础。 4.1 顺序程序设计 4.2 分支程序设计 4.3 循环程序设计 实训一 分支程序设计 实训二 循环程序设计 第4章 基本程序设计 顺序程序是最简单程序设计,这种程序不使用分支、循环结构,程序按顺序执行,只能完成相对简单的操作。限于这种特点,在进行顺序程序设计时应合理安排指令的先后顺序,以完成相应的功能。 在较为复杂的程序中,顺序程序是逐段出现,它主要完成一些简单操作或过程的准备、任务的过渡、结果的存储及程序结束等。它是程序的基本组成部分。以下以结合几个实例说明顺序程序的基本方法,它们是以后各种复杂程序设计的基础。 4.1 顺序程序设计 第4章 基本程序设计 4.1.1 存储单元内容移位 存储单元移位是指其中的内容左移或右移若干位。现举例说明。 【例4.1 】 将AX寄存器中的内容左移2位,字存储单元DAT中的内容右移3位(移位后的空位补0). 分析:内容移位一般由移位指令实现,但要求移后空位为0,故应使用逻辑移位指令。当移位次数大于1时,可将移位次数放至CL中进行移位。操作如下: MOV CL,2 SHL AX,CL INC CL SHR DAT,CL 第4章 基本程序设计 4.1.2 乘法运算 汇编语言本身也是比较灵活的,乘法运算可用乘法指令直接完成,有时候也可以由移位指令或加法指令完成。 【例4.2 】 将寄存器AL的内容乘10,结果存至DX寄存器。 分析:对一个数进行乘10运算,可以直接使用乘法指令实现,也可由移位指令或加法指令实现,方法分别如下: 1.用乘法指令实现 MOV BL, 10 IMUL BL ;AX←AL×BL=AL×10 MOV DX,AX 第4章 基本程序设计 2.用移位指令实现 移位操作时,在最高位不变化时,左移一位,相当原数乘2,因此也可以用移位操作实现乘10运算。 XOR AH,AH ;AH清零 SAL AX,1 ;AX←AX×2 MOV BX,AX ;存至BX寄存器 MOV CL,2 SAL AX,CL ;AX←AX×8 ADD AX,BX ;AX←AX×

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档