【发布时间】:2020-07-10 14:12:54
【问题描述】:
我正在我的树莓派上学习 ARM 汇编,我正在尝试写入一个名为“user_data.txt”的文件。我确实知道如何创建文件,就像这样......
.data
.balign 1
file_name: .asciz "user_data.txt"
.text
.global _start
_start:
MOV R7, #8
LDR R0, =file_name
MOV R1, #0777
SWI 0
_end:
MOV R7, #1
SWI #0
...但是,正如我所说,我不知道如何写入该文件。我看过其他教程,但我看过的都没有解释每一行的作用。我知道我会将 4 移到 R7 中,以便调用 sys_write 系统调用,但我如何告诉 ARM 我要写入的文件名?
谁能给出一些代码,清楚地显示和解释一些写入文件的ARM?
谢谢,
- 初始立方
【问题讨论】:
-
你在为什么操作系统编程?
-
啊,好的,我明白了,非常感谢您的回复 :) 是 R0 中的文件描述符还是什么?另外,“这不是 asm 特定的”是什么意思?
-
我正在使用 Rasbian
-
是的,它在
r0。不是 asm 特定的,因为它是标准的 unix 文件处理。
标签: linux assembly io arm system-calls