❶ 为什么安装个VC++6.0编译器这么难
初学C++还是不要用VC6.0了。这个编译器除了速度快一些,不标准、BUG多,一无是处。
推荐Dev-C++,一个小巧、标准、免费的C++开发环境,有中文版,各个软件站都有下。
❷ 写一个编译器大概多长时间
写一个简单的编译器,很简单,一个星期够了,但是,它肯定没有实用价值。
你懂的,编译器要把源程序编译为目标机器语言的,不熟悉机器指令,可以用汇编作为目标代码。
❸ 编译原理好学吗是偏硬件的吗
我认为编译原理~与大学计算机专业课程的其他科目比起来的话相对较难
真正开发编译器的人的确需要丰富的硬件的知识。
但不能说偏硬件,而且国内编译原理教材着重理论,常常可以忽略对硬件的认识
总的来说,楼主为了考试学编译原理的话,比较难啊,没有偏硬件的说
如果为了开发编译器(尤其静态编译器)的话,难度大 ,需要i强大硬件知识
❹ 彻底绝望!!!c语言编译器就那么难下吗!!!!!!!!
直接装上VC不就行了吗?如果是linux操作系统,一般安装时都安装了GCC,不用下载呀。
❺ 开发一个 C++ 编译器的难度有多大,难点又在哪里
C++的前端是出了名的复杂度和可靠性要求并驾齐驱的软件。
(这两点都比它高一个数量级的大概就只有OS了)
对于这种系统,唯一的办法就是烧钱。
烧钱的作用主要包括:
1.留人;
2.填坑;
3.买买买。
先说留人:复杂度一般是“细节”的代名词。现实中的编译器大多数以递归下降为主,自底向上的归纳推导为辅。这两样在教科书上也就是几页纸的事情。但是现实总是很残酷的,人们总想让语言更加“易用”,这就意味着各种上下文相关的情况都会出现。
对于C++来说,你要判断一个符号是类型或者变量(比如这个符号被用在模板参数中),要看前面的声明/定义。这就是一个上下文相关的推导。然后你就会写大量的if else switch case之类的代码来解决各种各样的可能分支。写它的人当然知道它是做什么的,但是如果这个人离职了,新来一个人,就呆掉了,这写的都是什么煞笔玩意儿。因为它不知道现实中怎样的需求会导致奇形怪状的逻辑。所以人员的稳定,对于这种长周期迭代、逻辑复杂的项目是很重要的。但是人的水平要求高吗?不算高也不算低。总结来说就是:有逻辑,知好歹。技术什么都可以培养,但是态度和基本智商是比较难培养起来的。
至于怎么保证人员稳定?很简单:加薪。
再说填坑:编译器是对正确性要求很高的基础软件。这里的正确性既包括产生的代码的正确性,也包括编译器自身对于各种问题的容忍度和足够丰富的错误提示。容错和错误提示本身也是代码,也有很大的出错几率。所以这些软件,bug少不了。但是作为基础软件,你又不能随便就2+3搞成了2*3,这样还怎么让别人相信爱情。所以要烧很多钱来养一帮debugger。
再说买买买:古人日:我们不用很麻烦很辛苦也可以成佛。既然这么费神我们自己做干什么,不如买别人的吧。于是MS就干脆不自己做了,直接去EDG整了个前端,这样就可以少了不少人年。这就是传统土豪和水果这种新暴发户想的不一样的地方。
传统土豪想的是:我们有这么多钱为什么还要自己解决问题呢?买买买!
水果新贵则是:啊呀,不小心有了这么多钱,我们要不要给自己制造点问题好把这些钱花出去?
❻ 为什么没有国产的C/C++的编译器
首先:国产有编译器,比如龙芯就用
其次:开发编译器难度非常大,编译器、操作系统、数据库这三样是程序界的三座大山,不是 所有牛奶都叫愚公。国产即使有编译器我认为也不是完全从零开发的。龙芯虽然有了自己的编译器也只是针对自己的平台编译,不具备通用性。一句话,中国目前缺少大企业的眼光和决心以及实力
❼ 做个编译器需要什么前置条件
用C语言比较好,效率比较高。
用JAVA也可以,好调试。
我用过以上两种做过编译器,别的语言不好说。
做个编译器不难,一个人做也用不了太多时间。但相关的东西要做的话就花时间了。比如编辑环境,比如调试跟踪器。
❽ 编译器的编译器优化
应用程序之所以复杂, 是由于它们具有处理多种问题以及相关数据集的能力。实际上, 一个复杂的应用程序就象许多不同功能的应用程序“ 粘贴” 在一起。源文件中大部分复杂性来自于处理初始化和问题设置代码。这些文件虽然通常占源文件的很大一部分, 具有很大难度, 但基本上不花费C PU 执行周期。
尽管存在上述情况, 大多数Makefile文件只有一套编译器选项来编译项目中所有的文件。因此, 标准的优化方法只是简单地提升优化选项的强度, 一般从O 2 到O 3。这样一来, 就需要投人大量 精力来调试, 以确定哪些文件不能被优化, 并为这些文件建立特殊的make规则。
一个更简单但更有效的方法是通过一个性能分析器, 来运行最初的代码, 为那些占用了85 一95 % CPU 的源文件生成一个列表。通常情况下, 这些文件大约只占所有文件的1%。如果开发人员立刻为每一个列表中的文件建立其各自的规则, 则会处于更灵活有效的位置。这样一来改变优化只会引起一小部分文件被重新编译。进而,由于时间不会浪费在优化不费时的函数上, 重编译全部文件将会大大地加快。
❾ 有写过编译器的大师
1.理论方面:龙书指导
2.实践方面:自己动手一步一步写编译器。
二者结合
❿ 用c++写c语言编译器(输出汇编语言)有多难{自学成才}
中国从编程流传进来到现在还没写出过一款自己的编译器,难度由此可见