软考 -- 软件设计师 -- 二轮复习(2) -- 程序设计语言(持续更新)

news2024/9/21 2:42:39

软考 – 软件设计师 – 二轮复习(2) – 程序设计语言(持续更新)


文章目录

  • 软考 -- 软件设计师 -- 二轮复习(2) -- 程序设计语言(持续更新)
  • 前言
  • 一、编译、解释、基本控制结构
  • 二、数据类型
  • 三、变量和常量、逻辑表达式(短路:&&、||、!)
  • 四、传值调用与传引用调用
  • 五、符号表
  • 六、词法、语句、语义 、目标代码生成
  • 七、程序异常和错误
  • 八、中间代码
  • 九、正规式
  • 十、xxx
  • 十一、xxx


前言

考试时间:每年5月、11月,软件设计师每年都会开考。
考试条件:三不限
考试形式: 一共两门
	计算机于软件工程基本知识--120分钟--机考--选择题--75分(45及格)
	软件设计--120分钟--机考--简答题(4道必做,1道二选一做)--75分(45及格)
	两门都得一次性及格才算通过,一共4小时考试时间。
	
推荐博客:http://t.csdnimg.cn/5VzY5
推荐bilibli博主:zst_2001
本博客二轮复习资源免费下载:https://download.csdn.net/download/weixin_44399264/89687484

一、编译、解释、基本控制结构

二、数据类型

在这里插入图片描述

数据类型的作用:
	1、便于为数据合理分配存储单元;
	2、便于对参与表达式计算的数据对象进行检查;
	3、便于规定数据对象的取值范围及能够进行的运算。

三、变量和常量、逻辑表达式(短路:&&、||、!)

在这里插入图片描述

常量不可以修改,没有分配存储单元
变量可以修改,有分配存储单元

在这里插入图片描述
在这里插入图片描述


四、传值调用与传引用调用

传值调用:
	1、将【实参】的【值】传递给【形参】,【实参】可以是【变量、常量和表达式】;
	2、【不可以】实现形参和实参间【双向传递】数据的效果。
传引用(地址)调用:
	1、将【实参】的【地址】传递给【形参】,【形参必须有地址】,【实参】不能是【常量(值),表达式】。因为只有变量才会分配
	   存储单元;
	2、【可以】实现形参和实参间【双向传递】数据的效果,即改变形参的值同时也改变了实参的值。

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

1、采用引用的方式,则a(f) = x的值;
2、先走f()代码,a = 5,c=g(a);
3g(a)中,m=x()*m = 10x() = a(f) = m-1 = 9;c = x() + m = 19;
4、则可知a(f) = 9,c = 19,则值为28,选择D
错误原因:看到形式参数就以为是按值传递,没看题目

五、符号表

在这里插入图片描述

符号表: 不断收集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入符号表中。
		记录源程序中各个字符的必要信息,以辅助语义的正确性检查和代码生成。

六、词法、语句、语义 、目标代码生成

在这里插入图片描述

词法分析:
	输入:源程序;
	输出:记号流
	词法分析阶段的主要作用是:分析构成【程序的字符】;

语法分析:
	输入:记号流;
	输出:语法树(分析树)
	语法分析阶段可以发现程序中所有的语法错误
	语法分析阶段的主要作用是:对各条【语句的结构】进行合法性分析;
	
语义分析:
	输入:语法树(分析树)
	语义分析阶段的主要作用是进行【类型分析】和【检查】

【语法分析阶段】【可以发现】程序中的所有【语法错误】
【语义分析阶段】【不能发现】程序中【所有的语义错误】
【语义分析阶段可以发现静态语义错误】
【不能发现动态语义错误】,【动态语义错误运行时才能发现】

目标代码生成:
	目标代码生成阶段的工作与具体的机器【密切相关】
	寄存器的分配工作处于【目标代码生成阶段】

七、程序异常和错误

在这里插入图片描述


在这里插入图片描述

八、中间代码

知识点:
	1、常见的中间代码有:【后缀式、三地址码、三元式、四元式和树(图)】等;
	2、中间代码【与具体的机器无关】(不依赖具体的机器);
	3、可以将不同的高级程序语言翻译成同一种中间代码,【中间代码可以跨平台】;
	4、因为与具体的机器无关,使用中间代码有利于进行与【机器无关的优化处理】和【提高编译程序的可移植性】。

在这里插入图片描述

九、正规式

在这里插入图片描述

十、xxx

十一、xxx

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2106214.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

shell脚本编写之test命令

test命令用于测试某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。 在shell文件中输入命令,通过特定的参数可以对数值、字符串进行比较,如下参数及示例。 1、数值比较参数 举例,在myshell.sh脚本中加入如下内容&am…

Github 2024-09-01 开源项目月报 Top16

根据Github Trendings的统计,本月(2024-09-01统计)共有16个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目9TypeScript项目5Dart项目2C项目1Jupyter Notebook项目1Rust项目1开发者职业成长指南 创建周期:2670 天开发语言:TypeScript协议类…

图像去噪:基于混合噪声处理的 UNF 滤波器与中值滤波器比较

在图像处理领域,去噪是一个非常重要的步骤。噪声会严重影响图像的质量,使得图像难以被理解或分析。本文将演示如何使用混合噪声处理技术和两种常见的滤波器(UNF 滤波器与中值滤波器)来去除图像中的噪声,并比较它们的性…

Bootstrap前端框架Glyphicons字体图标

115工具网收集提供Bootstrap前端框架Glyphicons字体图标库对照表​​​​​​​,Bootstrap前端UI,Glyphicons字体图标调用,Bootstrap按钮字体图标对照表,包括250多个来自Glyphicon Halflings的字体图标.项目中引用Bootstrap相关文件后即可直接调用下列图标class&quo…

51单片机-DS1302(RTC实时时钟芯片)

数据手册在主页资源免费贡献 开发板芯片数据手册 https://www.alipan.com/s/nnkdHhMGjrz 提取码: 95ik 点击链接保存,

免费无广的多端同步标签 | 极空间私有化部署高颜值浏览器新标签页『mTab』

免费无广的多端同步标签 | 极空间私有化部署高颜值浏览器新标签页『mTab』 哈喽小伙伴们好,我是Stark-C~ 我们在日常使用浏览器的时候,必定收藏了很多书签或者网页程序之类。但是你是否有这样的苦恼?就是如何在不同设备之间,甚至…

GIS十大经典问题之10.网络分析中的连通性问题

本系列《GIS十大经典问题》包括: 缓冲区分析问题叠加分析问题最短路径分析问题空间插值问题泰森多边形(Voronoi 图)生成问题空间聚类问题空间数据压缩问题空间查询问题地形分析问题网络分析中的连通性问题 一、连通性问题介绍 在地理信息系…

以太网通信之UDP

免责声明: 本文所提供的信息和内容仅供参考。作者对本文内容的准确性、完整性、及时性或适用性不作任何明示或暗示的保证。在任何情况下,作者不对因使用本文内容而导致的任何直接或间接损失承担责任,包括但不限于数据丢失、业务中断或其他经济…

使用堆叠 LSTM 模型预测市场趋势

作者:老余捞鱼 原创不易,转载请标明出处及原作者。 写在前面的话: 本文主要介绍预测市场趋势的一种研究方法,这一研究的重点是利用堆栈式长短期记忆(LSTM)网络预测股票价格。这种方法利用先进的神经网络架构,根据历史价格数据分析和预测市场趋势。并展示了如何通…

图像边缘检测技术详解:利用OpenCV实现Sobel算子

图像边缘检测技术详解:利用OpenCV实现Sobel算子 前言Sobel算子的原理代码演示结果展示结语 前言 在数字图像处理的广阔领域中,边缘检测技术扮演着至关重要的角色。无论是在科学研究、工业自动化,还是在日常生活中的智能设备中,我们…

出现 TypeError: Cannot read properties of undefined (reading ‘getUserMedia‘) 解决方法

目录 1. 问题所示2. 原理分析3. 解决方法1. 问题所示 调用摄像头的时候出现如下所示: Uncauht (in promise) TypeError: Cannot read properties of undefined (reading getUserMedia)截图如下: 2. 原理分析 TypeError: Cannot read properties of undefined (reading ‘…

Mysql梳理1——数据库概述(上)

笔记来源:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 https://www.bilibili.com/video/BV1iq4y1u7vj 目录 11.2 引入 11.2. 1 数据库与数据库管理系统 11.2.2 数据库与数据库管理系统的关系 11.2.…

【Python】4.基础语法(4)列表和元组

文章目录 1. 列表是什么, 元组是什么2. 创建列表3. 访问下标4. 切片操作5. 遍历列表元素6. 新增元素7. 查找元素8. 删除元素9. 连接列表10. 关于元组 1. 列表是什么, 元组是什么 编程中, 经常需要使用变量, 来保存/表示数据。 如果代码中需要表示的数据个数比较少, 我们直接创…

【间接经验】高性能调度系统设计总结

原文 他人的间接经验 -> 自己的直接经验 调度模块在很多系统中都是常用的模块,比如实习生的每天签到邮件,预约银行的业务短信,学习通的上课通知,腾讯视频push中台的任务下发,调度系统在中间起到关键作用。 用户画像…

Python中的异或操作

你是否曾经想过,仅仅使用一个简单的符号就能实现数据加密、快速交换变量值,甚至是检测重复元素? 欢迎来到Python异或操作的神奇世界!在这篇文章中,我们将深入探讨这个看似简单却蕴含无限可能的位运算符。 无论你是刚入门的新手,还是想要提升算法技能的资深程序员,这篇文章都将…

每日一练4:牛牛的快递(含链接)

链接&#xff1a; 牛牛的快递_牛客题霸_牛客网 题目&#xff1a; 代码1&#xff1a; #include <iostream> using namespace std;int main() {double mo;char ch;int ret 0;cin >> mo >> ch;if(ch y) ret 5;ret 20;if(mo < 1){cout << ret;re…

LIN总线CAPL函数——计算PID(linGetProtectedID)

&#x1f345; 我是蚂蚁小兵&#xff0c;专注于车载诊断领域&#xff0c;尤其擅长于对CANoe工具的使用&#x1f345; 寻找组织 &#xff0c;答疑解惑&#xff0c;摸鱼聊天&#xff0c;博客源码&#xff0c;点击加入&#x1f449;【相亲相爱一家人】&#x1f345; 玩转CANoe&…

了解依赖反转原则(DIP)、控制反转(IoC)、依赖注入(DI)及 IoC容器

这篇文章将描述 DIP、 IoC、 DI 和 IoC 容器。大多数情况下&#xff0c;初学者开发人员会遇到 DIP、 IoC、 DI 和 IoC 容器的问题。他们混淆在一起&#xff0c;发现很难辨别他们之间的区别&#xff0c;不知道为什么他们需要使用他们。另一方面&#xff0c;很多人使用 DI&#x…

YOLOv8改进实战 | 注意力篇 | 引入基于跨空间学习的高效多尺度注意力EMA,小目标涨点明显

YOLOv8专栏导航&#xff1a;点击此处跳转 前言 YOLOv8 是由 YOLOv5 的发布者 Ultralytics 发布的最新版本的 YOLO。它可用于对象检测、分割、分类任务以及大型数据集的学习&#xff0c;并且可以在包括 CPU 和 GPU 在内的各种硬件上执行。 YOLOv8 是一种尖端的、最先进的 (SOT…

Centos安装配置Gitea(Ubuntu等系统也可参考)

准备工作 安装好宝塔面板&#xff0c;再进入宝塔面板安装好MySQL&#xff0c;添加配置一个MySQL数据库gitea&#xff0c;用户名和密码也为gitea &#xff08;也可用命令行做相关操作&#xff0c;自行搜索教程&#xff09; 通过终端下载安装git&#xff0c;添加普通用户git&a…