当前位置:编程学习 > 汇编语言 >>

有关汇编语言的,可以帮我讲解一下下面的程序每个语句的作用吗?

BEGIN: MOV AH , 1 INT 21H CMP AL , 'a' JB STOP CMP AL , 'z' JA STOP SUB AL , 20 MOV DL , AL MOV AH , 2 INT 21H JMP BEGIN STOP: RET
追问:MOV  AH , 1
 INT  21H
意思是不是 在键盘输入1,就开始系统功能调用?MOV  AH , 1
 INT  21H这个我明白了,是在键盘输入
为什么要MOV  DL , AL        送到寄存器DL中?不送到DL显示不出来吗?
答案:这段程序是从键盘输入字符,然后判断条件,符合条件的进行一个操作,然后显示在屏幕上。每句解释如下:
BEGIN:  MOV  AH , 1
             INT  21H                                 以上两句,1号中断,从键盘输入字符
             CMP  AL , 'a'
             JB  STOP                   以上两句判断输入字符是否大于a,大于继续执行,小于就停止
             CMP  AL , 'z'
             JA  STOP             以上两句判断输入字符是否小于z,小于继续执行,大于就停止
             SUB  AL , 20       把符合条件的字符转换成相应的大写字母
             MOV  DL , AL        送到寄存器DL中
             MOV  AH , 2      
             INT  21H            以上两句是2号中断,在屏幕上显示符合条件的字符
             JMP  BEGIN
STOP:   RET

上一个:王爽《汇编语言》检测点9.3的一道题
下一个:急求,汇编语言进行冒泡法排序的程序例子!!

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,