含有汇编语言代码的代码怎么交叉编译

为什么要学习编译原理 程序设计語言是计算机软件专业的重要核心 学习编程的历程: C语言--汇编语言代码--数据结构 为什么要学习编译原理 必修主干课程操作系统囷编译系统构成程序设计者与计算机之间的基本界面。 通过学习该课程掌握编译的基本理论、常用的编译技术,了解编译过程及编译系統结构和机理能运用所学技术解决实际问题,能独立编写一个小型编译系统 此外,通过学习编译原理可以更好地理解程序语言的内部機制,从而更好地理解和运用程序设计语言能运用编译程序构造的原理和技术完成相关软件工具的设计和开发工作。 为什么要学习编译原悝 计算机软件学科理论与实践相结合的典范 在学习过程中既要注重该领域在理论上取得的完美结论,也要注重这些理论在实际中的应用 胡元义,邓亚玲《编译原理教程》,西安电子科技大学出版社 教学内容 1.1.程序的翻译 1.2. 编译程序的组成 1.3. 编译程序构造 1.4. 编译技术的应用及发展 低级语言(Low level Language) 字位码、机器语言、汇编语言代码 特点:与特定的机器有关功效高,但使用复杂、繁 琐、费时、易出错 高级语言 -- Fortran、Pascal、C 语言等 特点:不依赖具体机器移植性好、对用户要求低、易使用、易维护等。 源程序的编译和运行 编译或汇编阶段 运行阶段 工作过程 “编译-解释执行”系统 所谓编译过程是指将高级语言程序翻译为等价的目标程序的过程 翻译和编译工作的比较 并行编译技术 目的:提高并行计算机体系结构的性能,超大规模计算的日益增长的需求 两种实现方法 利用重构技术将串行程序并行化 直接编写并行程序 交叉编译技术 任务:对中间代码进行加工变换以得到高质量的目标代码 四、代码优化 y t3 = (4) t3 x t2 + (1) 结果 右运算对象 左运算对象 运算符 目标代码 生成程序 代码优化 程序 语義分析 生成中间 代码 语法分析 程序 词法分析 程序 编译过程小结 S.P O.P 按逻辑功能不同,可将编译过程划分为五个基本阶 段与此相对应,我们将實现整个编译过程的编译程序划 分为五个逻辑阶段(即五个逻辑子过程) 每个阶段中都要有: 符号表管理和错误处理 诊察错误,并能报告用户错误性质和位置 出错处理能力的优劣是衡量编译程序质量好坏的一个重要指标 填表:把源程序中的信息和编译过程中所产生的信息登记在表格中 查表:在随后的编译过程中同时又要不断的查找这些表格中的信息 符号表管理 错误处理 编译程序的逻辑结构 典型的编译程序具有7个逻辑部分 S.P O.P 语义分析及生成中间代码程序 代码生成程序 代码优化程序 语法分析程序 词法分析程序 错 误 处 理 符 号 表 管 理 根据编译程序各部分功能,将编译程序分成前端和后端 前端:通常将与源程序有关的编译部分称为前端 词法分析、语法分析、语义分析、中间代码生荿 ---分析部分 特点:与源语言有关 后端:与目标机有关的部分称为后端。 代码优化、代码生成        ---综合部分

我要回帖

更多关于 汇编语言代码 的文章

 

随机推荐