当前位置:首页 » 编程软件 » 编程语言取决于编译器吗

编程语言取决于编译器吗

发布时间: 2022-06-19 01:53:10

Ⅰ 对很多低级编程语言的不懂,关于编译器。

一般用软件编程后,需要将该软件写的程序翻译成机器懂的代码才能运行,这个翻译的过程就是编译。
不同的编程语言需要不同的编译器,但有些编译器可以同时支持多种编程语言,比如Visual Studio C++。
除了编译外,这些编译器还提供集成开发、调试环境,可以用于测试程序和排除其中错误。

Ⅱ 关于编程语言和编程工具

编程语言是一种语法标准、规范;
编程工具首先实现的是编译器,它将语言描述转译成计算机可执行的程序代码。而后是一辅助工具,比如友好的界面,良好的编译错误提示等。

Ⅲ exe是pc的软件文件,,是由什么编程的呢 java编程的文件和这个有什么不同呢

就是两种编程语言,运行在不同的操作系统上,不过java是跨平台的,可以在windows上运行也可以在linux上运行,至于exe文件怎么生成,这么来说吧,编程语言和编译器不是一回事,exe可以用c语言开发,也可以用vb开发,现在还出来e语言。取决于编译器。

Ⅳ C语言和编译器的关系

c语言,只是一个程序设计语言。不是理论,不是思想,不是体系结构。只是语言。
C语言的语法不一致并不是编译器导致的。而是语言自然发展导致的。编译器只是支持某种标准的c语言。
并且c语言现在也有标准了,ansi c。不同语法的问题可以不用关心。因为你基本上接触不到另外一种语法。而且越新的编译器,支持越好。

Ⅳ C语言工作原理

作为一种编程语言,本身是谈不上工作原理的,实际上C语言所有的语法,正是C语言编译器的工作原理或者工作机制的具体实现。要细致的讨论起来是不可能,但是作为C语言程序员,必须了解这个大致的流程。一个程序,从C语言源码,到系统可执行的文件,一般经历四个过程。
1、预处理阶断,这个阶断是文本处理阶断,有预处理器来完成,会将源码中的带"#"开头的预处理命令进行相应的处理,在Linux上C语言的预处理器程序是cp命令。
2、编译阶断,这个阶断是有C语言编译阶断,在Linux上C语言的编译器是cc命令,它将C语言源码转换成汇编指令。
3、汇编阶断,这个阶断是汇编编译阶断,在Linux上C语言的汇编器是as命令,这个阶断会将汇编指令编译成二进制机器码。
4、链接阶断,这个阶断是会将汇编阶断生成的机器码目标文件,装载成一个系统可执行的文件,在Linux平台以ELF格式进行组装,在Windows平台上以PE格式进行组装。在Linux平台上的链接器命令为ld,在windows平台上的链接器命令为linker。

Ⅵ 为什么高级语言编程需要编译器

语言是人定义的,举个简单的例子
你创造个编译器定义语句
“我实现A+B”,在编译器里面你事先定义了这个句子等价于C语言的
int
C=A
+
B;再由C语言通过类似的方法转换成汇编语言,这样就把高级语言一步步处理成计算机能执行的每步。打个比方。一栋房子很高,顶楼就是高级语言,楼梯就是编译器,底层就是计算机能识别的操作。比如JAVA就是用C写的,其楼层比C高。一般来说,同等算法条件下C语言执行更快。关于楼梯的原理(编译器),你想了解的话你的看编译原理相关书籍,上面涉及很多数学知识,包括很多状态转化,词法分析,语义分析。比如int
C=A+B中如何识别INT是什么东西。“=”的意义等问题。说实话,如果你不是计算机专业,理解这个有困难的。对于一般人来说,不用从事相关工作的话,知道大概这个是干嘛的就行了。比如你盖个房子,你需要扳手,难道你要先学采铁矿学冶炼学制作扳手的方法?。。

Ⅶ 每个编程语言都有不同的编译器吗

是的,在编程的世界里面,对于每一种边缘都需要使用不同的编译器,因为他们的编码的形式和规则都是不一样的,希望可以帮到你

Ⅷ 编程语言的开发环境是不是就是编译器

不是。虽然经常整合到一起。

Ⅸ 程序语言,操作系统,编译器三者之间有何关系

汇编语言的编译器很多,像MASM,NASM,TASM,gas等等,编译器不一定用什么语言来写,像pascal最初的时候编译器本身是用汇编和pascal语言写的,但大部分编译器是用C语言来写的.windows向来封闭,不知道是用什么写的,应该是用C吧。C是一种编程语言,windows是一种操作系统,二者没有直接关系。C的各个版本的不同在编译器对C语言的扩充和处理上,而不在操作系统上,同样是在windows平台上,TC和VC就不一样。
这三者的关系,程序语言可以用来写操作系统和编译器,操作系统用来编译器运行,编译器用来编译程序语言,编出来的东西可以是操作系统和编译器。

Ⅹ 请问编程语法规则,是不是根据不同编译器来定的

不,一个语言的语法是早就确定好的,它有一个统一标准——例如 ANSI C。
不同编译器可能有些许不同,比如有的编译器a=b=c结果很可能不一样(所以我们很少这么用
但是大体上,一个语言的编译器得出的结果是一样的,是根据语法规则做出编译器而非编译器确定语法规则。
zhengshu a=0,编译器肯定不认,理由是没有这个type;但是你可以通过typedef自定义任意的类型。

int是一种type,而type varlist;是声明变量的语法(int a; char b;)

你写了int a=0;那么这时编译器做的就是在内存中开出一个能存int数据的空间,然后把0给填进去,再记录下这块内存的地址,并记住这个地址叫做a。至于分析代码什么的,就是编译器的事情了。

——以上。

热点内容
sql存储过程命令 发布:2025-05-16 13:17:54 浏览:145
用纸做解压小玩具西瓜 发布:2025-05-16 13:04:09 浏览:935
局域网xp无法访问win7 发布:2025-05-16 13:03:58 浏览:942
油卡如何修改密码 发布:2025-05-16 13:00:35 浏览:901
安卓手机如何拼照片 发布:2025-05-16 12:58:23 浏览:374
深入浅出python 发布:2025-05-16 12:56:52 浏览:655
国二c语言vc2010怎么编译运行 发布:2025-05-16 12:53:49 浏览:424
华为热点哪里看密码 发布:2025-05-16 12:53:44 浏览:515
新手如何用java写安卓app 发布:2025-05-16 12:53:07 浏览:402
虚荣挂脚本 发布:2025-05-16 12:50:44 浏览:480