编译原理学习笔记(1)编译原理概述(过程、结构)

本文介绍了编译过程,包括词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成。详细讨论了编译器的结构,特别是错误处理和符号表管理,帮助理解编译器如何将高级语言转化为机器可执行的代码。
摘要由CSDN通过智能技术生成

编译原理

编译过程

    源程序
      ↓
    词法分析
      ↓
    语法分析
      ↓
    语义分析
      ↓
    中间代码生成
      ↓
    代码优化
      ↓
    目标代码生成
      ↓
    目标程序
  1. 词法分析
    • 词法分析依照词法规则,识别出正确的而单词,并转换成统一规格,备用
      • 标识符:用户自定义的字符,如i,j,sum
      • 保留字(关键字或基本字):电脑语言定义,如 int、void、var
      • 运算符:如±*/^<
      • 界限符:用来分隔各个元素:如[]{}(),;
      • 转换
        • 队记本子、运算符、界限符的转换
        • 标识符的转换
        • 常数的转换
        • 转换完成后的格式:(类号、内码)
      • 描述此方法规则的有效工具是正规式有限自动机
  2. 语法分析
    • 根据语言的语法规则,把单词组成各类的语法单位:短语、子句、语句、过程、程序
    • 语法规则(文法):规定单词如何构成短语、语句、过程和程序
      • 文法的表示:
        • BNF(巴克斯范式):A::B|C
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包

    打赏作者

    mosun_zgs

    你的鼓励将是我创作的最大动力

    ¥1 ¥2 ¥4 ¥6 ¥10 ¥20
    扫码支付:¥1
    获取中
    扫码支付

    您的余额不足,请更换扫码支付或充值

    打赏作者

    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

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

    余额充值