将字符串作为输入,然后在程序集8086中显示它

时间:2018-01-01 16:04:05

标签: string assembly emu8086

我知道如何进行单字符输入和字符串输入。我也知道如何使用带有INT 21h的DOS函数显示自选字符串。但我想知道如何获取字符串输入并显示相同的字符串。

使用以下方式进行字符串输入时

MOV AH, 0Ah
INT 21h

字符串存储在哪里?在单个字符输入和输出的情况下,字符存储在AL寄存器中。所以知道存储字符串的地址,我可以在DX寄存器中加载它的地址并显示它,对吗?

感谢任何帮助,提前感谢...

2 个答案:

答案 0 :(得分:1)

  

字符串存储在哪里?

字符串从输入缓冲区的第三个字节开始存储,DS:DX中提供指针。

有关非常详细的解释,您可以通过示例进行学习,请参阅 How buffered input works

  

但我想知道如何获取字符串输入并显示相同的字符串。

链接帖子中的示例就是这样。

答案 1 :(得分:0)

对于INT 21,AH = 0Ah,调用者传入缓冲区,在该缓冲区中将字符串存储在DS:DX中。

有关使用中断的完整信息,请参阅Ralf Brown的中断列表。您可以找到许多地方之一http://www.ctyme.com/rbrown.htm