闲说图灵和GAS

今天和大家说说图灵机的一些事儿。首先咱们来了解一下什么是图灵机。
【闲说图灵和GAS】图灵机又被称为定型图灵机,是英国数学家艾伦图灵于1936年提出的一个抽象计算模型,既然他是一个数学模型,他肯定就不是一个实体的东西,而仅仅是一个虚无缥缈的想法,可以看做是任何有限逻辑数学过程的终极强大逻辑机器。

图灵完备是针对一套数学操作规则而言的概念,数据可以是一门编程语言,也可以是计算机里具体实现了的指令集。当这套规则可以实现图灵机里的全部功能时,就称他具有图灵完备性
接下来我们来说说图灵停机的问题。首先给大家讲一个故事。
在一个小镇里有一个厨师,有一天他做出了一个规定,他只给那些不能自己给自己做饭的人做饭。厨师的这个规定看起来似乎相当的合理,既然那些人能够给自己做饭了,那么我又何必“多此一举”,再给这个人做饭呢。刚开始一两天的时候这个规定并没有什么问题,过了一两天这个厨师发现自己没有饭吃了,他发现他陷入一个两难的境地,他该不该给自己做饭呢,如果他为自己做饭,那么他就成为他规定中那个自己给自己做饭的人,那么他就不应该为自己做饭,那么如果他不为自己做饭,那么他不就是他规定中那个自己不能给自己做饭的人,以上两种情况,他为自己做饭,他不为自己做饭,这样就成为了一个悖论。
当我们写代码调试的时候,有的时候会遇到这样一种情况,等了很久程序还一直在运行,我们不知道是代码正常运行,只是运行的时间比较长还是代码写的有问题。比如写出了死循环。导致程序根本不会停止。
这是个我们想,如果能够有个工具能够为我们判断我们写的代码的运行时间就好了,这就是图灵停机问题。
GAS出现就是源于以太坊虚拟机存在图灵停机问题,这个问题会直接导致以太坊虚拟机无限循环执行脚本文件。造成系统运行压力增大直至奔溃。为了阻止这个破坏性的情况出现,GAS的设立思路被引入以太坊。
GAS在英语里翻译是汽油,而他在以太坊里也是起着和汽油一样作用的。作为去中心化智能合约平台,任何开发者都可以在平台上进行开发工作,一旦开发者开发出的程序被gas限制在一定程度的执行范围内,图灵停机问题就迎刃而解了,每个程序如果要顺利执行,就需要支付一定数量的GAS。而GAS不是免费的,是需要通过以太坊币去购买的。从中我们可以看到,网络中的世界在一步步的接近于真实的世界,网络系统或许会成为可以于现实世界比拟的大型虚拟生态系统,就像某些小说里描述的人可以一串数据的形式记录下来,然后再网络虚拟世界里随意游玩。
今天有关图灵和GAS的问题就讲到这里啦,咱们明天再聊。
每天停留两分钟,在这里,走马与您一同进步!

    推荐阅读