我如何在汇编中执行文件io?我的意思是集会。我讨厌宏。我正在寻找使用ASM编辑预先存在的10 MB文件。
如果有人可以给我一些关于如何做的快速示例代码,那将不胜感激。
谢谢!
答案 0 :(得分:3)
所有实际的文件I / O将由操作系统处理,由open()
/ close()
/ read()
/ write()
/等抽象出来。系统调用(或Windows上的等价物)。所以你的ASM需要做的就是调用这些函数(在堆栈上正确设置参数等),并处理返回值。
因此,如果您已经知道如何在C中使用open()
/ close()
等,并且您知道如何从ASM调用函数,那么您已经完成了!
答案 1 :(得分:3)
如果您正在学习汇编Here's,那么阅读文件肯定不应该是您的第一个程序。只要您在Windows中,就需要以某种方式在win32 API中调用CreateFile。
该示例使用宏调用CreateFile,不要让它阻止你,你可以轻松打开nasm包含文件并查看宏后面的程序集并复制粘贴该程序集。