编译过程概述

编译:源程序(高级/汇编)→编译器 →目标机器代码程序(二进制)

并行编译的应用:OpenMP   Hadoop  MPI并行程序设计:基于消息传递

1、什么是编译程序?

翻译程序:源语言(高级语言/汇编语言)=>邓海军的目标语言  (汇编语言,机器)

编译程序:高级语言 => 目标语言(汇编或者机器语言)   (C java )  

汇编程序:汇编语言 => 机器语言

解释程序:源语言程序作为输入,边解释边执行或将源程序翻译成某种中间代码的形式后再加以运行(basic  和 python  )

2、编译过程概述

  • 词法分析:识别单词
  • 语法分析:语法规则(程序,语句,表达式等)
  • 语义分析:语义检查;类型搜集(类型检查,变量声明,类型是否一致,变量是否有值)
  • 中间代码生成:此时源程序变成了中间代码。(四元式:运算符,运算对象1,运算对象2,结果)
  • 代码优化:优化器
  • 目标代码生成:中间代码=>机器可以识别的代码

目标代码:①汇编代码②二进制代码③内存形式:load and go 

符号表:收集符号属性信息,语法的合法性信息,目标代码生成阶段地址分配依据

错误检测程序:检测错误。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值