一道汇编问题

来源:百度知道 编辑:UC知道 时间:2024/05/17 02:17:34
通过DOS功能将字符串"How do you do!"显示在屏幕上
谢谢你们
=我上课是用用看
给你门答案

DATA SEGMENT
;数据段:在此处添加程序所需的数据
MSG DB 'How do you do!$'
DATA ENDS

CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START;程序入口
MOV AX,DATA
MOV DS,AX ;——初始化数据段

LEA DX,MSG;——DX得到将要输出字符串的首地址
MOV AH,9
INT 21H ;调用9号功能
MOV AH,4CH;返回到操作系统
INT 21H
CODE ENDS

END START

我这个程序就是直接输出'How do you do!'了。当然可以编一个分支程序,当我们输入Y,才输出字符串,输入N不输出。

注:21H中断9号功能的使用要点
1、被显示的字符串应该以'$'作为结束符号
2、把要被显示字符串所在的首地址赋给DX
3、最后调用9号功能(AH=9,INT 21H)输出该字符串

DSEG SEGMENT
;数据段:在此处添加程序所需的数据
msg db 'How do you do!$'
DSEG ENDS
CSEG SEGMENT
assume cs:CSEG, ds:DSEG
MAIN PROC FAR ;主程序入口
mov ax, dseg
mov ds, ax
;此处添加主程序代码
lea dx,msg
mov ah,9
int 21h
;按任意键退出
mov ah,1
int 21h
mov ax, 4c00h ;程序结束,返回到操作系统系统
int 21h
MAIN ENDP
CSEG ENDS
END MAIN

运行debug