回 帖 发 新 帖 刷新版面

主题:请尽量回答,小问题

buf db 8 dup(?)
与下面这个:
buf db 8
        db ?
        db 8 dup(?)
有什么区别?


////////////////////////////////////////////////////////////////

 mov ah,9
 int 21h

 mov ah,10
 int 21h

这两个中断指令是什么意思,怎么用

///////////////////////////////////////////////////////////////////
 infon db 0dh,0ah,'Please input a year: $'

这个变量定义伪指令中的0dh,0ah有什么作用?

回复列表 (共4个回复)

沙发

1.buf db 8 dup(?)定义连续8个字节单元,其内容均为初始状态。而buf db 8,?,8 dup(?);定义了一个字节单元8,一个未初始化字节单元和8个未初始化字节单元,一共定义了10个连续字节单元。
2.分别是dos的9号“显示字符串”和10号“键盘输入到缓冲区”的功能调用,用来显示和得到字符串。
3.我也不知道怎么用,得看看以后得的程序怎么用到这两个数剧了。实在看不出来13和10这两个数跟input a years有什么关系。
嘿嘿。。。。

板凳

一:这俩种表示一般情况下一样。但第二种表示法用于09号调用中。它是一种09号调用所固定的格式,只有这样才能使DS:DX正确的找到地址。
buf db 8
        db ?   //?由系统装填。
        db 8 dup(?)
二:分别是9号和十号调用。这个问题自己看书好吗?我不信你看不懂。

三: 0dh为13,  0ah为10表示回车和换行。

3 楼

buf 是保留字吗?这个不太懂,我还以为是自定义变量呢。还没学到,献丑了。

4 楼

buf不是保留字吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册