普通的学生用科学计算器哪位鉮仙教我如何进行进制转换,十进制10转换二进制转为二进制
第4章 计算学科中的基本概念 李陶罙 tshli@ 4.1 计算模型与二进制 计算模型与图灵机 计算模型: 刻画计算这一概念的一种抽象的形式系统或数学系统 在计算科学中,是指具有状态转換特征能够对所处理的对象的数据或信息进行表示、加工、变化、接收、输出的数学机器。 计算模型的层次: 计算某个(类)具体问题嘚计算方法; 按照计算方法对应的程序完成某类问题特定计算所需要的平台
在计算能力上具有某种等价性的形式系统。 计算模型的模型(一切计算模型所内含的机理) 计算模型与图灵机 图灵的观点及结论: 凡是能用算法方法解决的问题也一定能用图灵机解决;凡是图灵機解决不了的问题,任何算法也解决不了 与图灵机等价的计算模型: 递归函数 λ-演算 POST规范系统 图灵机是从过程这一角度来刻画计算的本質,其结构简单、操作运算规则也较少从而为更多的人所理解。 图灵机
图灵机由一条两端可无限延长的带子、一个读写头以及一组控制讀写头工作的命令组成 图灵机 写在带子上的符号为一个有穷字母表:{S0,S1S2,…Sp}。 可以认为这个有穷字母表仅有S0、S1两个字符 其中S0可以看作是“0”,S1可以看作是“1” 由 “0”和“1”组成的字母表可以表示任何一个数。
由于“0”和“1”只有形式的意义因此,也可以将S0改称為“白”S1改称为“黑”,甚至还可以改称为“桌子”和“老虎”,这样改称的目的在于割断与直觉的联系并加深对布尔域中的值{真,假}以及二进制机器本质的理解。机器的控制状态表为:{q1q2,…qm}。 将一个图灵机的初始状态设为q1在每一个具体的图灵机中还要确定┅个结束状态qw。 一个给定机器的“程序”
机器内的五元组(qiSjSkR(或L或N)ql)形式的指令集五元组定义了机器在一个特定状态下读入一个特定芓符时所采取的动作。5个元素的含义如下: qi表示机器目前所处的状态; Sj表示机器从方格中读入的符号; Sk表示机器用来代替Sj写入方格中的符號; R、L、N分别表示向右移一格、向左移一格、不移动; ql表示下一步机器的状态
一个机器计算的结果是从机器停止时带子上的信息得到的。容易看出q1S2S2Rq3指令和q3S3S3Lq1指令如果同时出现在机器中,当机器处于状态q1第一条指令读入的是S2,第二条指令读入的是S3那么机器会在两个方块の间无休止地工作。
另外如果q3S2S2Rq4和q3S2S4Lq6指令同时出现在机器中,当机器处于状态q3并在带子上扫描到符号S2时就产生了二义性的问题,机器就无法判定 例子: b表示空格,q1表示机器的初始状态 q4表示机器的结束状态,设带子上的输入信息读入头位对准最右边第一个为0的方格状态為初始状态q1。规则如下: q1 0 1 L q2 q1 1 0 L q3 q1 b b N q4 q2
0 0 L q2 q2 1 1 L q2 q2 b b N q4 q3 0 1 L q2 q3 1 0 L q3 q3 b b N q4 计算结果即对给定的数加1 图灵机的计算能力 第一,把图灵机看作识别器即判断带子上最初的内容能否被图灵機所接受。假定图灵机从左向右扫描完带子上的内容后停机则为接受否则为不接受。 例2 一台图灵机可以设计成识别下面的序列: 1000110,
图灵機的计算能力 第二,把图灵机看作生成器对给定的输入集合,考察输出集合并研究输入输出集合性质之间的关系,这就研究了图灵机嘚生成能力 例3 设一台图灵机的输入集合为In={1n0n│n∈N},可设计一台图灵机对给定的输入集合In,得到输出集合Out={0n1n│n∈N}其中,N是全体自然数嘚集合 图灵机的计算能力
第三,把图灵机看作计算器相当于一个函数。图灵机的输入是函数的自变量的值图灵机的输出是函数的值。 例4 图灵机可以计算下列函数: (1) s(x)=x+1; (2) o(x)=0; (3) A(0y)=y+1, A(x+10)=A(x,1) A(x+1,y+1)=A(xA(x+1,y)) 图灵机的计算能力
第一和第二个函数读者不难从图灵机嘚定义出发感悟到它们是图灵机可以计算的函数,而第三个函数就比较复杂一时难于判断。顺便提一下第