




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章 功能调用 INT 21H 1.单字符输入(1号子功能) 入口参数:1-AH 出口参数:从键盘所输的字符的ASCII码-AL 功能:从键盘输入单个字符 注意: (1)只要在执行INT 21指令时AH中的值是1; (2)调用时,屏幕上出现一个闪烁的光标,等按键; (3)只需按一个键,不许按回车键,按下符号会显示在 屏幕上; (4)特殊按键:ESC-(AL)=1BH,回车-(AL)=0DH,退格-( AL)=08H; (5)调用后不改变除AL外的其他寄存器的值。 n实例:编写程序段,从键盘读入一个按键( 假定是数字键中的一个),计算出对应的数 值,放入寄存器DL中。 nMOVAH,1 nINT21H nSUBAL,0 nMOVDL,AL 2.单字符输出(2号子功能) 入口参数:2-AH 欲显示字符的ASCII码-DL 出口参数:无 功能:在当前光标处输出单个字符,并把光标向后移一格 注意: (1)调用之后AL的内容发生了改变; (2)在执行INT 21H时,不论DL中来源如何,都当作是一个 ASCII值; (3)特殊ASCII值:07H-发出“嘀”声,08H-光标在同行向 左移动一格,0AH-光标在同列向下移动一行,0DH-光标移 到所在行得最左端 n实例:编写程序段完成回车换行 功能。 nMOVAH,2 nMOVDL,13(0DH) nINT21H nMOVDL,10(0AH) nINT21H 3.字符串输出(9号子功能) 入口参数:9-AH DS:DX=待输出字符串的首字符的逻辑地址 出口参数:无 功能:在当前光标处输出字符串 注意: (1)被输出的字符串的长度不限,但必须连续存放在内存的某 个地方,且以ASCII值为24H的字符$结束,中间可以含有 回车符、换行符、响铃符等特殊功能符号,存放字符串的起 始逻辑地址必须放在指定的寄存器DS和DX中; (2) $符本身不输出到屏幕; (3)调用结果是把字符串中的各个字符从光标当前所在位置起 ,依次显示在屏幕上,直至遇到$为止,光标停在最后一 个输出符号的后面; (4)如果程序中需要输出$,只能用2号子功能实现; (5)9号子功能调用将影响AL的内容,不改变其余寄存器及标 志寄存器的值。 例1:分析下面的程序,写出程序执行后的结果 DATASEGMENT BUF1DBHello,13,10,this is an example.$,13,10 BUF2DBEND-$ DATAENDS CODESEGMENT ASSUMECS:CODE,DS:DATA MAIN:MOVAX,DATA MOVDS,AX LEADX,BUF1 MOVAH,9 INT21H MOVDX,OFFSET BUF2 INT21H MOVAH,4CH INT21H CODEENDS ENDMAIN 例2:分析下面的程序,写出程序执行后的结果 DATASEGMENT BUF1DBHello,13,10,this is an example.,13,10 BUF2DBEND-$ DATAENDS CODESEGMENT ASSUMECS:CODE,DS:DATA MAIN:MOVAX,DATA MOVDS,AX LEADX,BUF1 MOVAH,9 INT21H MOVDX,OFFSET BUF2 INT21H MOVAH,4CH INT21H CODEENDS ENDMAIN 例1执行结果: Hello, this is an example.-END- 例2执行结果: Hello, this is an example. -END-END- 4.字符串输入(10号子功能) 入口参数:0AH-AH DS:DX=输入缓冲区的起始逻辑地址 出口参数:由DOS的10号子功能在输入缓冲区中填写实 际输入情况,即根据键盘输入情况,对图中的“实际 输入字符数”和“输入串的各个字符”部分进行填写 。输入缓冲区有特定的要求,其内存图如下所示: 功能:由键盘输入若干个字符串 注意: (1)输入缓冲区是一段连续的内存区,首地址必须在调用10号 子功能前放到指定的寄存器DS和DX中; (2) 10号子功能在调用时等待操作员从键盘上按键,直到按下 回车键为止,按键情况会显示在屏幕上,最后按下的回车键 会导致回车操作。如果在回车键之前发现输入错误,可以使 用退格键或向左的箭头进行修改; (3)输入缓冲区的最前面一个字节(上页图len1处)的值由用 户程序填写,用以指出允许输入的最大字符数。该值是字节 型无符号数,有效范围是0-255,最后按的回车键也计算在内 。当已输入len1-1个字符后就只能按回车键了,按其它键都 会被认为是不正确的输入而不被机器认可,并且喇叭还会发 出“嘀”的一声响以示警告。如果len1=1,表示只能按1个键 ,这个键只能是回车键,按其它键都会有“嘀”的一声警告 ;如果len1=0,表示一这个键都不能按,包括回车键在内的 任何按键都会被拒绝并且发出“嘀”的警告声,但机器又在 等待输入,这一矛盾将导致无限期等待,即死机; (4)输入缓冲区的次字节(上页图len2处)的值由DOS 的10号子功能填写的。在调用前用户程序可把它设置 为任意值,用户程序填写的值对10号子功能调用没有 任何影响; (5)子功能调用完成后,输入的字符串以ASCII的形式 从输入缓冲区的第3个字节起连续存放,最后一个字 符是回车键(ODH)。第2个字节中放的是输入字符串 的有效长度(最后的回车键不计算在内)。用户程序 可以从缓冲区的第2个字节起取得输入字符串的串长 及各个字符。 例1:设有数据段定义如下: DSEGMENT BUF DB10,11 DUP(0) DENDS 画出数据段的内存图,然后执行下面的程序段,设BUF 的缺省段寄存器为DS。 MOV AX,D MOV DS,AX MOV
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 古诗文教学方法探讨:运用情境教学提升课堂效果
- 教师招聘之《幼儿教师招聘》能力提升B卷题库含答案详解【综合题】
- 深海产业结构调整策略方案
- 高等教育与新质生产力发展
- 2025秋大象版(2024)小学科学三年级上册《气体》教学设计
- 教师招聘之《小学教师招聘》模拟卷包及完整答案详解【名校卷】
- 神奇的语言翻译之美探究案例解析:英语专业翻译课程教案
- 加速培育新质生产力的措施
- 聚工安全生产在线培训课件
- 广西东融硅基新材料有限公司石英石新型环保板材项目配套石英砂提纯项目(一期)环境影响报告表
- 天翼云认证开发工程师必备考试复习题库(高分版)-上(单选题)
- ARDS患者肺康复训练专家共识解读
- 中远海运(上海)有限公司招聘考试真题及答案2022
- 癌痛及三阶梯止痛原则
- JJG 861-2007酶标分析仪
- 神经网络-课件
- 高管人员劳动合同书
- 被覆上皮课件
- 神经外科术后并发症观察及护理课件整理
- 脊柱弯曲异常筛查结果记录表
- 尾矿库安全监测技术规范
评论
0/150
提交评论