汇编语言的问题请教
date segmentzifu db 100 dup(?),'$'
date ends
codesg segment
assume cs:codesg,ds:date
start:mov ax,date
mov ds,ax
node:
mov ah,1 ;DOS 键盘1号功能调用 作用从键盘输入1个字符并显示 检查ctrl-break键,入口参数无,出口AL=字符
int 21h
mov zifu,al ;将输入字符 放到存储器的数据区
inc zifu ;将数据的偏移地址增加1
cmp al,32 ;比较输入字符是否为空格键 空格ASCII=32
jnz node ;不是空格键 程序跳转到NODE处 形成循环
lea dx,zifu lea 地址装载指令
mov ah,9 DOS 9号功能 显示字符串 入口参数为 ds:dx
int 21h
mov ah,4ch
int 21h
codesg ends
end start
我想知道为什么
我将zifu 这个变量的值 inc 后
在后面的DOS 9号功能中 再次引用zifu 这个变量,而字符的输出确是正确的,照说 这个 zifu 的值 应该是加入说我输入X个字符 zifu的值应该是 zifu+x
DOS 9号功能的输出 后面有跟个 ! (感叹号) 呢 我输入字符的时候是没有输入感叹号的!!!!
[ 本帖最后由 zhu224039 于 2012-9-28 00:54 编辑 ]