1. 计算机基础知识
陈述性知识
:关于事实的描述。如果满足y × y = x,那么x的平方根就是数值y。
程序性知识
:说明“如何做”,描述的是信息演绎的过程。
算法
:是一个有穷指令序列,它在给定的输入集合中执行时,会按照一系列定义明确的状态进行,并最终产生一个输出结果。
解释器
:可以执行任意合法指令集的程序(这样计算机就能够计算任何可以使用基本指令集描述的问题)。
计算机的功能
:执行计算与保存计算结果,操作的程序和数据都存储在内存中。通常都有一个程序计数器指向内存中的特定位置,通过执行这个位置上的指令,计算过程得以开始。
控制流
:解释器执行一个测试,然后根据测试结果可能跳到指令序列的其他位置继续执行。
通用图灵机
:这种机器具有无限的存储容量,即一条无限长的纸带。可以在纸带上面写入0和1,以及一些非常简单的初始指令,从而对纸带进行移动、读出和写入等操作。
邱奇-图灵论题
:如果一个函数是可计算的,那么一定可以通过对图灵机进行编程实现这种计算。邱奇-图灵论题中的“如果”非常重要,并非所有问题都可以通过计算求解。
停机问题
:不存在这样一个程序:对于给定的任意程序P,当且仅当P永远运行时输出true。
图灵完备
:邱奇-图灵论题可以直接推导出图灵完备性这个概念。如果一门编程语言可以模拟通用图灵机,才可以说它是图灵完备的。
编程基本思想的核心
:简单来说,就是组装操作序列的过程。
2. 编程语言的组成
基本结构
:Python语言中的基本结构包括字面量(例如,数值3.2和字符串'abc')和中缀操作符(例如,+和/)。