第五百五十四章:教学(第2页)

 对于一个长年累月深耕技术的理工男来说,周瑜提供的这些技术知识文件,比什么高级职位,要诱惑得多。

 编译程序的实现算法较为复杂,因为它所翻译的语句与目标语言的指令不是一一对应关系,而是一多对应关系。、

 同时因为它要处理递归调用、动态存储分配、多种数据类型,以及语句间的紧密依赖关系。但是,由于高级程序设计语言书写的程序需要易读、易移植和表达特征强等特点,所以开发难度非常高。

 所以,刘存涛对于教授员工知识,这个环节,并不敢随意。

 而他面前的这些高校尖子生、社招精英们,也是在大夏新科“历练”工作有不少时间,甚至大部分人都是老员工,所以在面对新项目,需要学习的时候,都能够快速调整状态,开始学习。

 颇为宽敞的工作室里面,三十九岁的刘存涛,侃侃而谈道:“编译程序的基本功能是把源程序的高级语言,翻译成目标程序。

 但是,作为一个具有实际应用价值的编译系统,除了基本功能之外,还应具备语法检查、调试措施、修改手段、覆盖处理、目标程序优化、不同语言合用以及人-机联系等重要功能。

 比如编译程序必须分析源程序,然后综合成目标程序。

 首先,我们需要检查源程序的正确性,并把它分解成若干基本成分;其次,再根据这些基本成分建立相应等价的目标程序部分……

 词法分析的任务是对由字符组成的单词进行处理,从左至右逐个字符地对源程序进行扫描,产生一个个的单词符号,把作为字符串的源程序改造成为单词符号串的中间程序。

 这个执行词法分析的程序称为词法分析程序或扫描器……

 要注意的是,源程序中的单词符号经扫描器分析,一般产生二元式。而手工构造可使用状态图进行工作,自动生成则是使用确定的有限自动机来实现……”

 从语法分析,到中间代码生成,再到代码优化、目标代码生成,一堂课的时间,刘存涛就带着这些学员进行了一个跨度极大的跨越式综合浏览学习。