编译程序就是将高级语言翻译成机器语言?

编译程序就是将高级语言翻译成机器语言,比如VC,VB这一类工具。
像一个VBmini,也就有4,5M,能将这么多语言翻译成0和1的组合吗?
这些编译工具在工作的时候要不要用到操作系统中的其它资源?

很显然不是的.编译程序实际上分为分析器,编译器,连接器等.分析器里面又分为词法分析和语法分析.词法分析就是将源程序里的关键字,变量等等的东西解析出来,通俗点说就是把一个英语句子中的单词分析出来.而语法解析则是从语法的角度来看看源程序是否存在语法错误.真正将高级语言变为一系列0和1的东西是连接器,将N多的obj文件编译为可以执行的exe.当然在这之前还要有编译程序来编译目标文件.现在的开发工具如VC,VB实际上是分析器+编译器+连接器+调试工具的集合.另外,如果你的程序要进行系统调用的话,比如socket程序的通讯.那么需要和操作系统的资源打交道.实际上所有的IO操作,内存读写等等都要进行系统调用.哪怕是一个简单的hello world!
温馨提示:答案为网友推荐,仅供参考
相似回答