微机原理与接口课件第八次课.ppt

  1. 1、本文档共56页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序中根据各种可能出现的情况及相应的处理方法分成若干支路,运行时,根据不同情况有选择地执行相应处理程序。 分支程序设计 一段程序有时重复执行多次,就牵涉到循环程序结构,其组成部分为: 1. 循环体 即要求重复执行的程序段部分,包括循环工作部分和循环控制部分。 2. 循环初态 循环开始时往往要置初态,赋初值,包括循环工作部分初态和结束条件初态。 循环程序设计 3. 循环结束条件 在循环程序中必须给出循环结束条件,否则就会进入死循环,结束条件有好多种,最常见的有: (1) 用计数器控制循环 (2) 按问题的条件控制循环 (3) 用开关量控制循环 (4) 多重循环 * 条件控制法 在许多情况下,事先无法确定循环次数,这时可选用“条件”来控制循环。在问题的求解过程中,找出一个终止循环的条件。 每循环一次,对条件进行一次检测,如满足终止循环的条件,便退出循环,否则继续循环。 利用条件转移指令控制循环是否结束。 有些情况下为防止死循环,可以附加一个合适的循环次数。 * 多重循环程序设计 多重循环就其本质而言,就是循环层1包含循环层2,循环层2可能又包含循环层3… 循环层1为最外层,内层循环是外层循环的循环体的一部分。 * 多重循环程序设计 如果多重循环都使用LOOP语句,则要保护好外层循环的计数器CX,通常采用压栈或退栈的方法或者转存的方法。 汇编语言程序与DOS的接口 1 DOS和BIOS的功能调用 1.DOS系统功能调用的一般步骤 DOS为磁盘操作系统(Disk Operating System)的简称。DOS提供了极为丰富的子程序,能够实现控制键盘、显示器、读写文件、串行通信等一系列功能。 使用DOS系统功能调用的一般过程:见下图所示。 功能调用号?AH 置入口参数 执行 “INT 21H ” 分析出口参数 … … 系统功能调用的方法 (1)键盘输入 (1号调用) 格式:MOV AH,1 INT 21H 功能:等待从键盘输入一个字符并将输入字符的ASCII码送入寄存器AL中,同时在显示器上显示该字符,碰到CTRL+Break则退出。 2.DOS系统功能调用的一般步骤 (2)显示单个字符 (2号调用) 格式:MOV AH,2 MOV DL,待显字符的ASCII码 INT 21H 功能:将DL中的字符送显示器显示,若为CTRL+Break的ASCII码则退出。 (3)控制台输入 (8号调用) 格式:MOV AH,8 INT 21H 功能:与1号调用相似,但只从键盘上输入而不显示。 (4) 显示字符串 (9号调用) 格式:LEA DX,字符串首偏移地址 MOV AH,9 INT 21H 功能:将当前数据区中以 ‘$’结尾的字符串送显示器显示。 例如,要显示下列DIS0数组变量中定义的字符串 DIS0 DB ‘PRESS ANY KEY TO QUIT’,0DH,0AH, ‘$’ 程序如下: LEA DX, DIS0 MOV AH, 09H INT 21H (5) 键盘输入字符串 (10号调用) 格式:LEA DX,缓冲区首偏移地址 MOV AH,10 INT 21H 功能:从键盘上往指定缓冲区中输入字符串并送显示器显示。 3.常用BIOS调用 BIOS为基本输入输出系统(Basic Input and Output System),它提供了最底层的控制程序。 (1)设置显示器显示模式 功能:设置显示器显示模式。 格式:MOV AH, 00H MOV AL,显示模式代码 INT 10H (2)设置光标位置 功能:设置光标位置,使字符从该位置处开始显示。 MOV AH, 02H MOV BH, 页号 MOV DH, 行号 MOV DL, 列号 INT 10H 2 用户程序与DOS的接口 1.程序段前缀PSP 程序段前缀PSP是一个256字节的区域,从页的边界开始存放有关信息。用户程序可从PSP中获得有关键盘输入参数等信息。 当DOS加载一个可执行文件的程序代码到内存中去时,它首

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档