如果操作系统是C语言开发的,那么C编译器运行在什么上呢?

谁呢跟我说的详细些呢,一直搞不明白。
2024-12-14 00:05:03
推荐回答(5个)
回答1:

操作系统是c开发的,跟c编译器运行在机器上,这两个问题一点关系都没有。
在没有c编译器之前的那个时代,当然只能用汇编写操作系统了,但是后来用汇编开发了c编译器,就可以用c写操作系统了,用c写了操作系统,经过c编译器编译之后得到的就是机器代码(可以认为是汇编),c编译器只是一个工具,反正你给机器代码给cpu执行就行了,没有任何问题呵呵

这就好比如在原始社会人类只能用手挖东西,挖了铁以后就可以用铁做出铁器来挖东西,就是这么发展。
c语言又可以用来开发更高级的编译器,更高级的编译器又可以拿来开发操作系统了,只要你喜欢。
不同的是汇编直接写的执行效率比较高,高级语言写的执行效率比较低,但是高级语言开发的时间比较短,提高工作效率

回答2:

  1. 操作系统。

  2. C编译器是运行在需要开发C程序的操作系统下的,这里你可以把你用C语言开发的操作系统认为是一个C程序。

  3. C编译器要装在电脑的操作系统上,然后你在装有编译器的操作系统下完成了另一个操作系统的开发,然后将你完成的这个操作系统安装在另一台机器上,然后你的C开发的操作系统就运行了。

  4. C编译器可以理解为开发工具,操作系统是C语言开发的,用的不止编译器,编译器只是很少的一部分,这里用它代替开发环境。

  5. 计算机是一台机器,不一定非要操作系统,只要是机器码装入内存,都可以执行。

回答3:

首先操作系统不是完全由C开发的,至少bootloader部分还是汇编做的
然后不是所有操作系统都是用C开发的,最早的UNIX,CP/M开发的时候C语言都还没出现呢
C开发的操作系统一般是用另一个系统上的编译器进行交叉编译生成二进制文件

回答4:

系统是用c语言开发的 但是不是完全用c开发的
先用汇编语言启动机器 进入保护模式 等一大堆破事
因为汇编指令(伪指令除外)不需要编译器 cpu能直接用啊
而c编译器也是运行在这个基础之上
最初代的c语言编译器 都是汇编写的
然后才是c语言写各种逻辑结构

回答5:

C编译器可以理解为开发工具,按照你说的,操作系统是C语言开发的,那用什么开发它呢,用的就是C编译器吧(不止编译器,编译器只是很少的一部分,这里用它代替开发环境),C编译器要装在电脑的操作系统上吧,然后你在装有编译器的操作系统下完成了另一个操作系统的开发,然后将你完成的这个操作系统安装在另一台机器上,然后你的C开发的操作系统就运行了。所以说,C编译器是运行在需要开发C程序的操作系统下的,这里你可以把你用C语言开发的操作系统认为是一个C程序。你在开发C程序而已,那这样你就该知道你的C编译器运行在什么上面了吧。