- 1、本文档共55页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 汇编语言程序设计(下)课件
; MS-DOS是计算机上最为普遍的操作系统,它采用层次化模块结构,由一个引导程序BOOT和3个层次模块组成,这3个模块分别是输入输出模块IO.SYS、文件管理模块MSDOS.SYS和命令处理模块COMMAND.COM。
MS-DCS从两个层次上为用户提供访问接口,一般用户可以通过键盘命令在命令处理模块层次上进行访问;高级用户则可以通过软件中断和系统功能调用在文件管理模块层次上进行访问。;用 户;4.3.2 DOS系统功能调用;INT 2lH功能:设备管理、目录管理、文件管理和其它。P501页附录D;1. DOS键盘功能调用;例:在交互式程序中需用户对一个提示做出应答。
┇
GET_KEY: MOV AH,1 ;等待键入单个字符
INT 21H ;结果在AL中
CMP AL, ‘Y’ ;是 ‘Y’ ?
JE YES ;是, 转 YES
CMP AL, ‘N’ ;是 ‘N’ ?
JE NO ;是, 转 NO
JNZ GET_KEY ;其它键则重新输入
YES: ┇
NO: ┇; (2) 输入字符串
将键盘输入的字符串存入用户定义的缓冲区。
入口参数: AH=0AH
DS:DX=输入字符串在内存中的首地址
中断号: 21H ; 若用户键入的字符数(包括回车符)大于定义的N1,机器铃响,且光标不再向右移动,
N2由中断调用程序自动填入。
例:设在数据段定义:
STR1 DB 10 ;用户定义的最大键入字符数
DB ? ;系统填入实际输入字符数
DB 10 DUP(?) ;存放输入字符的ASCII码值
调用DOS功能的0A号功能的程序段:
LEA DX,STR1
MOV AH,0AH
INT 21H;例4: 在键盘输入字符串‘HELLO’,并在串尾加结束标志‘$’。
DATA SEGMENT
STR DB 10 , 0 , 10DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA , CS:CODE
START: MOV AX , DATA ; 初始化DS
MOV DS , AX
MOV DX , OFFSET STR
MOV AH , 0AH ; 0AH功能调用:输入字符串到内存缓冲区
INT 21H
MOV CL , STR+1
MOV CH , 0
LEA BX , STR+2
ADD BX , CX
MOV [BX] , ‘$’
MOV AH , 4CH ; 4CH功能调用:结束当前程序,返回操作系统
INT 21H
CODE ENDS
END START;2.DOS显示功能调用;例:从键盘输入一个小写英文字母,请转换为大写字母输出。
STACK SEGMENT
STR DB 100 DUP(0)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK
BEGIN: MOV AH, 1 ; 1号功能调用:从键盘输入字符并显示
INT 21H
CMP AL, ‘a’
JB BEGIN
CMP AL, ‘z’
JA BEGIN
SUB AL, 20H
文档评论(0)