大家好,今天小编关注到一个比较有意思的话题,就是关于C语言是什么啊的问题,于是小编就整理了2个相关介绍C语言是什么啊的解答,让我们一起看看吧。
C语言本身是用什么语言写的?
C语言本身是一门语言而已啊,语言是用什么写的,这个问题有点抽象啊[捂脸][捂脸]
可能你说的是编译器吧,编译C语言的编译器是用什么语言编写的,可能你想问这个吧。
既然你对C有了解,那么你应该知道C其实是一门高级语言,那肯定还有低级语言,比如汇编语言。
这里有个概念叫自举,就是用汇编写一个C精简版编译器,然后用这个编译器配合C语言再编写出更牛逼的C编译器,虽然有点绕,但是能理解就行。
至于现在C编译器可以用很多更高级语言来做了,比如用C++来做。
是用C语言编写的。
这里有一个概念,就是编程语言的自举。
自举(bootstrapping)字面理解就是自己能把自己给举起来,换做编程语言来讲就是,自己编译自己。也就是C语言能通过C语言自己编写自己的编译器。
完成自举通常需要3-4个步骤。
2、编译自举编译器。
3、通过自举编译器编译完整的编译器。
4、通过第三步里面的完整的编译器编译完整的编译器。
第四步得到的编译器就是一个自举编译器。
那么问题来了,第2步中的编译器是什么语言写的呢,是这么来的呢?
C语言本身是用汇编语言和其他高级语言(如B语言)编写的。C语言最初是由贝尔实验室的Dennis Ritchie在20世纪70年代开发的,他使用了汇编语言来编写一些底层代码,然后使用B语言来编写更高级别的代码。之后,Ritchie和他的同事们将B语言改进为C语言,并用C语言重新实现了Unix操作系统。因此,可以说C语言是由汇编语言和B语言共同演化而来的。
既然你能提出这个级别的问题,说明你应该学过C。既然你能提出这个级别的问题,说明你没学过编译原理(或者全还给老师了[捂脸],容我不厚道一下下)。
你所谓的"C语言",准确来说,指的是能把C语言程序翻译成机器指令程序的"编译器"程序。
先用汇编写一个极小的原始编译器(AC),能编译最简单的C语法。然后用该原始编译器AC编译一个最简单的C编译器(CC1)。然后用CC1编译一个稍微复杂一点的C编译器(CC2)。最终,像滚雪球一样,C语言就把一个拥有完全编译功能的C编译器给编译出来了。
推荐资料:陈火旺老师的经典教材《编译原理》,开篇讲的就是这个问题。
最早的计算机语言是机器语言,直接面向计算机硬件。虽然指令不多,但实现特定任务需要编制复杂的程序。由于缺乏存储系统,程序存储于纸带上。随着存储介质的发展和程序模块化演变,计算机语言由低级向高级不断发展。尤其是视窗操作系统的出现,使得计算机对用户更加友好。
C语言是干嘛用的啊?
C语言是计算机编程领域的一种高级语言,它广泛用于系统编程、嵌入式开发、游戏开发、网络编程、科学计算等领域。使用C语言可以编写高效、可移植、可重用的软件,是许多操作系统、编译器、数据库、浏览器等软件开发的基础语言。同时,C语言的语法简洁、代码可读性高,对于初学者来说也比较易于学习。总之,C语言是计算机编程领域不可或缺的一门语言。
C语言是一种通用的、面向过程的编程语言,它被广泛用于系统软件开发、嵌入式系统、驱动程序、游戏开发、科学计算以及其他需要高性能和效率的领域。
以下是C语言的一些主要应用领域:
1. 系统软件开发:C语言可以用于开发操作系统、编译器、数据库系统、网络协议等底层软件。
2. 嵌入式系统:C语言是嵌入式系统开发的主要语言之一,可以用于编写单片机的程序、传感器驱动等。
3. 驱动程序:C语言可以用于开发设备驱动程序,如音频驱动、图形驱动、打印机驱动等。
4. 游戏开发:很多游戏引擎和游戏开发工具都使用C语言作为开发语言,因为它能对硬件的直接访问和高效的性能。
5. 科学计算:C语言提供了高性能的数学库,可以用于各种科学计算和数据分析任务。
总的来说,C语言的设计简洁、灵活、高效,使它成为一种广泛应用的语言,适用于各种各样的软件开发任务。它的代码可以被编译成高效的机器码,在各个平台上运行。
到此,以上就是小编对于C语言是什么啊的问题就介绍到这了,希望介绍关于C语言是什么啊的2点解答对大家有用。