Tag: 内联程序集

没有汇编的C / C ++函数定义

我一直认为像printf()这样的printf()在最后一步是使用内联汇编定义的。 在stdio.h的深处隐藏了一些实际上告诉CPU要做什么的asm代码。 例如,在dos中,我记得它是通过首先将string的开始移动到某个内存位置或寄存器,然后调用一个int中断来实现的。 但是,由于Visual Studio的x64版本根本不支持内联汇编程序,这让我想知道在C / C ++中如何不存在汇编程序定义的函数。 在不使用汇编代码的情况下,像printf()这样的库函数如何在C / C ++中实现? 什么实际上执行正确的软件中断? 谢谢。