当前课程知识点:大学计算机基础 > 第4章 计算机硬件环境 > 4.1 计算机的硬件系统 > 4.1.1扩展阅读——图灵机快速入门
4.1.1 扩展阅读:图灵机快速入门.docx---点此下载文件
图灵机是图灵机理论中提出的理想模型,其可以实现任意复杂的计算。

英国数学家艾伦·图灵在1936年提出了“图灵机”的理论。“图灵机”设想有一条无限长的纸条,纸条上有一个个方格,每个方格可以存储一个符号,纸条可以向左或向右运动。

图灵机可以做下面三个基本的操作:
· 读取指针头指向的符号。
· 修改方框中的字符。
· 将纸带向左或向右移动,以便修改其临近方框的值。
下面我们通过一个小例子来了解下图灵机到底是如何进行计算的。这个例子比较简单,我们将在空白的纸带条上打印1 1 0这三个数字。
首先,我们向指针头指向的方框中写入数字1:

接着,我们让纸带向左移动一个方框:

现在,我们再往指针头指向的方框写入数字1:

接着,我们继续让纸带向左移动一个方框,并写入数字0:

这样我们就完成了一个简单的图灵机操作。
我们来尝试一个稍微复杂点的操作,我们尝试将1 1 0做一个异或操作,即将1 1 0变成0 0 1。要图灵机完成计算,就类似于向图灵机输入以下操作指令,这些指令组成了一个小程序。
读到的符号 | 写入指令 | 移动指令 |
空 | - | - |
0 | 写入1 | 向右移动纸带 |
1 | 写入0 | 向右移动纸带 |
我们假设图灵机纸带现在的状态如下图所示:

现在读取到的符号是0,按照操作指令,我们应该往方框写入1并向右移动一个方框:

现在读取到的符号是1,按照操作指令,我们应该往方框写入0并向右移动一个方框:

类似地,现在读取到的符号是1,我们重复相同的操作。

最后,我们读取到了一个空白字符,图灵机不做任何操作。
上面我们使用了图灵机成功完成了异或操作,理论上来讲我们也可以完成加法、减法、乘法、除法操作,只不过是实现的步骤(指令)复杂些而已。下面这个网站是一个图灵机的在线模拟器,其实现了一些基本运算,比如:加法、减法等,有兴趣的可以自己去试试看。
Online Turing Machine Simulator
让我们尝试这样的思考历程:
· 我有许多很复杂的公式需要计算,如果自己一个人算的话时间会很久。
· 思考:能不能有一个东西能帮我实现公式的计算,无论这个公式有多复杂?
· 思考:我能不能设计一个模型来证实这个实行是可行的?(数学家最喜欢建模型来证明了~)
· 思考:提出“图灵机”理论,任何计算都可以简化成固定的步骤,无论多复杂的计算都能实现了。
· 某些动手能力强的数学家利用电子工程学知识将许多真空管组成了一套设备,实现了“图灵机”理论模型。
· 随着电子工程的不断发展,原本庞大的计算机不断变小,慢慢地变成了今天的计算机。
“图灵机”理论通过假设模型证明了任意复杂的计算都能通过一个个简单的操作完成,从而从理论上证明了“无限复杂计算”的可能性,直接给计算机的诞生提供了理论基础。
从这样的思考历程来看,图灵机的出现为计算机的诞生奠定了理论基础,这就是图灵机诞生的意义。
-开篇导读
-常见问题
-1.1 计算文化
--1.1.1 Computer history and development Part I
--1.1.2 Computer history and development Part II
--1.1.3 Application of computers and computational thinking
-1.2 计算思维
--1.2.3扩展阅读——Computational Thinking
--1.2.1 the nature of computational thinking
--1.2.2 Problem solving using computational thinking
-第1章作业
-2.1 数制
--2.1.1 0
-2.2 0/1世界中的数值
--2.4 Binary arithmetic and logical operations
--2.5 Signed and unsigned numbers
--2.6 sign-magnitude,one's complement,two's comliement representation and real munber
-2.3 0/1世界中的字符
--2.7 Characters in digital world
-2.4 0/1世界中的图片、声音和视频
--2.8 Images, sounds and videos in digital world
-2.5 条形码
-第2章作业
-3.1 算法概述
--3.2 Description of algorithms
-3.2 典型算法
--3.3 Typical algorithms enumeration and induction
--3.4 Typical algorithms recursion and iteration
--3.5 Typical algorithms divide-and-conquer and backtracking
-3.3 Python语言编程基础
--3.3.2 Python基础语法及编程示例1-基本语法、条件语句
--3.3.3 Python基础语法及编程示例2-循环语句、内置函数
--3.3.4 Python基础语法及编程示例3-自定义函数
--3.3.1 Introduction to Python
--3.3.2 Python I basic syntax and conditional statements
--3.3.3 Python II loop statements and built-in functions
--3.3.4 Python III user-defined functions
--3.3.5 Python IV drawing with turtle
-第3章作业
-4.1 计算机的硬件系统
--4.1.2 Von Neumann architecture and computer organization
-4.2 计算机的基本工作原理
--4.2.1 Basic working principles of computers
-4.3 现代微机构成及性能指标
--4.3.1 Composition and performance of modern computers
-第4章作业
-5.1 计算机软件概述
--5.1 Overview of computer software
-5.2 系统软件
--5.2.1 System software I_operating system
--5.2.2 System software II programming language, compiler and DBMS
-5.3 应用软件
-第5章作业
-6.1 计算机网络平台
--6.1.5扩展阅读(2)——OSI参考模型与TCPIP的比较
-6.2 局域网技术
-6.3 Internet及其应用
--6.3.1 IP address and domain name
--6.3.2 Access and application of the Internet
-6.4 网络安全
-第6章作业
-7.1 数据管理
--7.1.1 Data managment and data models
-7.2 结构化数据库
--7.2.2 Creating a local database
--7.2.4 Data definition language
--7.2.5,7.2.6 Data Query Command
--7.2.7 Data manipulation language
-7.3 大数据
-第7章作业
-8.1 人工智能
--8.1.2 Artificial intelligence
-8.2 物联网
-8.3 云计算
-8.4 区块链
--【讨论帖】央行DCEP vs Facebook Libra:数字货币你了解多少?
-第8章作业
-9.1 Windows基本操作
-9.2 Windows程序管理
-9.3 Windows文件管理
-9.4 Windows设备管理
-第9章作业
-10.1 Word基本操作
-10.2 论文排版
--论文排版素材
-10.3 修订文档
-第10章作业
-11.1 Excel基本操作
-11.2 公式和函数
-11.3 数据分析和处理
-11.4 数据可视化
-第11章作业
-12.1 PowerPoint基本操作
-12.2 论文展板制作
-第12章作业



