9159金沙游艺场

图片 4
前端面试中的常见的算法问题

CentOS6.8下实现磁盘配置配额

人工智能通识-科普-图灵机1

欢迎关注我的专栏つ

图片 1

文:郑元春

图片 2

图灵机

人生苦短,我用Python!

图灵机Turing machine是英国科学家阿兰·图灵Alan
Turing在1937年构想的一个计算机原型,图灵机被计算机届公认为现代计算机理论的开端,可以说,没有这个图灵机,就没有现代计算机的诞生,因此,阿兰图灵也被称之为计算机科学之父。

图灵机是一个由数学家图灵在1936年构想出来的虚拟的机器,这个机器的伟大之处在于:

命令式和函数式模型是从数学家图灵、丘奇、克林、波斯特等人在20世纪30年代所做工作的基础上成长起来的。这些先驱者分别基于自动机、符号操作、递归函数、和组合学开发出了几种差异巨大的形式化模型。现在人们已经证明这些不同的理论具有相同能力:任何一种模型里可以计算的东西,在另一种模型里也能计算。这些形式化模型都可以看作计算机的数学模型。曾经看过一篇报道,里面写道。其实现在使用的遵从冯诺依曼结构体系的计算机来源于阿兰图灵的图灵机模型,从数学角度和计算模型来看,图灵机并不是最优或是最好的语言模型,图灵只是用另一种方式阐述了计算过程。这也从侧面说明了前辈们提出的各种计算模型都是能够相互转换的,古语云:条条大路通罗马!

以上是教科书式的内容,但到底图灵机是怎么个东西,原理是怎么样的,为什么这么有意义,却很少有人真的说清。

它非常的简单,但是它可以模拟任何的计算机程序。

图灵机:图灵的计算模型

图灵首先是个数学家,他有一个超前的想法,那就是建造一台机器,用来模拟人们用纸和笔进行运算的过程,他仔细思考之后认为,人的计算过程就是两种动作的组合:

它的结构

  • 一条存储带
    • 双向无限延长
    • 存储带上有一个个小方格
    • 每个小方格里面存储一个符号(数字、字母等等)
  • 一个控制器
    • 可以存储图灵机当前自身的状态
    • 包含一个读写头,可以读、写存储带上方格里面的内容
    • 可以根据督导的符号,改变自身的状态
    • 读写头可以沿着存储带一格一格的左移或者右移

这里存储带其实就相当于现在计算机的内存,控制器其实就相当于CPU +
程序代码

一直听说最早的计算机程序都是通过纸带打孔的方式表示的,原来是从图灵机这里来的啊。

图灵的基本思想是用机器来模拟人们用纸笔进行数学运算的过程,他把这样的过程看作下列两种简单的动作:

  1. 在纸上写下或者擦掉、修改某个符号。数字、字符等等都可以看做是符号,最简单情况下肯定就是数字0和1。
  2. 在一个地方写完擦完了,就挪到纸上的另外一个地方继续写啊擦啊。

它的工作过程

  1. 准备
  2. 存储带上符号的初始化(准备输入数据)
  3. 控制器设置好自身当前的状态(程序代码的初始化)
  4. 读写头置于存储带的起始位置(初始化)
  5. 反复执行以下工作直到停机
  6. 读出存储带上当前方格的符号
  7. 根据自身状态和读入的符号,找到相应的程序语句
  8. 在存储带上写入相应的值
  9. 修改图灵机自身的状态
  10. 根据程序的定义把存储带左移或者右移
  • 在纸上写上或擦除某个符号
  • 把注意力从纸的一个位置移动到另一个位置

相关文章

No Comments, Be The First!
近期评论
    功能
    网站地图xml地图