从有限状态机到计算机:基础概念与算法解决问题
1. 计算机基础概念
计算机是确定性的符号处理机器。确定性意味着在相同条件(程序和输入)下,计算机的行为总是相同的。例如,使用计算机计算√2,无论执行多少次操作,结果都相同。而像抛硬币,其正反面的顺序是不可预测的,并非确定性系统。
当说计算机是符号处理机器时,是指它接收符号,对其进行操作并输出新的符号。这些符号可以是任何能以数字形式表示的东西,如字母、单词、数字、图像、声音和视频。以计算机下棋为例,程序接收的输入符号对应玩家的走法,程序根据一组规则处理输入符号,然后输出计算机的走法。
编程涉及将现实世界的信息转化为计算机可以处理的符号,编写规则(即程序)告诉计算机如何操作这些符号,最后将输出符号转换为对人类有意义的形式。计算机处理的符号本身对计算机没有内在意义,特定的比特模式(即符号)可能代表数字、名称、游戏中的走法等。
2. 有限状态机
2.1 离散概念
理解数字计算机的操作和功能,需要掌握的基本概念并不多,其中“离散”概念非常重要,它是计算机操作和程序的核心。计算机处理离散数据元素,即其值从固定且有限的范围内选取。在日常生活中也会使用离散值,如罗马字母表中的字母{A…Z},字母不会处于两个可能值之间。一周的天数也是如此,只能是七天中的某一天,不会是“有点像周一”或“比周三稍微大一点”的一天。对于计算机而言,基本数据元素是比特,其值只能是 0 或 1,所有数据结构都由 1 和 0 的字符串表示。
除了离散数据值,时间也可以是离散的。想象时间从一个离散点向另一个离散点单向移动,两个离散时间点之间不存在其他时间,就像数字时钟从 12:15:59 直接
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



