可能的重复:
无需汇编的 C/C++ 函数定义 https://stackoverflow.com/questions/2442966/c-c-function-definitions-without-assembly
你好,我们又见面了,
我想知道 printf 内部是如何工作的...内部我的意思是底层系统调用/ISR使用等机制...而不是关于变量参数列表...
原因:我正在使用 FASM,但控制台 I/O 很少,我知道我可以使用 c 库中提供的 printf(我不知道如何使用,但这是不同的一点)
thanks.
The write(2)
使用系统调用,文件描述符设置为STDOUT
(其值为1)。
要从程序集调用系统调用,eax 寄存器必须保存系统调用的 id(我认为特定的数量)write()
是 3),其余寄存器(ebx、ecx、...)必须包含参数。然后做一个int 80h
会将控制权从进程切换到处理系统调用的内核例程。
以上是特定于平台的,但实际上所有类 Unix 操作系统都是这样工作的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)