《微机原理与接口技术-第-章》课件.ppt

《微机原理与接口技术-第-章》课件.ppt

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与接口技术 第4章 模块化程序设计 教学重点 汇编语言程序设计方法 顺序程序设计 分支程序设计 循环程序设计 子程序设计 模块的设计 系统功能调用方法 汇编程序提供给汇编语言程序员的功能非常有限 程序员需要利用ROM-BIOS和操作系统提供的资源 系统功能调用是程序设计的一个重要方面 系统功能调用方法 BIOS是OS的核心,主要功能是驱动系统的外部设备。 DOS层的功能模块在系统盘中,在系统启动时被装入内存。主要功能是文件管理、存储管理、设备管理等。 系统功能调用步骤 通常按照如下4个步骤进行: ⑴ 在AH寄存器中设置系统功能调用号 ⑵ 在指定寄存器中设置入口参数 ⑶ 用中断调用指令( INT i8)执行功能调用 (BIOS中断号为5~1FH) ⑷ 根据出口参数分析功能调用执行情况 BIOS功能模块调用 BIOS中的键盘输入 在BIOS系统中,提供了中断16H来实现键盘输入功能,其具体的功能如下: 00H——从键盘读一个字符,输入字符不回显 01H——判断键盘缓冲区内是否有字符可读 02H——读取当前键盘状态字。 例如从键盘读入一个字符,需完成以下3步: 入口参数:无; AH?00H; INT 16H; 其出口参数,也就是键入的字符的ASCII码在AL中。 BIOS功能模块调用 BIOS中的屏幕输出 BIOS系统提供了中断10H来实现各种屏幕处理功能。 00H—设置显示器模式 01H—设置光标形状 02H—设置光标位置 03H—读取光标信息 05H—设置显示页 06H、(07H)—向上滚屏和(向下滚屏) 08H—读光标处的字符及其属性 09H—在当前光标处按指定属性显示字符 0AH—在当前光标处显示字符 0CH—写图形象素 0DH—读图形象素 0FH—读取显示器模式 例如在显示器上显示一个字符需完成以下3步: 入口参数: AL?需显示字符的ASCII码, BH ?页号, BL ?字符的显示属性。 AH?09H INT 10H 执行完成后,就会在显示器上按指定的字符属性显示该字符。 例4-3 用键盘最多输入10个字符,并存入内存变量Buff中,若按“Enter”键,则表示输入结束。 用BIOS层功能调用实现的源程序: .MODEL SMALL CR EQU 0DH .STACK 200H .DATA Buff DB 10 DUP(?) .CODE .STARTUP MOV CX, 0AH LEA BX, Buff DOS输入输出功能调用 DOS利用21H号中断提供给用户近百个系统功能,主要包括设备管理、目录管理和文件管理三个方面的功能 重点掌握: 输入一个字符,01H号功能调用 输入一个字符串,0A号功能调用 输出一个字符,02H号功能调用 输出一个字符串,09H号功能调用 DOS中的键盘输入 01H——带回显的键盘输入 06H——控制台的输入/输出:当DL=0FFH,表示键盘输入 08H——不回显的键盘输入 0AH——键盘输入字符串 0BH——检查键盘有无输入 0CH——清除输入缓冲区的输入功能 带回显的键入单个字符的功能调用,需完成以下3步 选功能号01H于AH中 入口参数:无 通常使用“INT 21H”语句调用。 执行完成后,用户可从AL取出输入字符的ASCII码。 键入字符串功能调用,需完成以下3步: 功能号:AH?0AH; 入口参数:DS:DX?存储键入字符串的首地址,(DS:DX)=允许键入字符的个数; 第三,中断指令:INT 21H。 执行完成后,用户可从DS:(DX+2)单元取出输入字符的ASCII码,从DS:(DX+1)取出实际键入字符的个数。 DOS中的显示器输出 02H—显示的字符 06H—控制台的输入/输出:当DL≠0FFH,表示显示字符 09H—在屏幕上显示一个字符串 02H号DOS功能调用 输出一个字符 ⑴ 功能调用号:AH=02H ⑵ 入口参数:DL=欲显示字符的ASCII码 ⑶ 功能调用:INT 21H ⑷ 出口参数:无 例题-回车换行的子程序 crlf proc push ax ;保护寄存器 push dx mov ah,2 mov dl,0dh ;回车功能的ASCII码是0DH int 21h mov ah,2 mov dl,0ah ;换行功能的ASCII码是0AH int 21h pop dx ;恢复寄存器 pop ax ret crlf endp 09H号DOS功能调用 输出一个字符串

文档评论(0)

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

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

1亿VIP精品文档

相关文档