数据定义问题
我想定义一个空间大小为10的a来接收键盘输入的字符串。a db 10dup(0)的方法程序出错
a db 10,0,10dup(0)就对了
为什么第一种方法会错?第二种方法的第一个10和0是什么意思?
data segment
a db 10 dup (0)
data ends
code segment
assume cs:code, ds:data
start:
mov ax, data
mov ds, ax
mov ah, 4ch
int 21h
code ends
end start
;上面的那个程序是用来说明a db 10 dup (0) 没错的,你的可能是()要是英文输入的
;a db 10,0,10dup (0) 这个10 是键盘缓冲区能存储的最大数据个数, 0是实际存储数据个数 What‘s the fox say ? swsm 发表于 2014-5-21 10:25 static/image/common/back.gif
;上面的那个程序是用来说明a db 10 dup (0) 没错的,你的可能是()要是英文输入的
;a db 10,0,10dup (0) 这 ...
你这是汇编啊!!! 815116820 发表于 2014-5-21 13:00 static/image/common/back.gif
你这是汇编啊!!!
我这是汇编!呀呀呀呀呀呀! 那个代表实际存储个数的0有什么作用?第一种定义方法为什么不能接收英文?有什么不对?求再解答一下,拜托了! swsm 发表于 2014-5-21 14:56
我这是汇编!呀呀呀呀呀呀!
那个代表实际存储个数的0有什么作用?第一种定义方法为什么不能接收英文?有什么不对?求再解答一下,拜托了! 四象轮回 发表于 2014-5-21 19:08 static/image/common/back.gif
那个代表实际存储个数的0有什么作用?第一种定义方法为什么不能接收英文?有什么不对?求再解答一下,拜托 ...
我现在才上网,抱歉!
第一种方法是正确的,我的回答是,dup(0) 这个()要是英文输入下的()这是语法问题,呵呵
键盘缓冲区的实际存储个数会显示数据的个数,这个在你的程序中可以利用啊,好处还是有的,
页:
[1]