0

我有一个用于打印和循环字符串的代码,我将如何在不使用空白字符的情况下从屏幕上的特定(x,y)坐标开始打印字符串?我的意思是,我希望能够为我的打印函数指定起始位置,而不是循环打印空白字符的代码,直到我到达我想要的位置。

.model small

.stack 100h

.data

string db "string$"

.code

main: 
mov cx, 3

l: 
mov ax, @data
mov ds, ax
mov ah, 09h
mov dx, offset string
int 21h
loop l


mov ah, 4ch
int 21h 

end main
4

1 回答 1

0

你基本上有两个选择:

1)如果您的终端支持它,您可以在发送字符串输出之前输出ANSI 转义序列来定位光标。

2)您可以直接写入显存。如果将图形适配器设置为 80x25 彩色文本模式,视频内存将从地址 0xB800:0 开始,并且由每个字符的字符/属性字节对组成 - 总共 4K。

于 2013-04-03T18:25:17.370 回答