编译原理引言知识点总结

本文介绍了编译原理的基本概念,从面向机器语言到面向人类的高级语言,讲解了语言的翻译过程,包括正向工程的编译和解释,以及逆向工程的反汇编和反编译。同时,对比了编译器和解释器的工作原理和优缺点,详细阐述了编译器的工作流程,包括词法分析、语法分析、语义分析、中间代码生成、优化和目标代码生成等阶段。
摘要由CSDN通过智能技术生成

1. 从面向机器的语言到面向人类的语言

1.1面向机器

  1. 机器语言:由0、1字符串组成的机器指令序列。
  2. 汇编语言:用符号表示的指令被称为汇编指令,汇编指令的集合被称为汇编语言。

1.2面向人类

  1. 通用程序设计语言:FORTRAN、Pascal、C/C++、Java、Ada等
  2. 数据查询语言:SQL
  3. 形式化描述语言:核心部分是基于数学基础的产生式。
  4. 其他面向特定应用领域的语言:HTML、MATLAB、Verilog等。

2. 语言之间的翻译

语言分为三个层次:高级语言、汇编语言、机器语言。高级语言与具体的计算机无关,而汇编语言和机器语言均与计算机有关。

2.1 正向工程

  1. 高级语言之间的翻译一般被称为转换或称为预处理
  2. 高级语言可以直接翻译成机器语言,也可以翻译成汇编语言,这个过程被称为编译
  3. 汇编语言到机器语言的翻译被称为汇编
  4. 把一个汇编语言程序汇编为在另一个机器上可以运行的机器指令,称为交叉汇编,建立在交叉汇编基础上的编译模式,也称为交叉编译

2.2 逆向工程

  1. 把机器语言翻译成汇
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值