在EMU8086上分别利用2号和9号DOS调用,实现26个字母A-Z的输出显示
时间: 2024-02-27 09:54:18 浏览: 185
2号DOS调用是显示字符的功能,9号DOS调用是向控制台输出字符串的功能。下面是利用这两个DOS调用在EMU8086上实现26个字母A-Z的输出显示的汇编程序:
```
org 100h
;显示字符函数
display_char:
mov ah, 2h ;2号DOS调用,显示字符
mov dl, al ;将要显示的字符存入dl寄存器
int 21h ;调用DOS中断
ret
;输出字符串函数
output_string:
mov ah, 9h ;9号DOS调用,输出字符串
mov dx, offset message ;将字符串地址存入dx寄存器
int 21h ;调用DOS中断
ret
message db "ABCDEFGHIJKLMNOPQRSTUVWXYZ$"
start:
mov cx, 26 ;循环26次
mov si, 0 ;从字符串的第一个字符开始
loop1:
mov al, [message+si] ;将字符存入al寄存器
call display_char ;显示字符
inc si ;指向下一个字符
loop loop1 ;循环
mov ah, 4ch ;DOS退出程序功能
int 21h ;调用DOS中断
```
程序中定义了两个函数,一个用于显示单个字符,一个用于输出字符串。在程序开始处定义了一个包含所有字母和终止符的字符串。在主程序中,利用循环遍历字符串中的每个字符,依次调用显示字符函数进行显示。最后使用DOS退出程序功能退出程序。
阅读全文