【愚公系列】软考中级-软件设计师 012-程序设计语言基础知识(概述)

举报
愚公搬代码 发表于 2024/01/26 21:41:00 2024/01/26
【摘要】 🏆 作者简介,愚公搬代码🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,51CTO博客专家等。🏆《近期荣誉》:2023年华为云十佳博主,2022年CSDN博客之星TOP2,2022年华为云十佳博主等。🏆《博客内容》:.NET、Java、...

🏆 作者简介,愚公搬代码
🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,51CTO博客专家等。
🏆《近期荣誉》:2023年华为云十佳博主,2022年CSDN博客之星TOP2,2022年华为云十佳博主等。
🏆《博客内容》:.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。
🏆🎉欢迎 👍点赞✍评论⭐收藏


🚀前言

程序设计语言是一种用来描述计算机程序的语言,它定义了一组语法规则和语义规则,用于表示和传达计算机程序的逻辑结构和操作步骤。程序设计语言允许程序员以可读性强的方式编写计算机程序,并且能够通过编译器或解释器将程序转换为计算机能够理解和执行的机器语言指令。常见的程序设计语言包括C、C++、Java、Python等。不同的程序设计语言拥有不同的特性和适用场景,可以用于开发各种类型的应用程序。

🚀一、概述

🔎1.低级语言和高级语言

🦋1.1 低级语言

在程序设计语言中,低级语言是指与计算机硬件直接相关的、与机器指令一一对应的语言。它们通常需要更多的底层细节和直接的硬件操作来编写程序。

常见的低级语言包括:

  1. 机器语言:机器语言是计算机可以直接执行的二进制指令。它是最接近计算机硬件的语言,非常底层和高度机器依赖。

  2. 汇编语言:汇编语言是一种将机器语言指令用助记符表示的低级语言。它使用符号和标签来代表机器指令,使程序更易读和编写。

这些低级语言相对于高级语言(如Java、Python等)更加底层、直接和灵活,但也更加复杂和难于理解和使用。低级语言通常用于编写系统级软件、嵌入式系统和性能要求较高的应用程序。

🦋1.2 高级语言

程序设计语言中的高级语言(高级编程语言)是相对于低级语言而言的,它们更接近人类自然语言,更易于理解和使用。高级语言提供了更高级的抽象和封装,使程序员可以更便捷地进行软件开发。

常见的高级语言包括:

  1. C语言:C语言是一种广泛使用的高级程序设计语言,它是许多其他高级语言的基础。C语言具有高效、灵活的特点,可用于开发系统级应用程序。

  2. C++语言:C++是一种基于C语言的高级编程语言,它扩展了C语言的功能,引入了面向对象编程的概念。C++广泛应用于游戏开发、嵌入式系统等领域。

  3. Java语言:Java是一种跨平台的高级编程语言,它具有良好的可移植性和安全性。Java语言在Web开发、企业级应用开发等领域被广泛使用。

  4. Python语言:Python是一种简洁、易读、易学的高级编程语言,它具有强大的标准库和丰富的第三方库支持。Python语言适用于数据分析、人工智能等领域。

  5. JavaScript语言:JavaScript是一种在Web浏览器中执行的脚本语言,用于实现动态网页效果和交互功能。

  6. PHP语言:PHP是一种广泛用于Web开发的脚本语言,它与HTML结合使用,用于生成动态网页内容。

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

🔎2.程序设计语言的基本成分

🦋2.1 数据成分

程序设计语言的数据成分通常包括以下几种类型:

  1. 基本数据类型:这些类型是程序设计语言中最基本的数据类型,例如整数、浮点数、字符、布尔等。

  2. 复合数据类型:包括数组、结构体、联合体等。数组是相同类型的数据的有序集合,结构体是不同类型的数据的组合,联合体是一种特殊的结构体,它的所有成员共享一个内存空间。

  3. 指针:指针是一种特殊的数据类型,它存储了一个变量的内存地址。指针可以用于访问和操作其他变量的值。

  4. 枚举类型:枚举类型是一种用户自定义的数据类型,它包含了一组已命名的常量值。

  5. 字符串:字符串是由字符组成的序列,在许多程序设计语言中都是作为一种特殊的数据类型存在。

  6. 集合类型:集合类型是一种可以存储多个元素的数据类型,例如列表、集合、字典等。

  7. 自定义数据类型:程序设计语言通常允许用户自定义数据类型,以满足特定的需求。这些自定义数据类型可以是基于现有的数据类型进行扩展或组合,也可以是完全自定义的。

🦋2.2 运算成分

程序设计语言的运算成分是指语言中用于进行计算和操作的元素和机制。它们包括以下几个方面:

  1. 运算符(Operators):包括算术运算符(如加、减、乘、除)、逻辑运算符(如与、或、非)、比较运算符(如等于、大于、小于)等,用于执行基本的数学和逻辑操作。

  2. 表达式(Expressions):由操作数(如变量、常数)和运算符组合而成的式子,用于计算和生成值。表达式可以包括算术表达式、逻辑表达式、字符串连接等。

  3. 控制结构(Control Structures):用于控制程序的执行流程的语句和结构,包括条件语句(如if-else、switch)、循环语句(如for、while)、跳转语句(如break、continue)等。

  4. 函数(Functions):封装了一系列操作和计算过程的代码块,可以被多次调用和重复利用。函数可以接受参数,并返回一个值。

  5. 数组(Arrays):用于存储和处理一组相同类型的数据元素的数据结构。数组提供了通过索引访问和操作元素的功能。

  6. 结构(Structures):用于组织和管理多个相关数据的复合数据类型。结构可以包含不同类型的数据成员,并且可以自定义操作和行为。

  7. 类(Classes):面向对象编程中的基本概念,用于定义对象的属性和行为。类可以有多个对象实例,并且可以继承和扩展其他类。

除了以上的基本成分,不同的程序设计语言可能还具有其他的运算成分,如指针(Pointers)、模块(Modules)、接口(Interfaces)等。

🦋2.3 控制成分

程序设计语言的控制成分是一种用于改变程序执行流程的特殊语句或结构。控制成分可以帮助程序实现条件判断、循环、分支等功能,以及管理程序的执行顺序和控制流程。

常见的控制成分包括:

  1. 顺序结构:按照语句的书写顺序执行,是程序默认的执行方式。
  2. 条件结构:通过条件判断来选择是否执行某个代码块,常见的形式有“if-else”和“switch-case”。
  3. 循环结构:重复执行某个代码块,根据循环条件可以分为“for”循环、”while”循环和“do-while”循环。
  4. 分支结构:根据不同的条件选择不同的执行路径,常见的形式有“if-else”和“switch-case”。
  5. 跳转结构:用于跳出循环或直接跳转到程序的其他位置,常见的形式有“break”、“continue”和“goto”。
  6. 异常处理:用于处理程序执行过程中的错误和异常情况,常见的形式有“try-catch-finally”和“throw”。
  7. 并发控制:用于实现多线程之间的同步与互斥,常见的方式包括锁、信号量和条件变量。

控制成分是程序设计语言中非常重要的组成部分,通过合理地使用控制成分,可以实现复杂的逻辑和算法,提高程序的效率和可读性。

🦋2.4 传输成分

在程序设计语言中传输成分主要有:数据传输、赋值和输入输出是常见的操作,用于处理数据的传递、存储和展示。

数据传输:数据传输是将数据从一个位置传递到另一个位置的过程。程序设计语言提供了不同的方式来实现数据传输,例如使用变量、数组、对象等数据结构来存储和传递数据。数据传输可以通过传值或传引用的方式进行,具体取决于编程语言的规定。

赋值:赋值是将数据存储到变量中的过程。在程序设计语言中,赋值操作使用赋值符号(通常是等号)将右侧的数据值赋给左侧的变量。赋值操作可以将常量值、变量值或表达式的结果赋给变量。

输入输出:输入是将数据从外部世界(如用户、文件等)引入程序内部的过程,输出是将程序内部的数据展示给外部世界的过程。程序设计语言提供了不同的方式来进行输入输出操作,例如使用输入函数、输出函数、文件读写等。输入可以是键盘输入、文件输入或网络输入,输出可以是屏幕输出、文件输出或网络输出。

这些操作是程序设计中常见的基本要素,用于处理和操作数据。不同的编程语言可能有不同的语法和特性来支持这些操作,但基本的概念和作用是相似的。通过数据传输、赋值和输入输出,程序能够与用户、外部设备和其他程序进行交互,并对数据进行处理和展示。

🦋2.5 传值调用和传址调用

程序设计语言中的传值调用和传址调用是用于确定函数参数传递的方式。

传值调用(Call by Value)是指在函数调用时,将实际参数的值复制一份传递给形式参数,函数内部对形式参数的修改不会影响到实际参数的值。换句话说,函数内部的操作只是对形式参数的一份拷贝进行的。

传址调用(Call by Reference)是指在函数调用时,将实际参数的地址传递给形式参数,函数内部对形式参数的修改会影响到实际参数的值。换句话说,函数内部的操作直接对实际参数进行修改。

传值调用的优点是简单、安全,不会影响到实际参数的值,适合用于处理不需要修改实际参数的情况。传址调用的优点是可以直接对实际参数进行修改,可以节省内存和执行时间,适合用于处理需要对实际参数进行修改的情况。

在这里插入图片描述

🔎3.函数

在程序设计语言中,函数是一段封装了特定功能的可重复使用的代码块。函数接受输入参数,执行预定义的操作,然后返回输出结果。函数的存在可以简化程序的结构,提高代码的可重用性和可维护性。

函数定义包括函数名、参数列表、函数体和返回值类型。函数的参数可以是输入参数,也可以是输出参数。函数通过调用函数名并传递参数来执行代码块中的操作。函数执行完毕后,可以返回一个值作为结果。

函数的作用有多种,可以用于执行一系列操作,执行特定的计算任务,或者封装某个特定功能。函数可以在程序中多次调用,方便代码的复用,同时也使程序更易读、理解和维护。

不同的程序设计语言对函数的定义和使用有不同的语法和规则,但基本的概念和作用是相似的

🚀二、编译程序和解释程序

🔎1.编译程序和解释程序区别

编译程序 解释程序
预处理 无需预处理
编译 逐行解释
生成机器码 无需生成机器码
生成可执行文件 可直接运行源代码文件
静态类型检查 动态类型检查
更高的执行速度 较慢的执行速度
错误发生在编译阶段 错误发生在运行阶段
跨平台性差 跨平台性好
通常需要显式编译 无需显式编译
适用于长期运行的程序 适用于短期运行的程序

编译程序将源代码转化为目标机器的机器码,并生成可执行文件,执行速度较快,但在不同平台上需要重新编译。

解释程序逐行解释源代码,无需预处理和生成机器码,可直接运行源代码文件,执行速度较慢,但具有较好的跨平台性。

编译程序在编译阶段就能检查出语法错误,而解释程序在运行时才会检查出错误。

编译程序适用于长期运行的程序,而解释程序适用于短期运行的程序,如脚本。

在这里插入图片描述

🔎2.程序设计语言的组成

程序设计语言的组成包括语法、语义和语用。

语法是指一组规则,规定了程序设计语言中合法的语句和表达式的结构和格式。它定义了如何组织和使用语言的各种语法成分,例如关键字、标识符、运算符、表达式、语句等。

语义是指语法成分的含义。它定义了语法成分在程序执行时的行为和效果。语义规定了语句和表达式的计算规则、数据类型的操作和转换规则等。

语用是指构成语言的各个记号和使用者之间的关系。它包括语言的实际使用、语言的规范使用、语言的隐含规则等。语用决定了程序设计语言的使用者如何正确地使用语言,以及如何与其他使用者进行沟通和交流。


🚀感谢:给读者的一封信

亲爱的读者,

我在这篇文章中投入了大量的心血和时间,希望为您提供有价值的内容。这篇文章包含了深入的研究和个人经验,我相信这些信息对您非常有帮助。

如果您觉得这篇文章对您有所帮助,我诚恳地请求您考虑赞赏1元钱的支持。这个金额不会对您的财务状况造成负担,但它会对我继续创作高质量的内容产生积极的影响。

我之所以写这篇文章,是因为我热爱分享有用的知识和见解。您的支持将帮助我继续这个使命,也鼓励我花更多的时间和精力创作更多有价值的内容。

如果您愿意支持我的创作,请扫描下面二维码,您的支持将不胜感激。同时,如果您有任何反馈或建议,也欢迎与我分享。

在这里插入图片描述

再次感谢您的阅读和支持!

最诚挚的问候, “愚公搬代码”

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。