C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章

上传人:E**** 文档编号:89368046 上传时间:2019-05-24 格式:PPT 页数:137 大小:1.35MB
返回 下载 相关 举报
C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章_第1页
第1页 / 共137页
C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章_第2页
第2页 / 共137页
C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章_第3页
第3页 / 共137页
C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章_第4页
第4页 / 共137页
C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章_第5页
第5页 / 共137页
点击查看更多>>
资源描述

《C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章》由会员分享,可在线阅读,更多相关《C程序设计 第三版 教学课件 ppt 作者 荣政 第1-5章 第1章(137页珍藏版)》请在金锄头文库上搜索。

1、第一章 C语言基础,1.1 计算机组成 1.2 数据表示和数制 1.3 算法 1.4 编程语言和编译 1.5 C语言的发展简史与优点 1.6 C语言的定义 1.7 C语言的使用 1.8 C程序举例 习题,1.1 计 算 机 组 成 如今计算机已经渗透到生活的方方面面,可谓无孔不入、无所不在。作为生活在计算机时代的读者,这种现代化的成长经历或许会让你对计算机有一个感性的认识。但是本书并不关心计算机本身,不过了解一些简单的计算机知识将有助于你理解程序是怎样在计算机中运行的。,计算机是一种可以输入、存储、处理和输出各种数据的机器。这些机器可以接收、存储、处理和输出信息,而且能够处理各种各样的数据:

2、数字、文本、图像、图形、声音等等。 构成计算机系统的各种设备(如键盘、屏幕、鼠标、磁盘、内存、光盘和处理器)称为硬件。它们是有形的,可触摸得到的。现代计算机是一种通用的机器,可以完成各种各样的任务。为实现这些通用的功能,计算机必须是可编程的。也就是说需要给计算机提供一组指令来控制计算机解决特定问题所需要的各个具体步骤,这组指令称为计算机程序或者软。正是软件和硬件的互相配合才使得完成各种计算成为可能。,从小小的计算器到国家气象局天气预报的巨型计算机,其基本组成都是相同的。图1.1 给出了现今计算机系统的基本组成部件: 中央处理单元(CPU)、内存、总线、辅助存储设备(磁盘等)、输入/输出(I/O

3、)设备(鼠标、键盘等)。,图 1.1 计算机的基本组成,1. 主存储器 每当计算机执行一个程序,计算机必须以某种方式存储程序代码本身和计算中所涉及的数据。通常计算机中可以存储和获取信息的硬件设备都被认为是存储设备。但是只有程序运行时所使用的存储设备才称得上是主存储器,也就是我们通常所说的内存。,内存是一些有序排列的存储单元,这些存储单元包含在由集成电路组成的硅芯片当中,因此其工作效率非常高,使得CPU可以快速访问其中的内容。各个内存存储单元既可以保存数据,也可以保存指令,如图1.2所示。现代计算机内存由一片特殊的集成电路芯片RAM来实现。RAM代表随机访问存储器,允许程序在任何时间访问任何的内

4、存单元。RAM具有易失性,需要持续的电源以保存所存储的数据,因此,一旦断电会导致所有已经存储的数据丢失。,图 1.2 内存中的程序和数据,2. 辅助存储器 除内存外,计算机还需要其它存储器。这主要是因为: 第一,计算机需要永久地或者半永久地保存一些信息,以便在计算机掉电或关机后还能够再使用这些信息; 第二,通常计算机需要存储远大于内存容量的信息。图1.3是一些经常使用的辅助存储设备和存储介质。由图可知,访问辅助存储单元中的信息要比访问主内存中的信息慢得多,但辅助存储单元的单位成本比主内存的单位成本低得多。,图 1.3 不同存储器关系图,3. 中央处理单元(CPU) 中央处理单元(Central

5、 Processing Unit,CPU)是计算机的大脑,是硬件系统的核心。它执行实际的计算并控制整个计算机的操作。现代计算机的CPU位于采用大规模集成电路工艺制成的芯片(又称微处理器芯片)当中,包括两个主要部分:算术逻辑单元和控制单元。CPU当前的指令和数据都临时存储在称为寄存器的超高速存储单元中。 CPU中的控制单元(Control Unit,CU)负责从存储器中取出指令,并对指令进行译码;根据指令的要求,按时间的先后顺序,负责向其它各部件发出控制信号,保证各部件协调一致地工作,一步一步地完成各种操作。控制单元(CU)主要由指令寄存器、译码器、程序计数器、操作控制器等组成。,CPU中的算术

6、逻辑单元(Arithmetic Logic Unit,ALU)对计算机数据进行加工处理,包括算术运算(加、减、乘、除等)和逻辑运算(与、或、非、异或、比较等)。 ALU使用寄存器来存取正在处理的数据,使用称为累加寄存器的专用寄存器临时保存运算或比较的结果。图1.4显示了CPU如何处理将4和5相加的这条指令。 首先,控制器将要处理的数据(本例中为4和5)从RAM送至ALU中的寄存器;接着控制单元给ALU发送一个信号,指示ALU把两个数相加;然后ALU将结果(本例中为9)存储到累加寄存器中;最后控制单元把累加寄存器中的数据发送到RAM,这样数据就可以输出、存盘或者进行其它处理了。,图 1.4 CP

7、U如何处理两个数相加,4. 总线 总线(Bus)是一些贯穿整个计算机系统的电子管道,是计算机的神经系统,用于在CPU和计算机的其它设备之间传输信息。微型计算机硬件结构最重要的特点是总线结构。它将信号线分成三大类,并归结为数据总线(Data Bus)、地址总线(Address Bus)和控制总线(Control Bus)。这种结构很适合计算机部件的模块化生产,促进了微型计算机的普及。,5. 输入单元 为了使用计算机,我们必须通过某种方式把数据送入计算机或者从计算机中得到数据。所有的输入/输出设备都通过一个控制器或者适配器连接到I/O总线。控制器本身就是输入/输出设备或者系统主板上的芯片组,而适配

8、器则是一种必须插到主板扩展插槽上的接口卡。 输入单元是计算机的感知器,用于从输入设备(键盘、鼠标)获取信息。键盘(Keyboard) 是最常见的输入设备。标准键盘上的按键排列可以分为三个区域:字符键区、功能键区和数字键区(数字小键盘)。,6. 输出单元 输出单元是计算机的受动器,用于输出信息到屏幕、打印机或者控制其它设备。显示器(Display)是微型机不可缺少的输出设备,用户通过它可以很方便地查看送入计算机的程序、数据、图形等信息及经过计算机处理后的中间结果、最后结果。显示器是人机对话的主要工具。,1.2 数据表示和数制 1.2.1 数据表示 计算机只能识别“0”和“1”。 那么,计算机如何

9、在存储器中用“0”和“1”来表示上面的这些数据呢? 这就是本小节数据表示需要解决的问题。 正如1.1节所讨论的,计算机是处理数据的机器。由于数据有各种各样的表示形式,例如,数、文字、图像、音频和视频等,要为每种不同的数据使用不同的计算机来处理,显然 是不切实际的和不经济的。有效的解决办法就是使用一种统一的数据表示方法。所有类型的数据输入到计算机内部以后都被转换成一种统一的表示格式,这种统一的表示格式就是比特模式(Bit Pattern)。,在讨论比特模式之前,必须先定义什么是比特(bit)。一个比特(二进制数字)是计算机存储数据所使用的最小单元,它要么是0,要么是1。一个比特也表示了一台设备只

10、能取两种状态之一。例如,开关只能是开(On)或者关(Off)。因此,一个开关可以存储一个比特。现在,计算机使用大量的两种状态的设备来存储数据。 单个比特无法解决数据的表示问题。对于大数、文本、图像等数据,我们需要使用比特模式,或比特序列来存储。图1.5给出了由16个比特组成的比特模式。它是0和1的组合。这意味着需要16个电子开关来存储这个比特模式。,图 1.5 比特模式,具体到存储器内所保存的某个比特模式代表什么含义,则是程序的责任所在。例如,比特模式“01000001”我们既可以理解为大写字母“A”,又可以理解为整数65。但不管怎样,有了比特模式,我们就可以用它来表示各种不同的数据。例如,常

11、见的英文字母符号就可以用不同的比特模式来表示。我们可以把字符串“BYTE” 分别用四种不同的比特模式来表示, 如图1.6所示。,图 1.6 使用比特模式表示字母,我们也可以使用比特模式来表示一张图片上某个像素点的颜色,例如可以用三种比特模式来分别表示一个像素点的红色(R)、绿色(G)和蓝色(B)的强度,如图1.7所示。,图 1.7 像素颜色的比特模式表示,一般,长度为8的比特模式我们称之为一个字节(Byte)。这8个比特总共有256(28)种不同的开-关条件组合,从全关00000000到全开11111111。例如,字母“A”的8比特表示为01000001,星号“*”的8比特表示为0010101

12、0。 然而计算机怎么知道比特值01000001表示字母“A”呢? 当用户敲击键盘的“A”时,系统就会从这个特定的键发送一个信号到内存里,并设置内存中的一个字节的比特值为01000001。接下来用户就可以任意地对这个字节进行操作,甚至把字母“A”输出到显示器或者打印机上,如图1.8所示。,图 1.8 字母“A”的输出,内存中的每一个字节都有一个惟一的地址。由于计算机只能区分0和1比特,因此其工作模式属于基2计数系统,我们称之为二进制系统。事实上,词“bit”来自于“Binary digIT” 的缩写。 一个字节当中的比特可以按照从右往左的顺序对它进行0到7的编号。图1.9所示表示对字母“A”的8

13、个比特进行编号。最左边的比特位我们称之为最高有效位(Most Significant Bit,MSB),而最右边的比特位称为最低有效位(Least Significant Bit,LSB)。,图 1.9 比特位的编号,1.2.2 数制 数制是指用一组固定的数字和一套统一的规则来表示数目的方法。其中两个最基本的概念是: 基数(Radix):一个计数制所包含的数字符号的个数称为该数制的基数,通常用R表示,如二进制的R为2。 位值(权):任何一个R进制的数都是由一串数码表示的,其中每一位数码所表示的实际值大小,除数码本身的数值外,还与它所处的位置有关,由位置决定的值就叫位值(或称权,Position

14、al Value)。位值用基数R的i次幂(Ri)表示。,日常生活采用的是十进制数制,它由0、1、2、3、4、5、6、7、8、9共10个数字符号组成, 数字符号在不同的数位上表示不同的数值,每个数位均逢十进一。十进制数的基数为10,位权为10的指数次幂。 二进制数使用“0”和“1”这两个数字符号,遵循“逢二进一”的原则。例如:0+0=0;1+0=0+1=1;1+1=10;+10=11;1+11=100。在计算机中,一个二进制位又称为一个比特(Bit),是表示数据的最小单位。二进制数的基数为2,位权为2的指数次幂。 八进制数的示数符号有8个:0、1、2、3、4、5、6、7,“逢八进一”,它的基数为

15、8,位权为8的指数次幂。,十六进制数的示数符号有16个:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,“逢十六进一”,它的基数为16,位权为16的指数次幂。 八进制数和十六进制数均是为了方便书写和阅读时使用的,在计算机内部实际上所有的数均是二进制数。 表1.1给出了十进制数字015所对应的二、八、十六进制数。,表1.1 十进制数与二、 八、 十六进制数对照表,1.2.3 数制之间的转换 通常人们习惯在一个数的后面加上一个字母B、D、H、O来区分其前面表示的一个数用的是什么数制。例如: 101.01B表示二进制数101.01;A2BH表示十六进制数A2B等。 1) 非十进制数转

16、换成十进制数 利用按权展开的方法,可以将任意数制的一个数转换成十进制数。 例如:将二进制01000001转换成十进制数如下:,其转换结果是:01000001B=027+126+025+024 +023+022+021+120=64+1=65D。 假定要将125.7O转换成十进制数,其转换过程如下:,其转换结果是:125.7O=182+281+580+781= 64+16+5+0.875=85.875D。 在八进制中,小数点左边的那位的权是1(80),再左边一位的权是8(81),依此类推。而小数点右边那些位的权,则是用基数(在此为8)去除,因此紧跟八进制小数点右边那位的权是1/8,即0.125,下一位是1/64,即0.015625。,2) 十进制数转换成二进制数 把十进制数转换成二进制数的方法是采用“除二取余”法。即把十进制数除以2,所得余数作为二进制数的最低位数,然后再除以2,所得余数作为次低位数,如此反复,直到商为零为止。例如把十进制数23转换为二进制数的过程如图1.10所示,由此可得, 23D=(10111)B。,图 1.10 十进制数

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号