文档详情

实验五DOS系统功能调用分析.ppt

发布:2016-11-02约2.41千字共18页下载文档
文本预览下载声明
实验五 DOS系统功能调用 什么是DOS系统功能调用? 分别用来实现文件管理、设备管理、目录管理等功能的一些子程序。 如何实现调用? 每个子程序对应一个功能号,给定入口/出口参数后,用INT 21H来调用。 调用的具体步骤是怎样的? 备注:1、无入口参数第一步可省略 2、无出口参数第四步可省略 按下面四步: 1、设置入口参数; 2、功能号送入AH; 3、执行 INT 21H; 4、取出口参数。 1、功能号 01H 功能:从键盘输入单字符并回显在屏幕上 入口参数:无 出口参数:键盘输入的单字符 →AL(ASCII码) 注意:DEBUG环境下默认十六进制 功能验证:debug↙ -A00↙ CS:0000 MOV AH,01 (第二步 送功能号) CS:0002 INT 21 (第三步子程序入口) CS:0004 ↙ -G=0 4↙ 键盘输入 1,屏幕上回显1 查看AX,发现AL=31H (第四步取出口参数) 2、功能号 02H 功能:在屏幕上显示单字符 入口参数:要显示的单字符(ASCII码) →DL 出口参数:无 注意:DEBUG环境下默认十六进制 功能验证:debug↙ R DX↙ DX 0000 :0033 (第一步 设入口参数) -A00↙ CS:0000 MOV AH,02 (第二步 送功能号) CS:0002 INT 21 (第三步 子程序入口) CS:0004 ↙ -G=0 4↙ 屏幕上显示3 功能号01H、02H练习题: 利用功能号01H、02H编程实现: 1、从键盘任意输入一个字符,并在屏幕上显示该字符。 要求显示格式为: a a 提示: “回车”为 0DH “换行”为 0AH 1)加入“回车”字符显示结果 a 2)加入“换行”字符显示结果 a a 3)加入“回车”和“换行”字符显示结果 a a 回车:将光标从当前位置移到本行的第一列 MOV DL,0DH MOV AH,02H INT 21H 换行:将光标从当前位置移到下一行的对应列 MOV DL,0AH MOV AH,02H INT 21H 注:字符串必须是以 $ 结尾。 3、功能号 09H 功能:显示字符串 入口参数:字符串首地址→DS:DX 出口参数:无 ;定义数据段如下: DATA SEGMENT X DB ‘ABCDE$’ DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX LEA DX,X ; (设入口参数) MOV AH,9 ; (送功能号) INT 21H ;(子程序入口) MOV AH,4CH INT 21H CODE ENDS END START 功能号 0AH 功能:从键盘输入字符串到缓冲区 入口参数:缓冲区首地址→DS:DX 出口参数:无 ;定义数据段如下: DATA SEGMENT MAX DB 10 最大字符数,缓冲区首地址 ACT DB 0 实际键入字符数 STR DB 10 DUP(0) 字符串首地址 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX LEA DX,MAX ;(设入口参数) MOV AH,10 ;(送功能号) INT 21H ;(子程序入口) MOV AH,4CH INT 21H CODE EN
显示全部
相似文档