本章导图:

2.1 程序设计语言概述

2.1.1 程序设计语言的基本概念

1 低级语言与高级语言

低级语言:机器语言、汇编语言
高级语言:面向各类应用的程序设计语言,如Java,C,C++,PHP,Python,Delphi,PASCAL等

2 编译程序和解释程序

“语言处理程序”的翻译方式有:汇编、解释和编译。

3 程序设计语言的定义

语法、语义、语用

❤❤补充 源程序错误类型
词法错误:非法字符,拼写错关键字、标识符
语法错误:语法结构,如少分号,begin/end不配对等
语义错误:
静态语义:类型不一致,参数不匹配(编译错误)
动态语义:如死循环,除数为0(逻辑错误)

4、程序设计语言的分类

  • Fortran语言(第一个高级程序设计语言,科学计算,执行效率高)
  • Pascal语言(结构化程序设计语言,表达能力强,Delphi)
  • C语言(通用、结构化程序设计语言,指针操作能力强,高效)
  • Lisp语言(函数式程序语言,符号处理,人工智能)
  • C++语言(C语言基础上增加了类机制,面向对象,高效,与C兼容)
  • Java语言(面向对象,中间代码,跨平台,通用的程序设计语言)
  • Python(面向对象,解释型程序设计语言,胶水语言,通用的脚本语言)
  • PHP(服务器端脚本语言,制作动态网页)
  • Ruby(简单快捷、面向对象、脚本语言)
  • Delphi(快速应用程序开发工具,可视化编程环境)
  • COBOL(数据处理领域最为广泛的程序设计语言,高级编程语言)
  • XML(可扩展标记语言,标准通用标记语言的子集)
  • PROLOG(逻辑式语言,间接性,表达能力强,建造专家系统、数据库、自然语言理解、智能知识库等)
    注:C/C++常被用于操作系统开发;脚本语言是解释性语言。

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

这部分主要靠平时积累,知识点很少。

1 程序设计语言的数据成分

(1)常量和变量
(2)全局量和局部量
(3)数据类型

2 程序设计语言的运算成分

算术运算、关系运算和逻辑运算等

逻辑与:两数都为1,则结果1,否则0。
逻辑或:两数中一个为1,结果1,否则0。
逻辑异或:两数不同,结果1,否则0。
&&:都为真时为真,其余为假,
||:都为假时为假,其余为真,
!:表否定
算术左移,就是在原有的基础上*2
算术右移,就是在原有的基础上/2

3 程序设计语言的控制成分

顺序
选择
循环

4 程序设计语言的传输部分

传输方式:如赋值、数据输入和输出等。

5 函数

定义
声明
调用❤❤❤
(1)值调用
形参取的是实参的值,形参的改变不会导致调用点所传的实参的值发生改变

(2)引用调用
形参取的是实参的地址,即相当于实参存储单元的地址引用,因此其值的改变同时就改变了实参的值


2.2 语言处理程序基础

2.2.1 汇编程序基本原理

1 汇编语言

组成:指令语句、伪指令语句、宏指令语句。

2 汇编程序

2.2.2 编译程序基本原理

1 编译过程概述

  • 符号表
    符号表的作用是记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成,在编译过程中需要对符号表进行快速有效地查找、插入、修改和删除等操作。符号表的存在可以贯穿编译所有阶段。
  • 错误管理
    静态错误:编译时所发现的程序错误,分为语法错误和静态语义错误。
    语法错误包含:单词拼写错误、标点符号错误、表达式中缺少操作数、括号不匹配等有关语言结构上的错误。
    静态语义分析:运算符与运算对象类型不合法等错误。
    动态错误:发生程序运行时,也叫动态语义错误。包括死循环、变量取零时做除数、引用数组元素下标越界等错误。

2 文法和语言的形式描述

一般的程序设计语言属于上下文无关文法。
(1)字母表、字符串、字符串集合以及运算
(2)文法和语言的形式描述

3 词法分析

词法规则使用正规文法,表示的语言集合是正规集,正规集的规律可以用正规式表示。

4 正规式与有限自动机的转换

正规式:❤❤

有限自动机:❤❤

这个部分文字描述太麻烦了……我们多做几次题就明白了

5 词法分析器的构造

6 语法分析

自下而上:递归下降分析法、预测分析法
自底而上:移进-规约分析法

7 语法制导翻译和中间代码生成❤❤

中间代码是一种简单且明确的记号系统,与具体的机器无关。常见的有逆波兰记号(后缀式)、四元式、三元式。

8 中间代码优化和目标代码生成

树与后缀式形式适用于解释器,编译器多采用四元式格式。

2.2.3 解释程序基本原理

1 解释程序的基本构成

2 高级语言编译和解释方式的比较❤❤❤❤

  • 编译方式下【生成中间代码】机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程,因此执行时效率较高;
  • 解释方式下解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,边解释边执行,执行效率较低。
    即:解释方式,翻译程序不生成独立的目标程序,而编译方式则生成独立保持的目标程序。

软考-软件设计师 - 第2章 程序设计语言基础知识【附补充常考知识点】相关推荐

  1. 软考-软件设计师 - 第9章 数据库技术基础【附补充常考知识点】

    9.1 基本概念 9.1.1 数据库与数据库系统 数据库系统是才采用数据库技术,有组织的.动态的存储大量相关数据,方便多用户访问的计算机系统.由数据库.硬件.软件.人组成. 9.1.2 数据库管理系统 ...

  2. 软考(软件设计师)考点总结 -- 程序设计语言基础

    程序设计语言基本概念 程序运行时的用户内存空间一般划分为代码区.静态数据区.栈区.堆区. 程序设计语言的基本成分包括数据.运算.控制和传输等.(控制包括:顺序.选择.循环三种) 高级语言: 高级语言对 ...

  3. 第四章 程序设计语言基础知识

    一. 程序语言的基本概念 1.低级语言与高级语言 1)低级语言:汇编 2)高级语言: 常见的有Java.C.C++.PHP.Pyhton.Delphi 等. 2.编译形式:汇编.解释.编译. 3.程序 ...

  4. c语言的main含糊,第1-2章 C语言基础知识

    <第1-2章 C语言基础知识>由会员分享,可在线阅读,更多相关<第1-2章 C语言基础知识(17页珍藏版)>请在人人文库网上搜索. 1.第1-2章C语言基础知识,本章教学内容, ...

  5. python语言中、用来表示赋值的符号是_第二章Python语言基础知识

    第二章Python语言基础知识 2.1 Python语言基础知识 2.1.1标识符与关键字 在Python语言中,对程序中各个元素命名加以区分,这种用来标识变量.函数.类等元素的符号称为标识符. Py ...

  6. 用c语言编译频率求波长,第2章 C语言基础知识.doc

    第二章 C语言基础知识 2.1 常量和变量 [学习目标] 掌握常用标识符的命名规则 掌握常量和变量的定义与引用方法 实例5 常量和变量--输出常量与变量的值 [实例任务] 定义不同类型的几个变量,然后 ...

  7. 软考-软件设计师 - 第11章 标准化和软件知识产权基础知识【附补充常考知识点】

    11.1 标准化基础知识 11.1.1 基本概念 1.标准分类: 1)根据适用范围分类: (1)国际标准 (2)国家标准 (3)区域标准 (4)行业标准 (5)企业标准 (6)项目规范 2)根据标准的 ...

  8. 软考 软件设计师个人总结 (程序语言部分)

    (前部分是文字部分,由于未知原因插图无法上传,故在文末添加PDF版) 程序语言 程序语言 1.完全连通图的边数:n*(n-1)/2 2.函数传递. (1)传递地址(引用调用):形参和实参可以实现数据的 ...

  9. 软件设计师教程(四)程序设计语言基础知识

    软件设计师教程 软件设计师教程(一)计算机系统知识-计算机系统基础知识 软件设计师教程(二)计算机系统知识-计算机体系结构 软件设计师教程(三)计算机系统知识-计算机体系结构 程序设计语言知识 软件设 ...

最新文章

  1. LeetCode实战:快乐数
  2. linux java tar_tar包在linux下java安装
  3. 计算机网络知识点4——计算机网络性能
  4. ubuntu下adb offline 的解决办法
  5. python各种数据类型的常用方法_python的基本数据类型:列表的方法
  6. BeetleX之HTTP网关部署
  7. maven 聚合工程 用spring boot 搭建 spring cloud 微服务 模块式开发项目
  8. 09_期望极大法EM2_统计学习方法
  9. 实验报告格计算机,计算机实验报告格式大全
  10. 各种手机处理器排行榜_11月新机性能排行榜:荣耀V30第四,vivo S5上榜
  11. 在开发时选择静态方法还是非静态方法
  12. 软件测试的艺术读书笔记
  13. LED灯具检验标准与方法
  14. 做祛痘产品微信是如何引流的?祛斑祛痘产品引流加粉渠道有哪些?
  15. StatsD,collected,fluentd和其他守护程序
  16. 驰骋督查督办系统说明书
  17. OneTab下载,chrome插件,crx下载
  18. WinRAR压缩解压文件
  19. UML一篇文章就学通!
  20. 阿里云视频点播相关代码

热门文章

  1. 飞速低代码:解放IT生产力,推动社会数字化转型的加速器
  2. 怎么还原计算机主机名称,台式电脑怎么恢复出厂设置
  3. 苹果电池测试软件i-t,Apple Watch出行绝佳伴侣,CHOETECH磁力充电座评测T313
  4. a-table的斑马纹以及hover样式的修改(vue2)
  5. MySQL之——MySQL远程连接丢失问题解决方法(Lost connection to MySQL server)
  6. 商业人像精修皮肤质感增加PS插件_安装说明
  7. Android-0.第三方登录简介
  8. python 批量下载 代码_python 批量下载文件
  9. 苹果Vision Pro物料成本曝光,3499美金售价原来是这样来的
  10. 图一为下垂控制微电网模型。图二为电压电流双环控制器,图三为有 功和无功曲线