当前位置:首页 » 编程软件 » 简介一个编译系统

简介一个编译系统

发布时间: 2022-04-22 12:27:41

A. 什么是编译程序

编译程序指将某一种程序设计语言写的程序翻译成等价的另一种语言的程序的程序, 称之为编译程序

编译程序也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。编译程序属于采用生成性实现途径实现的翻译程序。

它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。

编译程序的实现算法较为复杂,这是因为它所翻译的语句与目标语言的指令不是一一对应关系,而是一多对应关系,同时也因为它要处理递归调用、动态存储分配、多种数据类型,以及语句间的紧密依赖关系。

由于高级程序设计语言书写的程序具有易读、易移植和表达能力强等特点,编译程序广泛地用于翻译规模较大、复杂性较高、且需要高效运行的高级语言书写的源程序。

(1)简介一个编译系统扩展阅读:

编译流程分为了四个步骤:

1.预处理,生成预编译文件(.文件)

2.编译,生成汇编代码(.s文件)

3.汇编,生成目标文件(.o文件)

4.链接,生成可执行文件

B. c语言编译系统哪个比较好用

下载GCC
MinGW是Minimalistic
GNU
for
Windows
的缩写。她是一个建立在GCC和binutils
项目上的编译器系统。和其他GCC的移植版相比,她可以说是最接近Win32的一个了。因为,MinGW几乎支持所有的Win32API,这也是MinGW的特色之一。她所连接的程序,不需要任何第三方库就可以运行了。在某种程度上看,MinGW更像是VC的替代品。
获得与安装
MinGW可以从MinGW的官方网站
http://www.mingw.org
上获得。
如果,你要安装MinGW,那么你有两种安装方案。
安装方案一:
首先,你要从
http://www.mingw.org/download.shtml
上下载如下几个压缩包。
gcc-core
C语言编译器
gcc-c++
C++语言编译器
mingw-runtime
MinGW的运行时库(这个必须安装)
win32api
win32的API函数头文件和连接库
binutils
MinGW的汇编器和连接器等基础工具
gdb
MinGW中的调试工具
mingw32-make
Make工具,用以更好的管理你的项目
然后,将上述文件逐一下载,然后全部解压缩到一个目录下就可以了,我这里假设你是移动到$(MINGW)这个目录下了。这样,你的MinGW就算安装成功了。
最后到DOS终端上,将当前目录转换成
$(MINGW)/bin
下。输入C:\>gcc
-v
看到一段gcc的版本信息,这就能说明,你的gcc已经可以正常工作了。

C. C语言编译系统

推荐用WinTC,然后在程序结束时加上getch();
系统可以利用getch()函数让程序调试运行结束后
等待编程者按下键盘才返回编辑界面
如:
#include<stdio.h>
main()
{
printf("Welcome to Use WinTC\n");
getch();
}

D. 编译系统的编译系统CMake

CMake就像是我们在uni上使用的make一样,是用来管理怎样编译一个project的。它的好处是:
1) 跨越多个操作系统平台,包括当前应用最广泛的windows,unix(包括Mac OS X).
2) 采用BSD风格的协议开放源代码。据我个人阅读协议文件,没发现协议与两句BSD协议有什么不同。
3) 它可以支持具有非常复杂的路径、库依赖的程序的编译。比如它支持编译个程序:它依赖于很多的库以及其它一些代码文件,而每一个库又有很多子目录。。。
4) 像很多Make一样,它会对曾经编译的文件做一些cache一遍加速以后的编译。
使用这个编译系统的时候,需要每个目录/子目录创建一个名为CMakeLists.txt的文件。
这个项目历史也算是比较悠久了,从2000年就开始了。
当前使用这个编译系统的项目:llvm/clang。。。
我就是从clang的源代码里发现的,邮件列表里有人推荐使用cmake,不要使用msvc的.sln文件

E. C语言的各类编译系统的特点

你是不是问的各类编译器??如果是编译器的话请往下看,不是的话请忽略,工中号一匹大懒虫


C语言编译器目前主要有VC++、dev-C++、C-Free、win-TC、TC 2.0等等。

其中比较经典的VC++,微软的产品,编译器,链接器,运行,调试等功能于一体的强大开发工具,特点是功能十分强大,对于新手来说需要一段时间去摸索。

dev-C++是windows下一款开发c/c++的开发环境,使用gcc为编译器,遵循标准,功能比较强大,语法高量,可以进行单步调试(这对排除错误很重要),进行断点设置等功能,遵循C标准,是一款很强大的开发工具。

C-Free是一款支持多种编译器的专业化C/C++集成开发环境(IDE)。利用C-Free,使用者可以轻松地编辑、编译、连接、运行、调试C/C++程序。

TC 2.0:Borland公司的产品,在dos界面下编译运行,小巧、灵活,但是不能使用鼠标。

win-TC:在tc2.0的基础上加上了界面,能够使用鼠标,具有语法高量,可以嵌入汇编等特点,对新手一些,拜托了不能用鼠标的困难。

编译器,简单讲,就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) 预处理器 (preprocessor) 编译器 (compiler) 目标代码 (object code) 链接器(Linker) 可执行程序 (executables)。

F. 什么叫自动编译系统。 要求:能支持VC6、VC2008和VC2010的工程自动编译。最好介绍一种编写的脚本~~

不知道你想干什么,但是如果你想做个编译脚本,可以参考编译器的相关参数,对于微软的开发工具,通常在MSDN中能找到相关编译命令的说明。你可以通过调用这些编译命令实现你对指定工程的编译处理。但前题是你的系统存在相关开发工具的编译命令运行环境。

G. 怎样做一个基于c#的在线编译系统

#include<stdio.h> void move(char x,char y) { printf("%c-->%c\n",x,y); } void hanoi(int n,char one ,char two,char three) { if(n==1) move(one,three); else { hanoi(n-1,one,three,two); move(one,three); hanoi(n-1,two,one,three); } } main() { int m; printf("input the number of disks:"); scanf("%d",&m); printf("the step to moving %3d diskes:\n",m); hanoi(m,'A','B','C'); } 算法介绍: 其实算法非常简单,当盘子的个数为n时,移动的次数应等于2^n – 1(有兴趣的可以自己证明试试看)。后来一位美国学者发现一种出人意料的简单方法,只要轮流进行两步操作就可以了。首先把三根柱子按顺序排成品字型,把所有的圆盘按从大到小的顺序放在柱子A上,根据圆盘的数量确定柱子的排放顺序:若n为偶数,按顺时针方向依次摆放 A B C; 若n为奇数,按顺时针方向依次摆放 A C B。 (1)按顺时针方向把圆盘1从现在的柱子移动到下一根柱子,即当n为偶数时,若圆盘1在柱子A,则把它移动到B;若圆盘1在柱子B,则把它移动到C;若圆盘1在柱子C,则把它移动到A。 (2)接着,把另外两根柱子上可以移动的圆盘移动到新的柱子上。即把非空柱子上的圆盘移动到空柱子上,当两根柱子都非空时,移动较小的圆盘。这一步没有明确规定移动哪个圆盘,你可能以为会有多种可能性,其实不然,可实施的行动是唯一的。 (3)反复进行(1)(2)操作,最后就能按规定完成汉诺塔的移动。 所以结果非常简单,就是按照移动规则向一个方向移动金片: 如3阶汉诺塔的移动:A→C,A→B,C→B,A→C,B→A,B→C,A→C 汉诺塔问题也是程序设计中的经典递归问题,下面我们将给出递归和非递归的不同实现源代码。

H. 一个典型的编译系统通常由哪些部分组成

编译系统又称为第二类编程环境开发者根据语言的规定编写源程序,然后进行编译、连接,生成可执行文件,例如DOS操作系统加各类高级语言,如FORTRAN、PASCLL、C语言等就属于这种类型接口平台,用于提供编译任务输入接口以及处理状态信息输出接口,并根据输入的编译任务生成任务名;编译服务器,用于解析所述任务名,获得相应的源代码,并进行编译,同时产生所述编译任务的处理状态信息提供给所述接口平台。 接收输入的编译任务; 根据所述编译任务生成任务名; 解析获得所述任务名对应的源代码; 所述源代码,并输出所述编译任务的处理状态信息; 处理状态信息,通过接口平台实时提供给客户端,简化了编译监控操作,大大节约了人力资源。

I. c语言编译系统有哪些及其特点

C 语言特点
C语言是一种成功的系统描述语言,用C语言开发的UNIX操作系统就是一个成功的范例;同时C语言又是一种通用的程序设计语言,在国际上广泛流行。世界上很多着名的计算公司都成功的开发了不同版本的C语言,很多优秀的应用程序也都使用C语言开发的,它是一种很有发展前途的高级程序设计语言。 1. C是中级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。 2.C是结构式语言。结构式语言的显着特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 3.C语言功能齐全。具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。 c语言
4. C语言适用范围大。适合于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。 C语言对编写需要硬件进行操作的场合,明显优于其它解释型高级语言,有一些大型应用软件也是用C语言编写的。 C语言具有较好的可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。 常用的C语言IDE(集成开发环境)有Microsoft Visual C++,Dev-C++,Code::Blocks,Borland C++,Watcom C++,Borland C++ Builder,GNU DJGPP C++,Lccwin32 C Compiler 3.1,High C,Turbo C,C-Free,win-tc 等等…… c语言的学习 对于一个初学者,Microsoft Visual C++是一个比较好的软件。界面友好,功能强大,调试也很方便。这是微软出的一个C语言集成开发环境(IDE),主要有:VC++6.0、VS2005、VS2008、VS2010等,分为企业版和学生版等。对于初学者VC++6.0是比较容易上手的,但由于其对标准支持的不好可能使人养成不良编程习惯,因此论坛上也有人主张舍弃VC++6.0。 在unix/linux操作系统上,学习c语言一般使用vim/emacx来编辑源文件,使用gcc/cc来编译源文件,使用make程序来管理编译过程。
编辑本段发展历史
c语言
C语言的祖先是BCPL语言。 1967年,剑桥大学的Martin Richards 对CPL语言进行了简化,于是产生了BCPL(Basic Combined Pogramming Language)语言。 1970年,美国贝尔实验室的Ken Thompson。以BCPL语言为基础,设计出很简单且很接近硬件的B语言(取BCPL的首字母)。并且他用B语言写了第一个UNIX操作系统。 在1972年,美国贝尔实验室的D.M.Ritchie在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。 为了使UNIX操作系统推广,1977年Dennis M.Ritchie 发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。 1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。同时由B.W.Kernighan和D.M.Ritchie合着 c语言程序设计
了着名的《The C Programming Language》一书。通常简称为《K&R》,也有人称之为《K&R》标准。但是,在《K&R》中并没有定义一个完整的标准C语言,后来由美国国家标准化协会(American National Standards Institute)在此基础上制定了一个C语言标准,于一九八三年发表。通常称之为ANSI C。 K&R第一版在很多语言细节上也不够精确,对于pcc这个“参照编译器”来说,它日益显得不切实际;K&R甚至没有很好表达它所要描述的语言,把后续扩展扔到了一边。最后,C在早期项目中的使用受商业和政府合同支配,它意味着一个认可的正式标准是重要的。因此(在M. D. McIlroy的催促下),ANSI于1983年夏天,在CBEMA的领导下建立了X3J11委员会,目的是产生一个C标准。X3J11在1989年末提出了一个他们的报告[ANSI 89],后来这个标准被ISO接受为ISO/IEC 9899-1990。 1990年,国际标准化组织ISO(International Organization for Standards)接受了89 ANSI C 为I SO C 的标准(ISO9899-1990)。1994年,ISO修订了C语言的标准。 1995年,ISO对C90做了一些修订,即“1995基准增补1(ISO/IEC/9899/AMD1:1995)”。1999年,ISO有对C语言标准进行修订,在基本保留原来C语言特征的基础上,针对应该的需要,增加了一些功能,尤其是对C++中的一些功能,命名为ISO/IEC9899:1999。 2001年和2004年先后进行了两次技术修正。 目前流行的C语言编译系统大多是以ANSI C为基础进行开发的,但不同版本的C编译系统所实现的语言功能和语法规则有略有差别。

热点内容
testdisklinux 发布:2025-04-03 09:35:29 浏览:874
unity3d塔防游戏源码 发布:2025-04-03 09:27:37 浏览:830
源代码程序经过编译 发布:2025-04-03 09:23:35 浏览:685
symvers怎么编译出来 发布:2025-04-03 09:18:00 浏览:111
bp神经网络的学习算法 发布:2025-04-03 09:01:19 浏览:603
重播编程 发布:2025-04-03 08:47:36 浏览:852
汽车配置买的太低怎么办 发布:2025-04-03 08:34:31 浏览:281
shell脚本中执行shell 发布:2025-04-03 08:26:36 浏览:785
给期货账号转账为什么要银行密码 发布:2025-04-03 07:55:20 浏览:627
呼叫中心话术脚本 发布:2025-04-03 07:29:22 浏览:119