1《计算机文化基础》第0章绪论2《计算机文化基础》计算机基础知识计算机系统;计算机信息表示;操作系统概述;程序设计语言与算法3《计算机文化基础》计算思维(ComputationalThinking,CT)是运用计算机科学的基础概念去求解问题、设计系统和理解人类行为等涵盖计算机科学之广度的一系列思维活动。4《计算机文化基础》0.1计算机系统0.1.1图灵机-计算机的理论模型一、图灵与图灵机1、图灵-----是英国著名的数学家和逻辑学家,被称为计算机科学之父、人工智能之父,是计算机逻辑的奠基者,提出了“图灵机”和“图灵测试”等重要概念。人们为纪念其在计算机领域的卓越贡献而设立“图灵奖”。2、艾伦∙图灵通用机模型的设想“它可以表达成一台单一的特殊机器,这种形式的机器可以被塑造成去做到所有工作。事实上,它可以被塑造成如同任何其他机器的模型般工作。这种特殊机器或许可以被称呼为通用机器。”──1947年的艾伦‧图灵1936年,阿兰·图灵(1912-1954)提出了一种抽象的计算模型——图灵机(TuringMachine)。5《计算机文化基础》图灵的基本思想:是用机器来模拟人们用纸笔进行数学运算的过程,他把“计算”这一过程分解为如下步骤:①根据眼睛看到纸上的符号,思考脑中相应的法则;②指示手中的笔在纸上写上或擦去一些符号;③再改变眼中所看到的范围;④如此继续,直到认为计算结束为止。“图灵机”不是一种具体的机器,而是一种抽象的理论模型,人们根据该模型可制造出一种结构简单但运算能力却极强的计算装置,即计算机。图灵认为图灵机可以用有限的、机械的步骤解决具体的计算问题,这些步骤称为“算法”。这一装置只是一种理想的计算模型,或者说是一种理想中的计算机。6《计算机文化基础》图灵机装置一条无限长纸带一个读写头一套控制程序(状态转移表)一个状态寄存器二、图灵机控制程序指令序列(实现状态转移)基本指令动作翻转移动停止7《计算机文化基础》三、图灵机的工作过程注意:指令和数据均可用二进制表示!8《计算机文化基础》四、图灵机的理论模型Q—有穷状态集Ʃ—有穷输入字符集Г—有穷输入带字母表δ—状态转移函数q0—初始状态B—空格符F—有穷终结状态集0(,,,,,,)PQqBFB9《计算机文化基础》五、图灵机实例Q={s1,s2,s3,s4,s5,H}Г={0,1}Ʃ={1}q0=s1B=0F=Hδ---见下页输入:若干个连续的1输出:复制输入,并在输入和复制结果之间用0连接例如,输入11则输出11011则该问题的图灵机如下:10《计算机文化基础》图灵机实例δ—状态转移函数图灵机执行过程PrintOperationN无操作P1打印1E擦除,或打印0注意:初始状态下,读写头停在输入串最右边的字符11《计算机文化基础》•规则集合δ:五、图灵机实例----计算“x+1”的图灵机12《计算机文化基础》“5+1”的计算过程(1)13《计算机文化基础》“5+1”的计算过程(2)14《计算机文化基础》“5+1”的计算过程(3)15《计算机文化基础》六、图灵机意义为设计计算机(硬件)指明了方向为算法和程序设计(软件)提供了理论依据因此是计算机学科最重要的理论基础尽管图灵机就其计算能力而言,可以模拟现代任何计算机,甚至图灵机还蕴含了现代存储程序式计算机的思想(图灵机的带子可以看作是具有可擦写功能的存储器),但是,它毕竟不同于实际的计算机,在实际计算机的研制中还需要有具体的实现方法与实现技术。16《计算机文化基础》通用图灵机蕴含的计算思想-----图灵机模型的启示•程序也是数据–“x+1”图灵机功能是固定的,相当于一个程序–通用的图灵机功能根据输入编码的不同而变化•存储程序和程序控制–M图灵机进一步展示了程序和其输入可以先保存到存储带上,M就按程序一步一步运行直到给出结果,结果也保存在存储带上。17《计算机文化基础》通用图灵机蕴含的计算思想-----图灵机模型的启示•通用图灵机模型是计算机的计算能力的极限•计算机系统应该有:–存储器(相当于存储带)–中央处理器(控制器及其状态),并且其字母表可以仅有0和1两个符号;–为了能将数据保存到存储器并将计算结果从存储器送出来展示给用户,计算机系统还应该有输入设备和输出设备如键盘、鼠标、显示器和打印机等。18《计算机文化基础》0.1.2冯诺依曼计算机体系结构1.采用二进制作为计数进位制2.采用多级存储的存储模式——存储器3.有一个运算装置,用于完成算术、逻辑运算4.有一个控制装置,完成控制指挥的作用5.有输入、输出设备,用来完成人--机通信存储器运算器控制器输入设备输出设备存储器运算器控制器输入设备输出设备冯诺依曼计算机硬件组成一、冯诺依曼计算机19《计算机文化基础》计算机硬件系统的五大部件结构冯.诺依曼思想:•采用二进制•在内存中存放程序和数据•系统由五大模块组成存储器数据流控制流运算器外存储器输出设备内存储器输入设备控制器“存储程序”工作原理:在计算机中设置存储器,将二进制编码表示的计算步骤与数据一起存放在存储器中,机器一经启动,就能按程序指定的逻辑顺序依次取出存储内容进行译码和处理,自动完成由程序所描述的处理工作。20《计算机文化基础》冯·诺依曼型计算机---为现代计算机的研制奠定了基础。(1)输入设备(InputDevice)输入设备能将数据、程序等用户信息变换为计算机能识别和处理的二进制信息形式输入计算机。(2)存储器(Memory)存储器是计算机中具有记忆功能的部件,负责存储程序和数据,并根据控制命令提供这些数据。(3)运算器(ALU,ArithmeticandLogicUnit)运算器是执行各种算术、逻辑运算的部件,又称算术逻辑单元,它包括寄存器、执行部件和控制电路三部分。操作时,控制器控制运算器从存储器中取出数据,进行算术或逻辑运算,并把处理后的结果送回到存储器,或者暂时存放在运算器中的寄存器里。21《计算机文化基础》(4)控制器(ControlUnit)控制器的主要作用就是使得整个计算机能自动地执行程序,并控制计算机各个功能部件协调一致地工作。执行程序时,控制器先从主存中按照顺序取出指令,解释该指令并取出相关的数据,然后向其它功能部件发出执行该指令的所需要的时序控制信号,然后再从主存中取出下一条指令执行,依次循环,直至程序执行结束。计算机自动工作的过程就是逐条执行程序中指令的过程。通常把运算器和控制器合称为CPU。(5)输出设备(OutputDevice)输出设备能将计算机处理的结果(二进制信息)变换为用户所需要的信息形式输出。22《计算机文化基础》计算机硬件工作过程(原理)运算器内存储器控制台电源控制器接通电源启动控制器工作发送指令地址取出的指令发送操作数地址取出的操作数通知运算器计算发送保存结果的地址保存结果计算机硬件工作过程?23《计算机文化基础》•硬件:指构成计算机的物理实体,看得见摸得着的实物。•软件:软件则是控制硬件按指定要求进行工作的由有序命令构成的程序集合二、计算机系统基本组成计算机系统基本组成?24《计算机文化基础》计算机硬件由主机和外部设备两大部分构成主机包括控制器、运算器和内存储器等外部设备包括输入设备、输出设备和输入/出设备注意:主机中的内存和外部设备的外存统称为存储器计算机硬件计算机系统基本组成?计算机软件计算机软件由系统软件和应用软件两大类构成系统软件是用于对计算机进行管理、控制、维护,或者编辑、制作、加工用户程序的一类软件应用软件则是用于解决各种实际问题、进行业务工作的软件25《计算机文化基础》控制台电源外存储器CPUROMRAMROM中程序操作系统应用程序数据操作系统数据程序计算机软件工作过程(1)计算机软件工作过程?应用程序26《计算机文化基础》计算机软件工作过程(2)CPU等待用户输入CPU接受用户输入用户键入命令CPUCPUCPUCPUCPU分析用户输入寻找该命令的程序CPU将该命令程序装入内存CPUCPU命令开始工作完成工作操作系统应用程序计算机软件工作过程?27《计算机文化基础》计算机系统(小结)计算机系统运算器控制器存储器输入设备输出设备系统软件应用软件中央处理机(CPU)主机外部设备(外设)硬件系统:由电子、机械和光电元件等组成软件系统:计算机运行所需的程序及文档☆“存储程序”工作原理冯.诺依曼(Vonneumann)28《计算机文化基础》一、信息和数据的概念0.2信息表示与处理病历卡上记载病人的体温39oC是数据。数据39oC本身是没有意义的。当数据以某种形式经过处理、描述或与其它数据比较时,才能成为信息。某个病人的体温是39oC,这才是信息,信息是有意义的。•信息各种事物的变化和特征的反映•数据信息的载体。例如:数值、文字、语言、图形、图像等。29《计算机文化基础》一、信息和数据的概念有两类数据:1、数值数据:如+15、-17.6;2、非数值数据:如字母(A、B……)、符号(+、&……)、汉字,也叫字符数据、声音、图像等。存储在计算机中的信息都是采用二进制编码形式。0.2信息表示与处理30《计算机文化基础》二、计算机为什么采用二进制?0.2信息表示与处理二进制优点:物理上容易实现,运算简单,可靠性、通用性强自然界中具有两个固定状态的物理量很多,例如:电流的有无、电压的高低等。31《计算机文化基础》101001010.2信息表示与处理数值十/二进制转换西文ASCII码汉字输入码/机内码转换声音、图像模/数转换二/十进制转换西文字形码汉字字形码数/模转换内存输入设备输出设备数值西文汉字声音、图像32《计算机文化基础》一、常用的各种进位制及表示•进位计数的方法即数制•在采用进位计数的数字系统中,如果只用r个数码,则称其为基r数制(Radix-rNumberSystem)或r进制,r便称为该数制的“基数”(Radix)1、二进制:数码0,1基2表示形式B2、八进制:数码0,1,…,7基8表示形式O3、十进制:数码0,1,…,9基10表示形式D4、十六进制:数码0,1,…,9,A,B,C,D,E,F基16表示形式H如:100111O,1011D,1011001BH,1011DH,1011B(100111)B(780)D(1289ABC)H0.2.1数的进位制概念:数码、基数、位权33《计算机文化基础》二、不同进制之间的转换1.r进制转化成十进制an...a1a0.a-1...a-m(r)=an*rn+…+a1*r1+a0*r0+a-1*r-1+...+a-m*r-m10101(B)=1×24+0×23+1×22+0×21+1×20=24+22+1=21101.11(B)=22+1+2-1+2-2=5.75101(O)=82+1=6571(O)=78+1=57101A(H)=163+16+10=41220.2.1数的进位制34《计算机文化基础》2.十进制转化成r进制整数部分:除以r取余数,直到商为0,余数逆序排列。小数部分:乘以r取整数,整数顺序排列。例如,将一个十进制数108.375转换为二进制数0.2.1数的进位制X.Y=an...a1a0.a-1...a-m(r)X=an*rn+…+a1*r1+a0*r0Y=0.a-1*r-1+...+a-m*r-m35《计算机文化基础》108.375D=1101100.011B0.2.1数的进位制36《计算机文化基础》十进制整数转换成八进制整数的方法是:除8取余法。十进制整数转换成十六进制整数的方法是:除16取余法。例如,将十进数108转换为八进制整数和十六进制整数的演算过程分别如图(a)和图(b)所示。0.2.1数的进位制37《计算机文化基础》一、机器数与原码、补码和反码表示机器数:用“0”表示正数,“1”表示负数,其余位仍表示数值。把在机器内存储的正、负号数字化的数称为机器数。二、定点数和浮点数1.整数的表示——定点数2.实数的表示——浮点数0.2.2数值数据在计算机内的表示符号位,“0”表示正、“1”表示负10