作为作业的一部分,我应该使用系统调用写入文件。一切正常,除非我尝试在 gedit (Linux) 中打开文件。它说它无法识别字符编码。记事本(在 Windows 上)可以很好地打开文件。
为什么这在 Linux 上不起作用?
代码如下:
section .text
global _start
_start:
mov EAX, 8
mov EBX, filename
mov ECX, 0700
int 0x80
mov EBX, EAX
mov EAX, 4
mov ECX, text
mov EDX, textlen
int 0x80
mov EAX, 6
int 0x80
mov eax, 1
int 0x80
section .data
filename db "./output.txt", 0
text db "hello world", 0
textlen equ $ - text
-- 更新:在输出字符串固定后添加一个换行符。
最佳答案
将第 3 行更改为:
mov ECX,0x0700
关于linux - 使用系统调用写入 nasm 中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4526424/