mov ah 10

xinghun_4 2009-03-20 08:30:24
lea dx,buf ;从键盘输入年份字符串
mov ah,10
int 21h
这句是什么意思,mov ah,10
作用是什么?
...全文
2109 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dianwan2008 2009-05-26
  • 打赏
  • 举报
回复
6 楼说的很清楚了
cocoalary 2009-03-21
  • 打赏
  • 举报
回复
估计是堆栈用的
dididu1515 2009-03-21
  • 打赏
  • 举报
回复 1

INT 21H 详解_字符功能调用类(Character-Oriented Function)
01H、07H和08H —从标准输入设备输入字符
02H —字符输出
03H —辅助设备的输入
04H —辅助设备的输出
05H —打印输出
06H —控制台输入/输出
09H —显示字符串
0AH — 键盘缓冲输入
0BH —检测输入状态
0CH —清输入缓冲区的输入功能

(1)、功能01H、07H和08H
功能描述:从标准输入设备(如:键盘)读入一个字符。该中断在处理过程中
将一直处于等待状态直到有字符可读为止。该输入还可被重定向,如果这样
做,则无法判断文件是否已到文件尾
入口参数:AH=01H,过滤掉控制字符,并回显
 =07H,不过滤掉控制字符,不回显
 =08H,过滤掉控制字符,不回显
出口参数:AL=输入字符的ASCII码

(2)、功能02H
功能描述:向标准输出设备(如:屏幕)输出一个字符。该输出还可被重定向,
如果这样做,则将无法判断磁盘是否满
入口参数:AH=02H
DL=待输出字符的ASCII码
出口参数:无

(3)、功能03H
功能描述:从辅助设备读入一个字符,该辅助设备的缺省值为COM1
入口参数:AH=03H
出口参数:AL=读入字符的ASCII码

(4)、功能04H
功能描述:向辅助设备输出一个字符,该辅助设备的缺省值为COM1
入口参数:AH=04H
DL=待输出字符的ASCII码
出口参数:无

(5)、功能05H
功能描述:向标准的输出设备输出一个字符。该缺省的输出设备为LPT1端口
的打印机,除非用MODE命令来改变
入口参数:AH=05H
DL=待输出字符的ASCII码
出口参数:无

(6)、功能06H
功能描述:控制台(如:键盘、屏幕)输入/输出。如果输入/输出操作被重定向,
那么,将无法判断文件是否已到文件尾,或磁盘已满
入口参数:AH=06H,DL=输入/输出功能选择
出口参数:若DL=00H-FEH,则此功能为输出,DL为待输出字符的ASCII码;
若DL=0FFH,则此功能为输入,此时:若ZF=1,则无字符可读,否则,
AL=读入字符的ASCII码

(7)、功能09H
功能描述:输出一个字符串到标准输出设备上。如果输出操作被重定向,那么,
将无法判断磁盘已满
入口参数:AH=09H
DS:DX=待输出字符的地址
说明:待显示的字符串以’$’作为其结束标志
出口参数:无

(8)、功能0AH
功能描述:从标准输入设备上读入一个字节字符串,遇到“回车键”结束输入
(输入的字符在标准的输出设备上有回显)。如果该输入操作被重定向,那么,
将无法判断文件是否已到文件尾
入口参数:AH=0AH
DS:DX=存放输入字符的起始地址
接受输入字符串缓冲区的定义说明:
  1、第一个字节为缓冲区的最大容量,可认为是入口参数;
  2、第二个字节为实际输入的字符数(不包括回车键),可看作出口参数;
  3、从第三个字节开始存放实际输入的字符串;
  4、字符串以回车键结束,回车符是接受的最后一个字符;
  5、若输入的字符数超过缓冲区的最大容量,则多出的部分被丢弃,系统并
发出响铃,直到输入“回车”键才结束输入。
例如:
  BUFF 80, ?, 80 DUP(?)   ;最多接受80个字符
出口参数:无

(9)、功能0BH
功能描述:检查标准输入设备上是否有字符可读。该输入操作可被重定向
入口参数:AH=0BH
出口参数:AL=00H——无字符可读;FFH——有字符可读

(10)、功能0CH
功能描述:清空当前的标准输入缓冲区,再读入字符。其输入操作可被重定向
入口参数:AH=0CH
AL=01H、06H、07H、08H或0AH
出口参数:若入口参数AL为0AH,则DS:DX=存放输入字符的起始地址,否则,
出口参数AL=输入字符的ASCII码
lin115406828 2009-03-21
  • 打赏
  • 举报
回复
LS正解,对于中断21号中断的10号功能是从键盘输入字符串!
其实mov ah,10也可以写为mov ax,0a00h
lea dx,buf ;从键盘输入年份字符串
你主要要看到的就是输入的是一个字符串就好了!
xinghun_4 2009-03-21
  • 打赏
  • 举报
回复
谢谢各位了
rookie001 2009-03-20
  • 打赏
  • 举报
回复
这是中断编程..
调用21号中断..ah存储函数功能号..
10号功能 ,是从键盘读字符串,好像
pla_007 2009-03-20
  • 打赏
  • 举报
回复
INT 21,A - Buffered Keyboard Input

AH = 0A
DS:DX = pointer to input buffer of the format:

| max | count | BUFFER (N bytes)
| | `------ input buffer
| `------------ number of characters returned (byte)
`-------------- maximum number of characters to read (byte)


returns nothing

- since strings can be pre-loaded, it is recommended that the
default string be terminated with a CR
- N bytes of data are read from STDIN into buffer+2
- max buffer size is 255, minimum buffer size is 1 byte
- chars up to and including a CR are placed into the buffer
beginning at byte 2; Byte 1 returns the number of chars
placed into the buffer (extended codes take 2 characters)
- DOS editing keys are active during this call
- INT 23 is called if Ctrl-Break or Ctrl-C detected

这是摘自中断大全里的。你自己看下就明白了。
xinghun_4 2009-03-20
  • 打赏
  • 举报
回复
我知道是调用中断,这是我看的人家的代码,他说是这个作用“;从键盘输入年份字符串”,我感觉不像
cs258448 2009-03-20
  • 打赏
  • 举报
回复
和下面int 21h是一起的
调用中断

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧