1、课程简介与目标课程性质: 计算机科学导论 是大家入学后接受的第一门计算机专业基础课程,也是核心课程。课程目标: 通过本课程的学习,使大家对本学科所包括的专业知识体系及课程体系有一个较全面的了解和认识,并为以后的学习打下一个良好的基础;培养大家树立学习专业和以后从事专业的责任感、使命感和自豪感。希望与要求n 思想要求: 考上大学仅仅是事业成功的开始,不能等同是事业的成功,仅仅是万里长征迈出的第一步。n 行为要求: 守纪律,讲文明,做有理想、有抱负的新一代大学生。n 意识要求: “ 教是为了不教,学是为了创新 ” ,创新是人生永恒的主题,不可死读书,读死书。n 学习方法: 书山有路勤为径,学海无涯
2、苦作舟 。希望积极探索适应自己个性特点的、有效的学习方法。n 学习要求: 按时上课、专心听讲、当堂消化、记好笔记、课后复习、完成作业。n 生活建议: 关心集体、互助友爱。第 1章 绪 论 计算机的基本概念(计算机的分类、特点、发展和用途等); 计算机科学与技术学科的定义(学科定义和研究范畴); 计算机科学与技术学科的教育(技术文化背景与教育观念); 计算机科学与技术学科对本科毕业生的基本要求(知识、能力和素质); 信息社会的挑战(信息社会特征、社会对计算机人才的需求); 计算机科学与技术学科的知识体系。本章学习目标:通过本章的学习,应理解计算机的基本概念、发展过程和计算机学科的研究范畴,了解信
3、息化社会的特征以及信息化社会对计算机人才的基本需求,明确今后学习的目标和要求,树立作为一个未来计算机科学技术工作者应担负的责任和使命。1.1 计算机的基本概念v 什么是计算机n 计算机是一种能够按照事先存储的程序,自动、高速地对数据进行输入、处理、输出和存储的系统。v 计算机系统的组成 一台完成的计算机系统由它的硬件系统和软件系统组成 . 硬件系统 /简称硬件: 由光电的、磁性的、机械的等器件组成的可以看得见、摸得着的计算机物理设备称为计算机硬件。主要包括输入设备、输出设备、运算器、控制器和存储器 5大部分。 软件系统 /简称软件: 为有效使用计算机而开发的各种程序和程序需要处理的数据以及与程
4、序有关的文档资料统称为软件。 软件分类: 软件分为系统软件和应用软件。 系统软件: 为有效使用和管理计算机软硬件资源或有效支持用户进行编程所开发的各种软件和语言等统称为系统软件。 应用软件: 为解决实际问题所开发的软件统称为应用软件。v 计算机能够完成的基本操作及其主要功能: 输入: 接受由输入设备(如键盘、鼠标器、扫描仪等)提供的数据。 处理: 对信息数据所进行的各种操作和运算统称处理。 输出: 将处理所产生的的结果等数据送到相关输出设备。 存储: 存储程序和数据,使其暂时或永久地保存下来。1.1.2 计算机的分类v 按处理对象分类: 数字计算机:接收、处理、输出和存储的数据均为数字量的计算
5、机。 模拟计算机:接收、处理、输出和存储的数据均为模拟量的计算机。 数字模拟混合计算机:上述两类计算机的结合。v 按用途分类: 通用计算机:具有广泛的用途和使用范围。就是目前我们大家常见的计算机。 专用计算机:只适应某一特殊领域的计算机,如过程控制、军事装备、 POS机等 。v 按规模分类: 巨型计算机: 运算速度超过数百亿次的超级计算机。如我国制造的 “ 银河 ” 和 “ 曙光 ” 计算机。主要用于复杂科学计算。 大 /中型计算机: 每秒运行速度在几千万次,并具有较大的存储和较好的通用性。主要用语银行、铁路等大行业。 小型计算机: 多终端的性能较低于大中型计算机的机器。适应作联机处理或工业自
6、动化控制的主机。 微型计算机: 配置和性能要求较低、体积小、用途广的计算机。 工作站: 某种特殊用途的高性能微型计算机。常用于图形处理。 服务器: 用于网络管理并为多个用户提供优质服务的计算机。 网络计算机: 网络终端计算机。1.1.3 计算机的特点v 运算速度快: 目前巨型机运算速度可达每秒几百亿次以上;v 运算精度高: 采用字长 32位甚至 64位的浮点运算,精度极高;v 具有记忆能力: 具有很大的内外存储空间;v 具有逻辑判断能力: 能进行各种逻辑运算;v 存储程序: 现代计算机的基本特点,即冯诺依曼思想。1.1.4 计算机的用途计算机用途十分广泛,可以说任何行业都无不在使用计算机,主要
7、用途归纳如下:v 科学计算: 完成科学研究、工程技术中复杂的数学计算问题,也称之为数值计算。特点是计算复杂、计算量大、要求精度高等。如天气预报、飞机、火箭等飞行控制、多元方程求解。v 数据处理: 使用计算机对数据进行输入、分类、加工、合并、统计、查询、检索等处理。特点是数据和数据种类繁多,即数据量很大,但与科学计算比较,计算不复杂、精度要求不高。3 实时控制: 按照一定的过程要求,实时控制实际对象按照规定的规律去运行。如火箭、导弹、卫星、生产流水线等的控制。4人工智能: 用计算机来模拟人的大脑来研究、分析和处理问题。如机器人、专家系统等。 . 娱乐与游戏: 使用多媒体、虚拟现实、可视化技术提供
8、娱乐环境,开发游戏供人们玩和娱乐。 . 计算机辅助工程和辅助教育: 利用计算机帮助人们搞产品设计和制造,帮助人们进行教育等活动。这些已越来越普遍。1.1.5 计算机的发展1946年第一台计算机诞生至今,计算机发展已经历了半个多世纪,其发展速度是十分惊人的。先后经历了 电子管、半导体、集成电路、大规模集成电路和超大规模集成电路时代。 发展进程下面简述如下:代 标志 时间 性能特点 重要意义第一代 电子管 20世纪 40年代中到50年代后期体积庞大,运算速度每秒 5千次左右,存储容量小,功耗大,可靠性低奠定了计算机的基础第二代 晶体管 20世纪 50年代后期到 60年代中期体积大大缩小,功耗大大降
9、低,运算速度提高,存储容量提高,可靠性提高奠定了集成电路发展的基础第三代 中小规模集成 电路20世纪 60年代中期到 70年代初期体积大大缩小,功耗大大降低,运算速度提高,存储容量提高,可靠性提高芯片技术和微电子技术,第四代 大规模和超大规模集成电路20世纪 70年代初期至今体积大大缩小,功耗大大降低,运算速度提高,存储容量提高,可靠性提高一个部件可以制造在一个芯片上,可实现计算机的工业化生产第五代 智能化计算机机计算机硬件发展过程集成电路: 集成电路( IC: Integrated circuit,1958年开始),即将大量的晶体管和电子线路组织安装在一块硅晶片上,也称之为芯片。小规模集成电
10、路: 每个芯片上的元件数小于 100;中规模集成电路: 每个芯片上的元件数在 100-1000元件之间;大规模集成电路: 每个芯片的元件数);超大规模集成电路: VLSI: Very Large Scale Integration,集成度达到以上;1.2 计算机科学与技术学科的定义1.2.1 计算机科学与与技术学科 计算机科学与技术学科: 是研究计算机的设计与制造以及利用计算机进行信息处理的理论、原理、技术和方法的学科。 学科特点: 科学与技术并重,理论与实践并重(工程性); 科学: 侧重于研究现象、揭示规律; 技术: 侧重于验证科学理论(结论),并形成实际工程开发或产品生产的方法与技术手段;
11、 科学与技术关系: 科学是技术的依据,技术是科学的体现;技术得益于科学,它又向科学提出新的课题。科学与技术相辅相成、互相促进、共同发展,缺一不可。1.2.2 计算机科学与技术学科的根本问题学科起源: 计算机科学技术的迅猛发展,除了源于微电子学等相关学科的发展外,主要源于其应用的广泛性与强烈需求。计算机科学与技术学科的根本问题是: 解决问题的自动化。数学的基础作用: 数学及其形式化描述、严密的表达和计算是计算机科学与技术学科所用的重要工具。1.2.3 计算机科学技术的 研究范畴计算机科学技术的研究范畴包括计算机理论、硬件、软件、网络及应用等。v 计算机理论研究(基础理论)v 离散数学: 数理逻辑
12、、集合论、近世代数和图论等。v 算法分析理论: 对计算机可实现的计算方法进行设计和分析研究的理论。主要涉及:组合数学、概率论、数理统计等。v 形式语言与自动机理论: 研究程序设计语言以及自然语言的形式化定义、分类、结构及自动化模型等内容。v 程序设计语言和程序设计方法学等理论。2. 计算机硬件研究v 元器件与存储介质: 研究构成计算机的各种电子、磁性和机械等元器件。v 微电子技术: 各类 IC芯片结构和制造技术研究v 计算机组成原理: 计算机组成结构和工作原理的研究。v 微型计算机技术: 研究目前应用最广泛的微型机的组成原理、结构体系、接口及应用技术。v 计算机体系结构: 研究计算机的总体结构
13、或新的体系结构,如并行处理机系统,精简指令、集群、网络等计算机体系机构。3. 计算机软件的研究v 程序设计语言的设计: 设计新的程序设计语言,即按照规定的词法、语法和语义规则设计新的语言。v 数据结构与算法: 研究数据的逻辑结构和物理结构以及他们之间的关系,并对这些结构进行规定算法的操作运算。v 程序设计语言翻译系统: 研究如何将非机器语言编写的程序(源程序)翻译成机器可以直接执行的目标程序的原理和方法。v 操作系统: 研究如何自动地对计算机的各种资源进行有效管理,并为用户提供友好的接口。3. 计算机软件的研究v 数据库系统: 研究数据模型以及照此模型对数据的存储和管理技术。如 RDBMS,
14、OODBMS。v 算法设计与分析: 研究和设计计算机可实现的,在时间和空间上都优秀的计算方法。v 软件工程学: 研究软件工程项目开发、维护的基本原理和方法学。v 可视化技术: 研究用图视的方法表示数据、模拟场景的原理和方法。4. 计算机网络的研究v 网络结构: 研究局域网、广域网、 Internet等网络的拓扑结构及其连接方式。v 数据通信与网络协议: 研究连接在网络上的各种计算机系统之间通信规范和条约。v 网络服务: 网络为用户提供什么服务,如邮件、聊天、视频会议、信息浏览等等。v 网络安全: 信息安全、设备安全、软件安全等。5.计算机应用的研究及 人机工程v 软件开发、原理、方法与技术;v
15、 软件开发工具与环境;v 软件维护技术;v 开拓新的应用领域。v 人 机工程:研究人与计算机的交互和协同技术 ,即人性化的界面。1.3 计算机科学与技术学科的教育计算机科学与技术学科的发展速度是非常快的,计算机软、硬件系统的不断更新,使得学科的教育已经完全不能通过跟踪流行系统的变化来跟踪学科的发展,更不能以流行的系统来确定我们的教学内容。对计算机科学和技术学科而言, “ 有限的在校时间与不断增长的知识的矛盾 ” 更为突出 。另一方面,经过几十年的发展,本学科目前正在逐步走向深入,这给计算机科学与技术学科的教育既提出了新的要求,也提供了新的思路。1.3.1 技术的变化社会对新技术的迫切需求,使计
16、算机学科教育的知识体系必须紧跟技术的发展。近期在技术方面变化比较大的主要有如下各方面:v 网络技术,包括基于 TCP/IP的技术、万维网及其应用v 图形学和多媒体技术以及虚拟现实技术v 嵌入式系统v 数据库技术v 面向对象技术、分布式计算v 复杂的应用程序接口的使用v 应用领域、人 机交互v 软件安全、保密与密码学1.3.2 文化的变化及 教育观念的变化计算机科学与技术的教育除了受到计算机技术发展的影响外,同时还受到文化与社会发展的影响。v 新技术带来的教学法的改变: 如网络带来的远程教育、电视教育、多媒体课件等新技术在教育方面的应用和实践,出现异地交互、资源共享、灵活多样的新的教育模式。v
17、社会的信息化和知识经济时代的到来: 随着 Internet的广泛应用和计算机技术的普及,社会的信息化和知识经济时代的发展和到来使人们对计算机技术和社会经济变革有了更多更深刻的认识 即计算机成为人类社会必须掌握的工具。当然,也应成为全民的基本素质教育。1.4 计算机学科毕业生的基本要求1.4.1 知识、能力和素质v 具备丰富的知识:因为 “ 知识 ” 是能力的基础、载体、表现形式。 知识是能力的 “ 载体 ” ;能力与素质是通过知识表现出来的。v 具有较强的解决实际问题的应用和创新能力: “ 能力” 是技能化的知识,是知识的综合体现。应强调运用知识发现问题、分析问题、解决问题的能力。要保证知识运
18、用的综合性、灵活性与探索性,就需要有丰富的知识为支撑。v 高素质: 素质是知识和能力的升华。高素质可使知识和能力更好地发挥作用,同时还可促使知识和能力得到不断的扩展和增强。v 要点: 知识、能力、素质是进行高科技创新的基础。只有将三者融会贯通于教育的全过程,才可能培养出高水平人才。爱因斯坦说过,想象力比知识更重要。1.4.2 毕业生检验标准v 掌握计算机科学与技术的理论和本学科的主要知识体系。v 在确定的环境中,能够理解和应用基本的概念、原理、准则,具备对工具及技巧进行选择与应用的能力。v 按照工程化的原理、方法、过程和标准,完成一个项目的设计与实现。该项目的工作应该能够表明自己具备一定的解决
19、问题和评价问题的能力。v 具备在适当的指导下进行单独工作的能力,以及作为团队成员和其他成员进行合作的能力。v 能够综合应用所学的知识。v 能够自觉形成和保证所进行的开发活动是合法的和合乎道德的。1.4.1 优秀学生学校应该为有才华的学生提供发挥全部潜能的机会,使这些有才华的学生能应用课程中学到的原理进行有创造性的工作,能在分析、设计、开发适应需求的复杂系统过程中做出有创意的贡献;他们能够对自己和他人的工作进行确切的评价与检验。这些优秀的人未来将有可能领导这门学科的发展。这需要在对学生的教育过程中有意识地为他们的成长提供帮助和锻炼的机会,更要鼓励他们树立起强烈的创新的意识和信心,鼓励他们去探索。1.5 信息化社会的挑战1.5.1 信息化社会特征n 建立完善的信息基础设施: 信息的网络传输、存储和处理设备等。n 采用先进的信息技术: 网络通信、多媒体、数据库、分布计算等n 建立广泛的信息产业: 计算机制造、软件产业、信息服务等n 拥有高素质的信息人才: 科研、技术发明、应用、服务等n 构建良好的信息环境: 法规、道德建设。