《计算机和计算机程序.ppt》由会员分享,可在线阅读,更多相关《计算机和计算机程序.ppt(64页珍藏版)》请在第壹文秘上搜索。
1、1/48第 二 章计算机和计算机程序计算机和计算机程序2/48 本章主要内容计算机是实现算法的有效工具;计算机的基本组成;计算机中存储信息的方法;计算机语言和计算机程序;程序运行环境;程序开发的步骤。计算机和编程基础知识3/482.1计算机是实现算法的有效工具算法是解题的方法和步骤的描述;对于算法(侠义)的实现可以有多种途径;(如心算、计算器、计算尺、算盘等等计算工具来实现算法);由于电子计算机所具有的基本特征(高速度、大容量等),直到目前为止还是实现各种复杂算法的最有效工具 。4/482.1计算机是实现算法的有效工具电子计算机的特点:使用脉冲数字电路,能进行高速数据传输和数据计算(数据处理)
2、任务;(速度上)计算精度高;(如 的精度达到200万位)具有存储信息的能力;由程序控制、全自动运行;(逻辑判断)使用的是二进制数据表示;可靠性高、通用性强。5/482.1计算机是实现算法的有效工具 电子计算机的主要用途: 科学计算; 数据处理; 自动控制; 辅助设计与制造(CAI CAT CAD CAM); 人工智能(Artificial Intelligengce)等等。6/482.2 计算机的基本组成 输 出 设 备 输出 输入 输 入 设 备 运 算 器 存 储 器 控 制 器 7/48用用 户户数据区数据区程程 序序存储区存储区输出设备输出设备输入设备输入设备外部存储设备外部存储设备控
3、制器控制器运算器运算器存储器存储器信息流信息流控制流控制流8/482.2 计算机的基本组成 运算器 运算器或称算术逻辑单元(Arithmetical and Logical Unit-ALU)的主要功能是对数据进行各种运算。它由ALU、通用和专用寄存器组、内部总线组成。(加法器+ 逻辑功能部件逻辑运算) 存储器 存储器(Memory Unit)的主要功能是存储程序和各种数据信息,并能在计算机运行过程中高速、自动地完成程序或数据的存取。根据存储器在系统中的作用,可分为:高速缓冲存储器、内存储器、外存储器。9/482.2 计算机的基本组成控制器控制器(Control Unit)是整个计算机系统的控
4、制中心,它指挥计算机各部分协调工作,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。控制器由以下五个部件组成:1)程序计数器(存放下一条指令地址);2)指令寄存器(存放来自存储器的待执行的指令);3)指令译码器(指令译码,将指令的操作码部分“翻译”成相 应的操作);4)时序部件(产生计算机工作中所需的各种时序信号-节拍);5)微操作部件(控制器的主体:一条指令的执行过程可更进 一步地看做是微操作的产生过程);10/4811/482.2 计算机的基本组成输入设备用来向计算机输入各种原始数据和程序的设备叫输入设备(Input Device)。有文字输入设备、图形输入设备、图像输入设备、
5、语音输入设备等等输出设备从计算机输出各类数据(信息)的设备叫做输出设备(Output Device)。有的设备是:Input and Output(I/O)12/482.2 计算机的基本组成 冯诺依曼计算机的基本工作过程,概括地说就是:存储指令取指令分析指令执行指令再取下一条指令,依次周而复始地执行指令序列的过程。13/482.2 计算机的基本组成14/482.3计算机中存储信息的方法 存储信息的单位: 存储容量:一个存储器能容纳的存储单元总数;一般使用:字(word) 字节 (Bytes) 位(Bit)KB MB GB (吉) TB(太拉)15/482.3计算机中存储信息的方法数制的转换:1
6、) 二进制十进制(1101)2=123 +122 +021 +120 =(13)102) 二进制十六进制、八进制 (111101.111)2(0011 1101.1110)2 (3D.E)16(111101.111)2(111 101 . 111)2 (75.7)8小数部分是2的负次方之和16/48数的多项式表示对于一个k进制的数转换为十进制数:.2211002211kmkmkmkmkmLnnnnk k:基数:基数 m:m:数字(数字(0k-10k-1的数字)的数字) n:n:整数和小数部分的位数整数和小数部分的位数值值25.13212021202121)01.1101(210123217/4
7、82.3计算机中存储信息的方法3) 3) 十进制十进制二进制二进制(53)(53)1010=(110101)=(110101)2 2除取余除取余18/482.3计算机中存储信息的方法(0.375)(0.375)1010=(0.011)=(0.011)2 2乘取整乘取整19/482.3计算机中存储信息的方法非数值领域:ASCII(American Standard Code for Information Interchange )美国信息交换标准代码 。一个字节为8位二进制,一个ASCII码占一个字节的低7位,最高位为规定为0,这样一个字节可表示2的7次方即128种状态,从00000000-0
8、1111111,每种状态与一个ASCII码字符唯一对应,即可表示128个字符,包括26个英文大写字符、26个英文小写字符、10个数字字符、33个标点符号和33个控制符。EBCDIC扩充的二十进制交换码(用于大型机)20/482.4计算机语言和计算机程序为了使人和计算机能进行信息交互而使用的、人机都能理解的特定语言计算机语言。(人机共同语言) 计算机语言的种类: 机器语言; 符号语言;(Symol) 算法语言; 非过程化语言(面向对象的OOP)。21/482.4计算机语言和计算机程序机器语言: 每一类计算机都规定了由若干位二进制信息组成的一条条指令。所有这些指令的集合就是该机器的指令系统。计算机
9、能直接执行这些二进制指令机器指令.全部机器指令的总和就称之为该机器的机器语言。为求解某一实际问题而从指令系统中挑选一些指令组成一个序列就是机器语言程序。22/48B0 07 Mov AL,07B3 03 Mov BL,0328 D8 Sub AL,BLCD 20 Int 2023/482.4计算机语言和计算机程序符号语言:由于机器语言指令的二进制码难以记忆,使用也很繁琐,人们想到使用符号来代替原来的指令的办法符号语言。 一般来说,一条符号语言指令对应一条机器指令。因此,使用符号语言指令编写程序就需要一个翻译工具汇编程序就是来完成这个任务的(也称之为“汇编”或“代真”过程),最后得到的机器指令就
10、是“目标程序”; MOV AX,1000 ADD AX, BX SUB AX, BX24/482.4计算机语言和计算机程序算法语言: 对于机器语言和符号语言都是面向机器的,可移植性较差,属于“低级语言”; 算法语言的表示方式接近自然语言和数学语言,是面向“过程”的语言高级语言; 常用的算法语言: BASIC;FORTRAN;COBOL;PASCAL; C系列;ADA(每种语言都有不同版本)面向过程的语言面向过程的语言25/482.4计算机语言和计算机程序非过程化语言:算法语言是过程化的语言,就是在解题中要详尽规定解题过程的每一步骤,清楚地描述(由程序安排)“做什么”,“怎么做”。现在人们开发出
11、了非过程化语言,就是只要确定“做什么”,计算机就能完成任务。如“打印出我校入学成绩600分以上的学生姓名”LIST ALL FOR 入学成绩=60026/482.4 计算机语言和计算机程序计算机程序 语言:是指全部指令的集合,每一种语言都规定了各自的语法规则以及语用含义。 程序:为解决某一特定问题而用某一种语言编写的指令序列。 它们之间的关系类似于:如:中文语言 一篇中文论文程序27/482.4 计算机语言和计算机程序用计算机语言编程要掌握三个基本概念:语法:掌握严格的语法规则编程,不然编译系 统会给出语法错误。语义:掌握语法成分的含义: Print是打印输出; Write是输出到指定的设备上
12、;语用:要善于利用语法规则中有关规定和语言成分的含义组织程序以达到特定的目的。如怎样得到所需的循环次数,如何得到我要的打印格式正确使用语言问题。都是表示输出28/482.4 计算机语言和计算机程序N.WIRTH指出:“程序就是在数据的某些特定的表示方式和结构的基础上,对抽象算法的具体描述”: 1)对求解一个问题,先应有正确的算法;2)程序处理的对象是数据,数据有自己的特 性,而且它们还有内在联系等。要合理组 织它们就要选择合适的数据结构。3)程序不仅要描述算法,还要描述数据结构算法算法+ +数据结构数据结构= =程序程序理理 解解29/482.4 计算机语言和计算机程序对程序的评价:根据N.W
13、IRTH提出的 “算法+数据结构=程序”的公式来评价一个程序时,除了要求程序的正确性和有效性外,还要求程序具有简明性、可靠性、可修改性、可重用性等特征。30/482.4 计算机语言和计算机程序对于“结构化程序设计”,除了“算法”和“数据结构”外,我们还应该遵循: 算法算法+ +数据结构数据结构+ +结构化方法结构化方法+ +语言工具语言工具结构化程序结构化程序结结构构化化程程序序设设计计的的四四大大要要素素31/482.5 程序运行环境要运行一个程序,除了硬件外,还需要有软件环境的支持。对于语言程序除了有相应的汇编、解释、编译程序外,还必须有操作系统这个最大的、最基本的软件环境的支持。32/4
14、82.5 程序运行环境软件环境:操作系统;编辑程序;翻译程序;装配连接程序硬硬件件操作系统操作系统应用软件层应用软件层33/482.5 程序运行环境 操作系统操作系统是指对计算机系统的硬件资源(CPU、存储器、I/O设备)和软件资源(各种系统软件和应用软件)进行统一指挥、统一管理、统一分配、统一调度的软件系统,是计算机系统正常运行的控制中心,是现代计算机必备系统软件。人们常常将没有操作系统的计算机称之为“裸机”。34/482.5 程序运行环境操作系统分为: 单用户系统(用户独占方式)单用户系统(用户独占方式)批处理方式(多道作业)批处理方式(多道作业)分时系统(多终端系统)分时系统(多终端系统
15、)实时系统(强调响应速度)实时系统(强调响应速度)目前流行的系统:目前流行的系统:UNIXUNIX、WINDOWSWINDOWS、部分、部分DOSDOS35/482.5 程序运行环境 操作系统的功能存储管理存储管理处理机管理处理机管理设备管理设备管理文件管理文件管理进程管理进程管理控制控制CPUCPU每瞬时每瞬时的工作,接受中的工作,接受中断信号,为用户断信号,为用户提供提供CPUCPU处理。处理。有效地管理计算有效地管理计算机的各种设备,机的各种设备,使之有效地工作使之有效地工作合理地为用户分合理地为用户分配存储空间,有配存储空间,有效地管理内存。效地管理内存。管理外存中的程管理外存中的程序
16、和数据,在需序和数据,在需要时及时调入内要时及时调入内存使用。存使用。是指处理机执行是指处理机执行程序对数据进行程序对数据进行处理的全过程所处理的全过程所进行的管理。进行的管理。合理地调度用户合理地调度用户作业,负责组织作业,负责组织和控制作业的运和控制作业的运行,决定什么时行,决定什么时候可以使用处理候可以使用处理机。机。36/482.5 程序运行环境编辑程序 是源程序的建立与修改(修改、插入、删除等)的平台。一般来说可以是一个文字编辑系统。 如:EDLIN EDIT 写字板 WORD等 翻译程序 是一个将符号语言或高级语言翻译成机器语言的程序。有以下三种: 汇编程序; 解释程序; 编译程序;例如例如37/482.5 程序运行环境 汇编程序的功能:将符号语言程序翻译成机器语言程序,它对符号语言源程序逐行扫描,将机器码代替助记符(代真),并进行语法检查。 编译程序的功能:将高级语言程序(算法语言)转换成机器语言程序,具有翻译和查错功能。词法、语法、语义分析、生成目标程序以及优化目标程序等功能。例如38/482.5 程序运行环境 解释程序:也是将高级语言程序转换成机器语言程序,它是边翻译