我在大会读取文件错误。微软大会
在一个相当大的程序在工作,我有一点问题在这个特定的代码
ToArray proc _FH:word ; _FH File Handler ;non-void function returns -1 if error
LOCALS
push AX BX CX
MOV BX, _FH
MOV CX, 400
MOV DX, offset FileBuffer
MOV AH, 3FH
INT 21H
JC ErrorReading
call puts, offset Read_Success
JMP DONE
ErrorReading:
call puts, offset Read_Error
MOV DX,-1
DONE:
pop CX BX AX
ret
ToArray endp
我有{1 2 5 6}在打开的文件中,但在呼叫INT 21H后,它仅使用80241 80241填充阵列。
为什么会发生这种情况:?
你在看什么缓冲区? 80241显然不适合一个字节,那么你是否将数据视为单词(或双字)?那80241是十进制还是十六进制?执行中断后,“AX”的值是多少? – Michael 2013-05-07 17:03:44
缓冲区是一个正在读取的字符整数虽然.. 从1 3 5 6我有8241 8243 8245 3382 10 所有十进制值和AX等于9h:? – geekybedouin 2013-05-07 17:15:50