欢迎来到乐乐文库,课件爱好者! | 帮助中心 精品ppt课件,ppt课件精品!
乐乐文库,课件爱好者
首页 乐乐文库,课件爱好者 > 资源分类 > PPT文档下载

1 .计算机基础.ppt

  • 资源大小:1.11MB        全文页数:75页
  • 资源格式: PPT        下载权限:游客/注册会员/VIP会员    下载费用:15金币 【人民币15元】
游客快捷下载 游客一键下载
会员登录下载
下载资源需要15金币 【人民币15元】

邮箱/手机:
温馨提示:

支付成功后,系统会根据您填写的邮箱或者手机号作为您下次登录的用户名和密码(如填写的是手机,那登陆用户名和密码就是手机号),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦;
支付方式: 支付宝   
验证码:   换一换

 
友情提示
2、本站资源不支持迅雷下载,请使用浏览器直接下载(不支持QQ浏览器)
3、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

1 .计算机基础.ppt

2020/3/21,主讲教师四川大学计算机学院 陈良银,1,主讲教师*** 个人主页***,C语言程序设计(C99版),四川大学计算机学院,四川大学计算机学院,2020/3/21,主讲教师四川大学计算机学院 陈良银,2,教材C语言程序设计(C99版),陈良银 游洪跃 李旭伟 主编 李志蜀 唐宁九 李 涛 主审 清华大学出版社 2006年9月出版,2020/3/21,主讲教师四川大学计算机学院 陈良银,3,本书内容,第1章 基础知识 第2章 C语言的基本要素 第3章 变量名、数据类型、运算符和表达式 第4章 C程序基本控制结构 第5章 函数 第6章 数组和指针 第7章 递归 第8章 结构、联合、位运算和枚举类型 第9章 预处理命令 第10章 文件 第11章 高级话题 第12章 C89 Vs C99 实验 (待安排),,2020/3/21,主讲教师四川大学计算机学院 陈良银,4,,数据在计算机内的表示,本章主要内容,,,,,,,,,,,,,,,ARM Vector Table,,,FIQ,IRQ,Reserved,Data Abort,Prefetch Abort,Software Interrupt,Undefined Instruction,Reset,,1,3,2,计算机语言,计算机系统及基本工作原理,4,算法和数据结构,5,C语言标准,6,编程风格介绍,2020/3/21,主讲教师四川大学计算机学院 陈良银,5,本章的节本要求,了解计算机的基本组成结构及其基本工作原理 熟悉内存组织结构、内存地址概念 熟悉数据在存储器中的布局结构 深入理解计算机基本工作原理、内存地址概念、C程序数据分区等基本内容 方法从总体结构入手、深入结构细节,2020/3/21,主讲教师四川大学计算机学院 陈良银,6,1.1 计算机系统,计算机系统包含了硬件系统和软件系统两大部分。 计算机硬件系统主要由运算器、控制器、存储器、输入设备和输出设备五大部件组成。 计算机软件系统又分为系统软件和应用软件两大部分。,2020/3/21,主讲教师四川大学计算机学院 陈良银,7,图1.1 计算机系统基本组成,2020/3/21,主讲教师四川大学计算机学院 陈良银,8,1.1.1 计算机的硬件系统,硬件 Hardware是计算机的物理实体部分 。 计算机处理信息的过程有点类似人的大脑处理信息的过程。 计算机五大部件之间是否也可以通过什么“线”来相互传递信号啦 地址线 传递地址信号、数据线 传递数据信号和控制线 传递控制信号 。,2020/3/21,主讲教师四川大学计算机学院 陈良银,9,,把计算机系统的所有地址线统称为地址总线,所有数据线统称为数据总线,所有控制线统称为控制总线。 而地址总线、数据总线和控制总线合在一起统称为计算机系统总线。 计算机五大部件之间正是通过这些总线 地址总线、数据总线和控制总线相互连接、相互联系的。,2020/3/21,主讲教师四川大学计算机学院 陈良银,10,,2020/3/21,主讲教师四川大学计算机学院 陈良银,11,,为什么计算机需要以上三种总线啦这必须吗 输入设备输入设备将信息从外界输入到计算机中 。 控制器控制器实际上就是计算机的指挥中心 。 运算器运算器的主要工作就是完成算术、逻辑运算 。 存储器存储器是计算机的记忆装置 。 输出设备输出设备是计算机的一个执行装置 。,2020/3/21,主讲教师四川大学计算机学院 陈良银,12,,计算机如何进行32这样的简单操作 控制信号就是通过控制总线传递的。 数据信号通过数据总线进行传递。 那么计算机为何需要地址信号地址信号起什么作用啦 没有地址信号线,计算机就不可能准确找到某一个内存单元。,2020/3/21,主讲教师四川大学计算机学院 陈良银,13,,为了区分不同的存储单元,每个存储单元都有一个独一无二的编号,这个编号实际上就是该存储单元的地址。 计算机的内存空间主要分为三个区系统程序区、应用程序区和数据区,其中数据区又分为系统程序数据区和应用程序数据区两类。,2020/3/21,主讲教师四川大学计算机学院 陈良银,14,图1.3 C语言变量的存储类型与硬件的关系,2020/3/21,主讲教师四川大学计算机学院 陈良银,15,,在一个通用计算机系统中,以上三种总线缺一不可。 把计算机的内存储器的每一个存储单元从上向下依次叠放起来。把存储器的存储单元按照编号顺序排成一竖排。,2020/3/21,主讲教师四川大学计算机学院 陈良银,16,,2020/3/21,主讲教师四川大学计算机学院 陈良银,17,,什么是“位”呀 其实位是计算机信息表示的最小单位。计算机是通过存储0和1的不同编码组合来表示信息的。 0和1的不同组合就是编码。 由于每一位要么存放0、要么存放1,只有这两种选择,一共有8次选择的可能,所以总共有256种不同的组合,也就是说0x20000000存储单元就可以表示256种不同的信息。,只有0和1,2020/3/21,主讲教师四川大学计算机学院 陈良银,18,,8位这其实就是“字节”的概念,计算机里的字节固定就是8位,一个字节占据一个存储单元。 绝大部分计算机的地址编码也是按照字节来进行编号的,也就是说一个地址编码对应了一个字节存储空间 8位。 存储单元的编号也就是地址编号(即地址编码)。,1字节=8位,2020/3/21,主讲教师四川大学计算机学院 陈良银,19,,计算机系统地址位数决定了其存储空间的大小。 地址系统只有20位,则内存单元只有1M字节 。 地址系统有32位,则内存单元只有4G字节 。,地址总线位数决定 地址编码范围。,2020/3/21,主讲教师四川大学计算机学院 陈良银,20,,计算机系统的地址位数与C程序的指针长度密切相关。 指针变量的意思很简单就是一个用来存放编号 也就是内存地址即指针值的变量,也就是说用来存放地址编号的变量叫指针变量。 指针变量(指针变量就是用来存放地址的变量)所占用的存储空间大小就是地址编号的位数 。,地址总线位数决定 地址指针变量长度,2020/3/21,主讲教师四川大学计算机学院 陈良银,21,1.1.2 计算机的软件系统,软件 Software是计算机实现各种功能的程序、文档和数据的集合。 系统软件包括操作系统和各种语言处理软件等 。 应用软件主要包括各个行业或者领域的功能处理软件。,2020/3/21,主讲教师四川大学计算机学院 陈良银,22,图1.5 计算机软件系统,2020/3/21,主讲教师四川大学计算机学院 陈良银,23,1.2 计算机的基本工作原理,冯诺依曼Neumann定义了现代计算机的基本结构,其特点是 硬件系统由五大部件组成,各部件具有独立的基本功能。 采用二进制形式表示数据和指令。二进制用来表示信息的基本符号只有两个0和1。,2020/3/21,主讲教师四川大学计算机学院 陈良银,24,存储程序的基本原理,计算机在执行程序和处理数据时必须首先将程序和数据存储在主存储器中,计算机工作时自动高速地从主存储器中取出指令并加以分析、执行。,存储程序、自动执行,2020/3/21,主讲教师四川大学计算机学院 陈良银,25,图 1.6 图灵机的基本组成结构,读写头,存储带,2020/3/21,主讲教师四川大学计算机学院 陈良银,26,,地址编号,存储单元,存储内容,2020/3/21,主讲教师四川大学计算机学院 陈良银,27,,根据存储程序的基本原理,计算机执行的指令需要预先存放在计算机的存储器中,也就是内存储器中。 计算机程序的指令系列按照地址顺序依次存放在这些存储单元中。 地址也就是计算机存储单元的编号。 存储器的每个地址对应了一个唯一的存储单元,反过来,每个存储单元都对应了一个唯一的地址。,2020/3/21,主讲教师四川大学计算机学院 陈良银,28,,计算机工作的过程就是不断地从这些存储单元取出指令、分析指令并执行指令的过程。 计算机究竟应该从哪一个存储单元取指令则完全依赖于计算机CPU内的程序计数器值,程序计数器是CPU内的一个特殊计数器,其中存放的就是将要取出的下一条指令的存储单元地址。,表示了读写头的位置,2020/3/21,主讲教师四川大学计算机学院 陈良银,29,,程序对某一个变量的操作实际上就是对这个变量所在的存储单元的操作。 C程序中的地址概念实际就是变量所在的存储单元的地址编号。 不同的变量可能占据不同个数的存储单元,存放变量的第一个存储单元的地址就是该变量的地址。,变量的地址等于“首地址”,2020/3/21,主讲教师四川大学计算机学院 陈良银,30,1.2.3 C程序的内存分区,计算机的存储器是分段组织的 。 分成程序段 程序区和数据段 数据区 。 数据存储区分为了静态数据存储区和动态数据存储区两个部分,分别简称静态存储区和动态存储区。 动态存储区又分为“堆”和“堆栈”两种结构形式。,2020/3/21,主讲教师四川大学计算机学院 陈良银,31,,“堆栈”空间大小有限,采用“先进后出”的方式管理其数据,而且C编译器或操作系统自动管理该部分空间,且其大小有限; 而“堆”空间则可以很大,它的组织方式比较灵活,需要程序员自己管理。 堆栈的效率比堆的效率明显高很多 。,2020/3/21,主讲教师四川大学计算机学院 陈良银,32,,C编译器将计算机内存分配方式分为以下三种 1. 在静态存储区中分配外部变量、static变量 。 2. 在动态存储区的“堆栈”上分配。 3. 在动态存储区的“堆”上分配,亦称动态内存分配。程序员用malloc 函数申请堆内存,用free 函数释放堆内存。,2020/3/21,主讲教师四川大学计算机学院 陈良银,33,,2020/3/21,主讲教师四川大学计算机学院 陈良银,34,图1.8 内存数据区分区,2020/3/21,主讲教师四川大学计算机学院 陈良银,35,1.3 计算机语言,计算机语言分为三类机器语言、汇编语言和高级语言。 机器语言是计算机能够直接识别和处理的二进制机器指令;“01010101” 。 汇编语言是符号化了的机器语言,也就是用一些符号来表示二进制机器语言;“MOV AX,BX;” 。 而高级语言则是更符合人类思维特性的抽象语言。 “y x*x;”。,2020/3/21,主讲教师四川大学计算机学院 陈良银,36,1.4 数据在计算机内的表示,在计算机中,用0和1的不同组合来表示不同的信息。 00001001”究竟是表示1、2或者3啦为什么它就表示的这个数啦这涉及到进位计数制和编码的问题。 进位计数制就是用一组特定的数字符号按照一定的进位规则来表示数的计数方法。,2020/3/21,主讲教师四川大学计算机学院 陈良银,37,,十进制则采用了“0”、“1”......“9”这10个符号。 十六进制就有16个基本符号“0”、“1”......“9”、“A”、“B”、“C”、“D”、“E”、“F”。 八进制表示,有8个基本符号,分别是“0”、“1”......“7”。 涉及“基”和“位权”的概念。,2020/3/21,主讲教师四川大学计算机学院 陈良银,38,,在C语言中,十六进制表示以0x开头,八进制以0开头,十进制以非0数字开头。 比如 0x1777 十六进制表示、 01777 八进制表示、 1777 十进制表示。,2020/3/21,主讲教师四川大学计算机学院 陈良银,39,,所谓“基”,就是在一种进位计数制中所使用的基本符号的个数。 比如 0x88 正确的十六进制表示、 088 错误的八进制表示、 8FF 错误的十进制表示。,2020/3/21,主讲教师四川大学计算机学院 陈良银,40,,“位权”实际上就是在某种进制的编码中,某一个位置的基本符号为1时,它所代表的数值的大小。 8648.72D 8103610241018100 710-1210-2 在这个数中,从左至右的各位数字由于所处位置不同,它们所代表的数值的大小也不相同,2020/3/21,主讲教师四川大学计算机学院 陈良银,41,,在C语言以外的场合,通常可以用下标2、8、10、16或字母B、O、D、H分别表示二进制、八进制、十进制、十六进制数, 如 11001B、354O、1224D、4DEH及101012、1028、79010、B5B. CD16等。,为便于区分一般用Q表示,2020/3/21,主讲教师四川大学计算机学院 陈良银,42,,2020/3/21,主讲教师四川大学计算机学院 陈良银,43,不同进位计数制之间的转换,R进制数转换为十进制数 1001.11 23 20 2-1 2-2 9.75 0227 282 281 780 151 0x3AB 3162 A161 Bl60 3162 10161 11160 939,2020/3/21,主讲教师四川大学计算机学院 陈良银,44,,十进制数转换为R进制数 125 1111101B,转换过程如图1.10所示 125 0175,转换过程如图1.10所示 125 0x7D,转换过程如图1.10所示,2020/3/21,主讲教师四川大学计算机学院 陈良银,45,图1.10 十进制数转换为二进制数、八进制数、十六进制数,2020/3/21,主讲教师四川大学计算机学院 陈良银,46,二进制数与八进制、十六进制数之间的转换,分组010 100 111 101 代值 2 4 7 5 结果10100111101B 02475 小数分组,不足三位,必须补0 010 100 101 . 100 100 2 4 5 . 4 4,2020/3/21,主讲教师四川大学计算机学院 陈良银,47,,1100 0101 1010B 0x0C5A 111 1111.101B 0x7F.A 0x0ABC 1010 1011 1100 0x0D65.4A 1101 0110 0101.0100101B,2020/3/21,主讲教师四川大学计算机学院 陈良银,48,数值信息在计算机中的表示,数据分为数值型数据和非数值型数据两大类 。 数值型数据是指能进行算术运算 加、减、乘、除四则运算的数据 。 非数值数据是指文字、图像等不能进行算术运算的数据。 如何表示啦实际上就是根据一定的约定来表示,这种约定就是表示数值大小的编码规则。,2020/3/21,主讲教师四川大学计算机学院 陈良银,49,,机器数本身所具有的实际数值称为真值。 同一个机器数按照编码约定的方式不同可能具有不同的真值。 大家一定要掌握某个数在计算机的机内表示及其运算规则。,相同的机器数、不同的真值,2020/3/21,主讲教师四川大学计算机学院 陈良银,50,原码,原码就是在真值的基础上加上符号位即可。 十进制 二进制真值 原码 94 1011110 01011110 -49 -0110001 10110001,2020/3/21,主讲教师四川大学计算机学院 陈良银,51,反码,对于正数,其反码与原码形式相同;对于负数,将原码中符号位以外的各位数字取反即得补码 即“0”变为“1”,“1”变为“0”。例如 十进制 二进制真值 原码 反码 114 1110010 01110010 01110010 –89 –1011001 11011001 10100110,2020/3/21,主讲教师四川大学计算机学院 陈良银,52,补码,对于正数,其补码与原码形式相同;对于负数,在反码的基础上,末位再加1就得到负数的补码。例如 十进制 二进制真值 原码 反码补码 114 1110010 01110010 01110010 01110010 –89 –1011001 11011001 1010011010100111,2020/3/21,主讲教师四川大学计算机学院 陈良银,53,基本表示,2020/3/21,主讲教师四川大学计算机学院 陈良银,54,定点数和浮点数,机器数又分为定点数和浮点数两种 。 定点表示是将小数点位置约定在一个固定的位置上。通常有以下两种约定定点整数和定点小数。 浮点数的小数点位置是不固定的,可以浮动。,2020/3/21,主讲教师四川大学计算机学院 陈良银,55,图1.11 定点整数和定点小数的表示,2020/3/21,主讲教师四川大学计算机学院 陈良银,56,不同类型的数在计算机中所占的字节数,变量的数据类型就决定了变量在内存单元中所占据的字节数,也决定了其取值范围。 folat 浮点型 4个字节 double 双精度浮点型 8个字节 char 字符型 1个字节 short 短整型 2个字节 long 长整型 4个字节 int 整型 可能2字节,也可能4字节 随环境而不同。,决定长度,2020/3/21,主讲教师四川大学计算机学院 陈良银,57,二进制算术运算和逻辑运算,算术运算即加、减-、乘*、除/、取余五种运算。 1 1 0 1 1 0 被加数 1 0 1 1 1 0 加 数 1 1 1 1 1 进 位 1 1 0 0 1 0 0 和 数,,2020/3/21,主讲教师四川大学计算机学院 陈良银,58,与运算,2020/3/21,主讲教师四川大学计算机学院 陈良银,59,或运算,2020/3/21,主讲教师四川大学计算机学院 陈良银,60,非运算,2020/3/21,主讲教师四川大学计算机学院 陈良银,61,异或运算,2020/3/21,主讲教师四川大学计算机学院 陈良银,62,位运算,2020/3/21,主讲教师四川大学计算机学院 陈良银,63,ASCII码,ASCII码是美国国家标准信息交换码 American national Standard Code for Information Interchange的简称,是目前国际上使用最广泛的计算机字符编码。 ASCII码的编码规则为每个字符用7位二进制数 b6b5b4b3b2blb0来表示 如表1.9所示,7位二进制共有128种状态 27128,可表示128个字符,7位二进制编码的取值范围为0000000~1111111。,2020/3/21,主讲教师四川大学计算机学院 陈良银,64,,2020/3/21,主讲教师四川大学计算机学院 陈良银,65,1.5 算法和数据结构,程序 = 算法 + 数据结构 对于学习程序设计语言而言,数据结构是很重要的,所有的算法都基于某种结构。 比如当一个艄公想把小羊、大白菜、和狼渡到河对岸的时候 当艄公不在时,狼要吃小羊、小羊要吃大白菜,而艄公的船一次只能够载一样东西,他就会思考如何解决这件事,而他完成这件事的方法和步骤就是算法。,2020/3/21,主讲教师四川大学计算机学院 陈良银,66,,它有以下特点 有穷性一个算法应包含有限的操作步骤而不能是无限的。 确定性算法中每一个步骤应当是确定的,而不应当是含糊的、模棱两可的。 有零个或多个输入。 有一个或多个输出。 有效性算法中每一个步骤应当能有效地执行,并得到确定的结果。,2020/3/21,主讲教师四川大学计算机学院 陈良银,67,,数据结构主要研究数据的组织方式、结构关系以及相应的操作方法。 算法的设计与实现,依赖于数据的逻辑结构与存储结构,数据结构的选择直接决定了算法的质量,而算法则决定了程序的质量。,2020/3/21,主讲教师四川大学计算机学院 陈良银,68,传统流程图表示算法,2020/3/21,主讲教师四川大学计算机学院 陈良银,69,1.6 C语言标准简介,C语言的发明者是Dennis Ritchie,他在19世纪70年代发明了C语言。 1989 年12 月14 日正式被批准为ANSX3.159-1989。一年以后, 该标准也被ISO(国际标准化组织)接收 ,这就是标准C,通常1989年版的标准称为C89标准。 1994年, 技术勘误1 TC1 修正了C89标准中40 处地方。,2020/3/21,主讲教师四川大学计算机学院 陈良银,70,,1999年的C99标准的产生。 C99保持了几乎所有C89的特征 。,2020/3/21,主讲教师四川大学计算机学院 陈良银,71,,C89具有32个关键字,而C99增加了5个关键字,达到37个关键字。C99增加的5个关键字为_Bool、_Imaginary、restrict、_Complex和inline。 另外,所有的C编译器都带有实现一些常用功能的标准库函数。,2020/3/21,主讲教师四川大学计算机学院 陈良银,72,图1.14 C程序的存储区分区概念,2020/3/21,主讲教师四川大学计算机学院 陈良银,73,1.7 C和C的不同,C是以C语言为基础的面向对象程序设计语言,对于C89而言,C实现了它的全部特性,因为C标准的制定包容了C89的全部内容。而对于C99而言,部分C99特性,C并未包括。 还有一点需要注意的是,C语言源文件的扩展名是.c,而不是.cpp。如果后缀(即扩展名)为.cpp,那么编译器将按照C的要求编译文件。因此,C语言学习者在使用C工具学习C语言时要注意将源文件的后缀命名为.c。,2020/3/21,主讲教师四川大学计算机学院 陈良银,74,1.8 C语言编程风格简介,本书在编程风格上主要采用了以下几条 1.采用缩进的格式,源程序书写时一定要采用逐层缩进的格式,让人一望而知各层之间的层次关系; 2.适当的注释,写程序一定要有注释。没有注释的程序,别人不容易读明白。注释的位置亦放置在语句前面或本条语句右侧,不亦放在语句后面,以免误读注释。 3.变量名字应该有一定的自注释性,一望而知其含义等。变量命名首字母小写,函数命名首字母大写,2020/3/21,主讲教师四川大学计算机学院 陈良银,75,,Thanks,The End,

注意事项

本文(1 .计算机基础.ppt)为本站会员(w89153)主动上传,乐乐文库,课件爱好者仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知乐乐文库,课件爱好者(发送邮件至1748365562@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。

关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

站长联系QQ:1748365562
工信部备案号: 鄂ICP备17024083号                 公安局备案号:42118102000213

收起
展开