编译原理课堂笔记之第二章-高级语言及其语法描述

写得有那么亿点点乱 重新整理中~

编译原理课堂笔记之第二章-高级语言及其语法描述

2.1 程序语言的定义 (掌握)

两方面
  • 语法 : 程序本质上是一定字符集上的字符串

    • 语法是一组规则,用它可以形成和产生一个合式的程序

    • 词法规则 :单词符号的形成规则

      image-20210223140911206

    • 语法规则 :语法单位的形成规则

      image-20210223140944430

    • 词法规则和语法规则定义了程序的形式结构不是意义

  • 语义

    • 语义是一组规则,用它可以定义一个程序的意义

    • 描述方法

      • 自然语言

        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JR3yU0k4-1614066161593)(https://gitee.com/Dodo_D_Caster/topyra_image/raw/master/img/image-20210223141643095.png)]

      • 形式描述

        image-20210223141656550

  • 语用

程序语言的基本功能
  • 描述数据和数据的运算

所谓程序,本质上说是描述一定数据的处理过程

程序的层级结构

image-20210223142008084

程序语言成分的逻辑和实现意义

逻辑意义

  • 数学意义

实现意义

  • 具体实现

2.2 高级语言的一般特性

2.2.1 高级语言的分类 (了解)

  • 强制式语言/过程式语言

  • 应用式语言

  • 基于规则的语言

  • 面向对象语言

2.2.2 程序结构 (了解)

image-20210223143623740

image-20210223144725218

作用域

  • 一个名字能够被使用的区域称作这个名字的作用域

image-20210223143924121

2.2.3 数据类型与操作 (掌握)

一个数据类型包括三个要素

  • 用于区别这种类型数据对象的属性
  • 这种类型的数据对象可以具有的
  • 可以作用于这种类型的数据对象的操作

初等数据类型

  • 数据类型
  • 逻辑类型
  • 字符类型
  • 指针类型

标识符

  • 以字母开头的,由字母组成的字符串

名字

  • 标识符经过绑定后形成
  • 值:单元中的内容
  • 属性:类型和作用域
  • 名字的性质的说明方式
    • 说明语句明确规定
    • 隐含说明
    • 动态确定

数据结构

  • 数组
    • 逻辑上,数组式由同一类型的数据所组成的n维矩形结构,沿着每一维的距离,成为下标
    • 数据可变与不可变
    • 访问
    • 存放方式

image-20210223151359396
image-20210223151451874
image-20210223151904819

c语言中为struct

image-20210223151940733
image-20210223152202815

image-20210223152413496

2.2.4 语句与控制结构 (掌握)

表达式

  • 由运算量(也称操作数)和算符(操作符)组成
  • 形式
    • 中缀
    • 前缀
    • 后缀

image-20210223152759067

image-20210223152952674

语句

  • 控制语句

    • 无条件转移语句

      goto L
      
  • 条件语句

    • if B then S
      if B then S1 else S2
      
  • 循环语句

    • while B do S
      repeat S until B
      for i:=E1 step E2 until E3 do S
      
  • 过程调用语句

    • call P(X1, X2, ... , Xn)
      
  • 返回语句

    • return (E)
      
  • 说明语句

  • 简单句

  • 复合句

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。
CSDN是中国最大的IT技术社区,编译原理是计算机科学中的重要课程之一。关于CSDN上编译原理笔记,我可以从以下几个方面进行回答。 首先,CSDN上编译原理笔记文档丰富多样,涵盖了编译原理的各个方面,包括词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等。这些笔记以通俗易懂的语言编写,让初学者也能够轻松理解编译原理的基本原理和实现方式。同时,笔记中还提供了大量的示例代码和实践案例,帮助读者更好地理解和应用编译原理的知识。 其次,CSDN上编译原理笔记内容全面,既包括理论知识,也包括实践经验。对于理论知识,笔记中详细介绍了编译器的工作原理、各个阶段的算法和数据结构等内容,以及常用的编译器设计模式和优化方法。对于实践经验,笔记中分享了一些常见的编译器实现技巧,如错误处理、符号表管理、代码生成等。这些内容对于编译原理的学习和实践非常有帮助。 最后,CSDN上编译原理笔记具有互动性和实时性。读者可以通过评论、提问等方式笔记作者进行交流和讨论,解决自己在学习编译原理过程中遇到的问题。同时,笔记作者也会定期更新和修正笔记内容,确保笔记始终保持最新、最正确的信息。 综上所述,CSDN上编译原理笔记提供了丰富多样的内容,既有理论知识,又有实践经验,对于学习和理解编译原理非常有帮助。读者可以通过阅读这些笔记,深入学习编译原理的基本原理和实现方式,并应用到实际项目中。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值