单片机&图灵机的构想


  真正理解一个单片机会发现其越来越与我们使用的计算机有着很大的联系,最早的MCS-51内核的单片机是intel发明的,那时候是1978年左右,刚好和8086/8088 CPU出来差不多时候,但是单片机可不是CPU,从名字也可以看出来,单片机为MCU,CPU全称Central Processing Unit(中央处理器单元),而单片机为MCU全称为Micro Controller Unit(微控制器单元),单片机里有CPU,所说的51内核,Cortex内核,就是指的单片机的CPU架构,其余的ROM,RAM,I/O口,定时器,大多都是围绕其中CPU进行扩展开的。既然主要还是CPU,CPU作为我们所熟知的计算机的重要组成部分,那就得说一下计算机的历史了。

  计算机早期可是全机械式的,最早的都不带按键的,但随着人们对计算的要求变高,开始出现了按键式计算器,但这时候的计算器还要手摇的,不光使用起来费脑力,还特别费体力。于是人们便开始安装了电动马达,再到后来就出现了精简式的按键计算器。机械之美xxxx

  当计算器发展到20世纪中叶,和电子计算机(xxxx)出现了时间上的交叉处在了一个过渡时期,出现了一位重要人物(图灵),图灵提出了图灵机的概念,该概念发表在一篇数学杂志上,当时的时代背景也是数学科学发展到了一定的水平(毋庸置疑的是数学在所有学科中起着重要推动作用),数学中的完备性等等带着哲学意味的数学问题开始提出,图灵就是为了定义数学中的计算问题而最终解决数学是否完备(xxx),得出了图灵机这一构想。所有可计算性问题都可通过图灵机加以描述和实现,而无法用图灵机加以描述和实现的都不是可计算性问题(Turing Machine 是一个概念计算机),图灵机想象的是使用一条无限长度的纸带子,纸带子上有许许多多的格子,每个格子可存0或1,也可以空白,机器逐步运行,每一步包括三个不同的动作:

1.任一时刻,读写头对准带子上一方格,根据格子上的内容和机器状态决定自己的动作 2.机器可以抹去带子上符号或写其他的

3.让带子每次移动一个方格。

读写头其实就好比PC指针,无限长的纸带就好比存储器,其上面的内容就好比程序,机器就好比控制器。机器的行为由一个指令集构成,它明确指示机器每一步应该执行哪个动作。

至此,我们也可以发现若一件事能通过有限个状态指令集构成,并且完成,那么它是可计算的,而完成该类事件所有指令集的集合也就是程序。