这个问题在这里已经有了答案:
Looking for 16-bit c compiler for x86 [closed]
(4 个回答)
5年前关闭。
我已经尝试了几乎所有具有每种设置的 C 编译器,但我还没有找到可以将 C 编译为适用于实模式内核开发的 Intel x86 代码的 C 编译器。我不需要任何关于你为什么应该使用保护模式的争论;我只需要知道编译一个 16 位、独立的二进制文件需要哪个 C 编译器(如果需要,运行它的设置是什么),没有操作系统依赖等。只是在实模式下裸机,仅此而已。
我很确定这不是 [实模式内核的 16 位 C 代码] 的副本:16 bit C code for real mode kernel因为他们接受切换到保护模式作为答案,我明确指出结果必须适用于实模式。
最佳答案
C 不是一种设计为在实模式下运行的语言,因此遗憾的是不允许 16 位编译。
使用 NASM 汇编或任何其他汇编语言来获得你想要的。它有点学习曲线,但是一旦它点击,您就会了解计算机的功能和 OSDev 将如何飞越屋顶。
我建议查看这个 wiki 和论坛,里面有很多志同道合的人和教程
http://wiki.osdev.org/Main_Page
祝你好运!
关于c - 用于实模式内核开发的 16 位 C 编译器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39502902/