当前位置: 首页 > article >正文

【软件设计师07】程序设计语言与语言处理程序基础

程序设计语言与语言处理程序基础

编译与解释、文法、正规式、有限自动机、表达式、传值与传址、多中程序语言特点

1. 编译过程

在这里插入图片描述

2. 文法定义

(逐渐降低考察比例,很少考察)

概念

在这里插入图片描述

文法类型

在这里插入图片描述

语法推导树

在这里插入图片描述

有限自动机与正规式(重点)

常见问题:给一个串比如01、10、001等,看图中起点到终点能否连起来得到这样的串

在这里插入图片描述

正规式 是有限自动机到另一个表达形式

在这里插入图片描述

正规式例题:(1)A. S -> aA -> abS -> abaA -> ababS -> ababaA -> ababab 成立

同理推出B、C成立,D无法识别

(2)(*表示可以组合任意次数)常规解法很慢,用代入法可以快速推理

看(2)中哪一个能把刚刚(1)中正确的串(ACB)都表示出来但又不能把错误的串(D)表示出来就“可能”是正确答案

A. a|b随意组合后ABCD都可以表示,排除

B. ab A可以,BCD不可以,排除

C. ab|ba A,B,C都可以,D不可以;(2)ABD都排除后选择C

D ab|ba 表示前面任意个ab连接若干个ba串,不能组合出(1)中的C,所以排除

在这里插入图片描述

**有限自动机例题:**C ;判断从初态A输入四个数能否到达终态C

在这里插入图片描述

3. 表达式

先构造表达式的树,注意括号限制的顺序,然后得出D

如果没有括号,a - b * c + 5;先看乘法,组成结点,再看a - b * c,再加上6结点构成树

在这里插入图片描述

4. 函数调用 - 传值与传址

基本操作…

在这里插入图片描述

5. 各种程序语言的特点

在这里插入图片描述


http://www.kler.cn/news/7496.html

相关文章:

  • UVM response_handler和get_response机制
  • 《C++开发技能树》004 语言类·指针和内存管理·glibc的内存实现ptmalloc
  • Vue3加载中(Spin)
  • 38--Django-项目实战-全栈开发-基于django+drf+vue+elementUI企业级项目开发流程-前台首页设计
  • 【vue】使用 el-upload+axis实现手动多文件上传的代码实现
  • 国内ChatGPt研发-中国chatGPT
  • VB execl函数 word文档 KBS
  • Canal增量数据订阅和消费——原理详解
  • ansible自动运维——看明白ansible.cfg配置文件
  • 【Linux】环境变量进程虚拟地址空间
  • MySQL 索引常见问题汇总,一次性梳理
  • React 组件的 children 数据使用
  • Android 10.0 系统framework发送悬浮通知的流程分析
  • 在CentOS 7 中安装Hive-1.2.2
  • 【一起撸个DL框架】1 绪论
  • FPGA纯verilog实现UDP通信,三速网自协商仲裁,动态ARP和Ping功能,提供工程源码和技术支持
  • 多线程-模拟抢红包,抽奖池
  • 设计模式-day03
  • ChatGPT给自己写的科普性文章,你们认为写的怎样
  • echarts tooltip文字太长换行