在TXT文件中写入结果是六进制代码?(32 位程序集)



我似乎无法弄清楚为什么我的两个打开和写入/导出最大公共除法器的结果的过程在 HEXA 中称为文件名!

当我打开 TXT 时,写了一些东西,当我在 hexaeditor 中打开 TXT 时,结果很好,有什么想法吗?我将结果从 eax 移动到 pomGCD。

PomGCD DB 10 dup(?)
MenoSub DB 'GCD.txt',0 
FileHandle DD ?
ByteNumber DD ?
LetterNumber DD 1

openFile PROC                                       ; 2 procedures for opening and writing
    push NULL   
    push FILE_ATTRIBUTE_NORMAL  
    push CREATE_ALWAYS
    push NULL
    push 0
    push GENERIC_WRITE
    push offset FileName
    call CreateFileA 
    mov FileHandle,eax
    ret
openFile ENDP
writeFile PROC
    push NULL
    push offset ByteNumber
    push LetterNumber
    push offset pomGCD
    push FileHandle
    call WriteFile
    ; close file
    push FileHandle
    call CloseHandle
    ret
writeFile ENDP

在将结果保存到 TXT 文件之前,您是否将结果转换为 ASCII 字符?否则,它仍然是二进制数。这可以解释为什么你可以用十六进制编辑器阅读它。

最新更新