编程语言是什么

人生苦短,我用Python!

大家好,这里是python技术站(www.pythonjishu.com)。

在学习Python之前,我们首先了解下什么是编程语言

说到编程语言,还需要从程序说起。

其实,程序就是一系列指令,计算机之所以能够工作,根本的原因是它能够识别人类发出的指令。目前你看到关于计算机的所有内容,包括网站、视频、搜索引擎等等,归根结底都是计算机执行人类指令产生的结果。

也就是说,计算机本身是什么也做不了的,只有人类编写好指令后,计算机按部就班地去执行指令,才能真正工作起来,从而产生有价值的内容。

所以,你也许也发现了,这其中最关键的就是那一系列指令串,而我们人类编写指令串的过程就是称为编程。

所谓编程语言,那“语言”又是什么东西?

众所周知,计算机只认识0和1这种二进制数字,我们可以称之为机器码,也就是机器语言。这也意味着,人类需要将指令编写为机器语言,才能够让计算机工作。但机器语言与人类语言差异太大,不符合人类的语言习惯,人类想要阅读并理解机器码是相当困难的。

于是乎,计算机科学家们想到个折中的办法,他们在机器语言和人类语言之间做了一层翻译器。这个翻译器十分关键,我们后续文章还会提到。有了这个翻译器,人类就可以用习惯上的人类语言逻辑去编写代码,编写完成后,翻译器再把代码翻译成机器语言,这样,人类与机器之间就可以顺畅交流了!

当这套解决方案产生后,人们很快就在上世纪50年代设计出了一套编程语言,也就是汇编语言,它也是第二代计算机语言(第一代就是机器码)。汇编语言设计了一套人类易于理解和记忆的缩写单词,用来代替一些特定的指令,通过这种方法,人们就很容易去阅读和理解程序执行的功能了,对现有程序的bug修复和运行维护也都变得更加简单方便了。

.section .text
.global _start
    _start:
    .ARM
    add r3, pc, #1
    bx r3
    .THUMB
    mov r0, #2
    mov r1, #1
    sub r2, r2, r2
    mov r7, #200
    add r7, #81
    svc #1
    mov r4, r0
    adr  r1, struct_addr
    strb r2, [r1, #1]
    strb r2, [r1, #4]
    strb r2, [r1, #5]
    strb r2, [r1, #6]
    strb r2, [r1, #7]
    mov r2, #16
    add r7, #1
    svc #1
    nop

汇编语言

后来随着计算机的发展,汇编语言渐渐满足不了不同领域的编程要求和软件功能,于是C语言、C++、Java这种高级语言相继横空出世,这些语言的语法、结构相对于汇编语言更加成熟,也更易于理解了。

编程语言发展到现在,计算机科学家们已经开发了成千上百种编程语言,而且随着时间的演变,这些编程语言又产生了很多不同的版本。但无论是什么编程语言,也无论有多少个版本,虽然它们在细节上有所不同,但它们的核心逻辑都是相同的。这也是为什么当程序员学会一门编程语言后,再学习其他语言会非常快的原因。

说到编程语言的核心,具体来讲就是编程语言制定了一套规则,在这套规则下,每种编程语言都拥有固定的关键字(缩写单词)、使用格式(称为语法),以及精确的含义(称为语义)。当然,编程语言肯定没有你学习一门外语那么困难,这点你不必担心。

在学习Python这门编程语言之前,你可能也了解过其他编程语言,比如C,C++,Java等,就像我之前所说的,无论是什么语言,核心逻辑都是一样的,无非都是通过翻译器将这类语言翻译成可执行的机器语言。那么这套翻译器是如何设计的,它又是如何工作的,这一点我们下个章节会进行详细介绍。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:编程语言是什么 - Python技术站

(3)
上一篇 2022年10月25日 下午8:43
下一篇 2022年10月25日 下午8:08

相关文章

  • 详解python3中zipfile模块用法

    详解Python3中zipfile模块用法 zipfile是Python标准库中的一个模块,用于读取和写入ZIP格式的压缩文件。本文将详细讲解zipfile模块的用法,包括创建ZIP文件、读取ZIP文件、解压ZIP文件等内容,并提供两个示例。 示例1:创建ZIP文件 以下是一个使用zipfile创建ZIP文件的示例: import zipfile with …

    python 2023年5月15日
    00
  • 总结python 三种常见的内存泄漏场景

    下面是总结Python三种常见的内存泄漏场景的完整攻略。 1. 引用循环 引用循环是Python内存泄漏最常见的情况之一,也被称为“循环引用”。 基本原理是当存在两个对象,这两个对象在彼此之间存在引用关系,即相互引用,形成了一个环状结构,但是这个环状结构又没有被引用指向,这时就会发生引用循环,导致内存泄漏。 示例代码: class Person: def _…

    python 2023年6月3日
    00
  • python matplotlib 画dataframe的时间序列图实例

    下面是详细讲解“python matplotlib 画dataframe的时间序列图实例”的完整攻略: 1. 准备工作 首先,需要安装matplotlib和pandas两个库,可以使用pip进行安装: pip install matplotlib pandas 同时,还需要准备一个时间序列的数据集(比如股票价格、气象数据等)来进行绘图。这里我们以一个包含两列…

    python 2023年5月18日
    00
  • 使用LRU加速python应用

    操作系统 :CentOS 7.6.1810_x64 Python 版本 : 3.9.12 一、背景描述 使用python开发过程中,会遇到需要使用缓存加速应用的情况,比如下面这些场景: 数据转换加速 字符串时间转换成int时间戳; 字符串时间转换成datetime类型; … 数据解析加速 bytes数据转换为int(数据包解析场景的端口、序列号等); b…

    2023年4月8日
    00
  • python subprocess pipe 实时输出日志的操作

    Python 的 subprocess 模块提供了与系统进程进行交互的能力,允许我们在 Python 中启动新进程并与其进行通信。当我们启动一个子进程时,有时候需要实时输出子进程的日志信息,这就需要用到 subprocess 模块中的 pipe 和实时输出函数(如: poll、communicate等)。 下面是实时输出子进程日志信息的完整攻略: 使用 su…

    python 2023年6月5日
    00
  • Python中使用异常处理来判断运行的操作系统平台方法

    当我们的代码需要在不同的操作系统平台(比如Windows、Linux、MacOS等)上运行时,可能存在一些平台特定的问题需要进行处理。Python中提供了异常处理机制,我们可以借此机制来判断当前程序运行的操作系统平台。下面是具体的步骤: 首先,在Python中导入os模块。该模块提供了一些与操作系统交互的功能。 使用os模块提供的函数来获取当前操作系统的名称…

    python 2023年5月13日
    00
  • 如何在 Redis 中实现限流?

    以下是详细讲解如何在 Redis 中实现限流的完整使用攻略。 Redis 限流简介 Redis 限流是一种常用的限制访问速率的方法,可以用于保系统免受过多的请求。Redis 限流的特点如下: Redis 限流是基于令牌桶算法的,可以控制请求速率。 Redis 限流是可扩展的,可以动态调整限流略。 Redis 限流支持多种限流方式,包括定窗口限流、滑动窗口限流…

    python 2023年5月12日
    00
  • Python实现朴素贝叶斯的学习与分类过程解析

    Python实现朴素贝叶斯的学习与分类过程解析 简介 朴素贝叶斯是一种基于概率统计的分类算法。它假设特征之间相互独立,且每个特征对于分类的影响是等同的。朴素贝叶斯广泛应用于各种文本分类任务,如垃圾邮件分类、情感分析等。 本文将介绍Python实现朴素贝叶斯的学习与分类过程,主要包括以下步骤:数据预处理,生成词向量,构建模型,训练模型,四种分类算法的实现及准确…

    python 2023年6月5日
    00

评论列表(1条)

  • metahuber的头像
    Python技术站官方 2022年10月27日 下午8:46

    今天开始Python基础教程第一篇!新的出发,与君共勉!

合作推广
合作推广
分享本页
返回顶部