程序设计语言基础重点摘要【软考】


前言

本文是本人在软考复习阶段的写的只有重点摘要的笔记(纯属个人观点),相信大家在网上已经看到很多有详细介绍的关于程序设计语言基础的文章,所以大部分我只是提出,没有详细解释,只是为了更好复习。^ O ^


一、程序设计语言

1.1编译程序和解释程序

程序设计语言基本概念
人与机器交换信息的语言
编译与解释的共同点
都是高级程序语言,且都有词法分析、语法分析、语义分析的过程
编译与解释的不同点

编译型语言解释型语言
翻译程序编译器解释器
转换过程一次性转换成目标代码不会生成目标代码
执行方式目标代码直接执行逐行翻译,立即执行
执行效率
灵活性
可移植性

1.2常见设计语言的特点

程序语言特点
C语言语法简洁,可移植性高,高效
C++语言面向对象,高性能,支持扩展性
Java语言面向对象,可跨平台
python语言面向对象,解释型,代码简洁
C#语言面向对象,.Net
Ruby语言面向对象,可移植性高
PHP语言脚本语言,语法混合了C、Java、Perl的特点
Fortran语言科学计算,执行高效
Lisp语言函数式,常用于人工智能

1.3程序设计语言的基本成分

数据类型(C/C++)

  1. 数字数据类型:int、double、float
  2. 布尔类型:bool
  3. 字符类型:char
  4. 枚举类型:enum
  5. 指针类型:typy

程序控制结构

  • 顺序结构
  • 选择结构
  • 循环结构

二、语言处理程序基础

2.1编译过程概述

编译过程

  1. 源程序
  2. 词法分析
  3. 语法分析
  4. 语义分析
  5. 中间代码生成
  6. 代码优化
  7. 目标代码生成
  8. 目标程序

词法分析
将输入的源程序字符流转换为单词(Token)序列,这些单词是构成源代码的最小单位,如关键字、标识符、常数、运算符等

语法分析
根据语言的语法规则对词法分析器输出的单词序列进行结构分析,识别出各类语法成分(如表达式、语句、函数等),并检查语法错误

语义分析
对结构上正确的源程序进行上下文有关性质的审查,以检查源程序是否含有语义错误

2.2正规式与正规集

  1. 正规式是一种用于描述正则语言的表达式,它是由字母表中的字符、特定的操作符和空字符串组成的表达式。
  2. 正规集是由正规式描述的一类字符串的集合。它是正则语言的一种表达方式,由正规式生成.

2.3有限自动机

有限自动机由一个有限的内部状态集和一组控制规则组成,这些规则用于控制在当前状态下读入输入符号后应转向什么状态。具体来说,一个有限自动机M通常由五元组(X,Y,S,δ,λ)给定:

  • X:非空有限集,称为输入集,包含所有可能的输入符号。
  • Y:非空有限集,称为输出集,包含所有可能的输出符号。
  • S:非空有限集,称为状态集,包含自动机所有可能的状态。
  • δ:笛卡儿积集合S×X到S的映射,称为下一状态函数或转换函数。根据δ的性质,有限自动机可以分为确定型(DFA)和非确定型(NFA)。
  • λ:S×X到Y的单值映射,称为输出函数,用于确定在给定状态和输入下的输出。

有限自动机能够识别的串:从初态出发可以到达终态且停留在终态
确定的有限自动机:当一个状态面对一个输入符号的时候,所转换到的是一个唯一确定的状态
不确定的有限自动机:当一个状态面对一个输入符号的时候,所转换到的可能不止一个状态,可以是一个状态集合

2.4表达式

前缀表达式:+ab
中缀表达式:a+b
后缀表达式:ab+

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值