中国地质大学(武汉)信息工程学院2020/1/29计算机高级语言程序设计(VC++)授课班级:111101-2班任课教师:叶亚琴中国地质大学(武汉)信息工程学院第一章绪论2020/1/29中国地质大学(武汉)信息工程学院你将从此开始成为一个计算机学者和计算机能手的成长之旅…Thischapterstartsyouonyourwaytobecomingcomputerliterateandcomputercompetent…2020/1/29中国地质大学(武汉)信息工程学院计算机专业人员(computerprofessional)受过专门教育,从事计算机技术工作,为开发、维护计算机系统而使用计算机。如软件工程师、系统分析员、网络管理员。计算机用户(userorend-user)对计算机技术知识不甚或不想了解,但为工作、学习使用或想使用计算机。如现在的你,公司的文员。使用计算机的两类人2020/1/29中国地质大学(武汉)信息工程学院知识与技能计算机知识(computerliterate)拥有计算机科学的有关知识并理解其应用。计算机技能(computercompetent)掌握计算机使用技术并具有不断更新的能力。2020/1/29中国地质大学(武汉)信息工程学院计算机语言课程的学习方法(1)和学习自然语言一样:由浅入深、边学边用字短语句子片段记叙文长篇小说关键字表达式语句函数模块大型软件2020/1/29中国地质大学(武汉)信息工程学院计算机语言课程的学习方法(2)用有限的词汇和语法准确表达思想上下左右东南西北溘庀騳苐2020/1/29中国地质大学(武汉)信息工程学院计算机语言课程的学习方法(3)对语言的理解和运用依赖于掌握的背景知识成吉思汗张三2020/1/29中国地质大学(武汉)信息工程学院(1)软件体系结构(2)计算机编程基础(3)程序设计语言的发展(3)面向对象的软件开发过程(4)程序开发过程过程及开发工具本次课的内容2020/1/29中国地质大学(武汉)信息工程学院绪论1:软件体系结构中国地质大学(武汉)信息工程学院软件是什么?软件(Software)的概念(1)狭义:计算机程序(Program)(2)广义:计算机程序和相关文档(如:需求规格说明书、软件设计说明书、使用手册)的总称软件的含义根据上下文理解,一般是指计算机程序的集合软件是由一组用“编程语言”编写的程序组成。程序则由指令组成。软件通常由专业编程人员开发,并存放在磁盘、光盘上,或通过因特网在线提供。2020/1/29中国地质大学(武汉)信息工程学院两类软件软件通常可以分为两类:SystemSoftware(系统软件)ApplicationSoftware(应用软件)应用软件:我用的系统软件:它用的你可以认为应用软件是你用的,而系统软件是计算机用的。2020/1/29中国地质大学(武汉)信息工程学院SystemSoftware:TheComputer’sBoss功能–管理计算机的内部资源,控制硬件的运行,执行各种基本操作。–不用于解决各种业务性或专业性的具体问题。2020/1/29最重要的一种系统软件是“操作系统”Windows、Linux、Unix…..中国地质大学(武汉)信息工程学院ApplicationSoftware:YourServant功能–用于提高计算机用户的工作效率和创造力。2020/1/29PC最常用的应用软件是–Office系列办公软件和InternetExplorerBrowser(IE浏览器)。–QQ–杀毒软件中国地质大学(武汉)信息工程学院绪论2:计算机编程基础中国地质大学(武汉)信息工程学院计算机程序计算机的工作是用程序来控制的程序是指令的集合。指令是计算机可以识别的命令。2020/1/29中国地质大学(武汉)信息工程学院什么样的程序是好的程序?程序有两层含义:–一个告诉计算机要做什么的方法;–一个让其他人看懂你想要计算机做什么的方法;“优美”的程序能让其他人很快明白甚至欣赏编程者的想法。2020/1/29中国地质大学(武汉)信息工程学院程序的组成(1)一串指令–E.g:教师上课准备顺序执行(2)条件句–E.g:“如果”条件执行(3)重复行为–E.g:“如果盒子里还有饼干,就一直吃饼干”(4)将一个大问题分解成几个小问题–问题分解(5)计算结果2020/1/29中国地质大学(武汉)信息工程学院程序学习的实质编程就是上述简单概念的组合,其难点在于复杂度;学会如何合理地规划指令序列去完成一个任务(即怎样设计一个程序)是编程学习中最有价值的收获。方法:做好规划流程图2020/1/29中国地质大学(武汉)信息工程学院计算机程序的表现和实质是什么?(1)程序员(Programmer)看到的程序(2)计算机可执行程序┉┉inta;intb;a=100;b=64;┉┉┉┉66C745EC640066C745E04000┉┉输入、修改编译连接内存2020/1/29中国地质大学(武汉)信息工程学院绪论3:程序设计语言的发展中国地质大学(武汉)信息工程学院历史回顾第一台可编程机器•设计者:查尔斯·巴贝奇•开始于1822年第一位计算机程序员——Ada2020/1/29中国地质大学(武汉)信息工程学院机器语言与汇编语言由计算机硬件系统可以识别的二进制指令组成的语言称为机器语言。计算机发展的初期,软件工程师们只能用机器语言来编写程序。这一阶段,在人类的自然语言和计算机编程语言之间存在着巨大的鸿沟。汇编语言将机器指令映射为一些可以被人读懂的助记符,如ADD、SUB等。此时编程语言与人类自然语言间的鸿沟略有缩小,但仍与人类的思维相差甚远。因为它的抽象层次太低,程序员需要考虑大量的机器细节。2020/1/29中国地质大学(武汉)信息工程学院高级语言高级语言屏蔽了机器的细节,提高了语言的抽象层次,程序中可以采用具有一定涵义的数据命名和容易理解的执行语句。这使得在书写程序时可以联系到程序所描述的具体事物。2020/1/29中国地质大学(武汉)信息工程学院有哪些高级语言?1954年,世界上第一种计算机高级语言诞生——FORTRAN语言。随着计算机的推广应用,先后出现了多种计算机高级语言,如BASIC,Pascal,COBOL,ADA和C等。中国地质大学(武汉)信息工程学院C++语言的发展:从C到C++贝尔实验室1972年发明C,优点:简洁、灵活、高效1980开始改造C,称为C++1994年制定了ANSIC++标准草案1998年ISO收录为国际标准C++被称为带“类”的CC++与C完全兼容没必要把C看成是学习C++的必备基础,应该直接学C++2020/1/29中国地质大学(武汉)信息工程学院2020/1/2928BjarneStroustrup博士(C++发明人,英国剑桥大学计算技术实验室&贝尔实验室)中国地质大学(武汉)信息工程学院C++的特点1、全面兼容C它保持了C的简洁、高效和接近汇编语言等特点;对C的类型系统进行了改革和扩充;C++也支持面向过程的程序设计,不是一个纯正的面向对象的语言;2、支持面向对象的方法中国地质大学(武汉)信息工程学院绪论3:面向对象的软件开发中国地质大学(武汉)信息工程学院面向对象的软件开发过程分析(Analysis)设计(Design)编码(Code)测试(Test)维护(Maintenance)面向对象的软件开发瀑布模型OOAOODOOPOOTOOSM2020/1/29中国地质大学(武汉)信息工程学院面向对象的软件开发过程分析(Analysis)设计(Design)编码(Code)测试(Test)维护(Maintenance)需求规格说明书软件设计说明书源程序可执行程序软件做什么?计算?绘图?通讯?怎么开发软件?由哪些部分组成?输入源程序。编写符合语法和功能要求的程序程序是否正常?消除程序中的缺陷。修正程序使用过程中发现的错误或缺陷软件开发瀑布模型本课程主要掌握C++的设计、编码和测试方法2020/1/29中国地质大学(武汉)信息工程学院绪论4:程序开发过程及开发工具中国地质大学(武汉)信息工程学院程序的开发过程源程序、目标程序、翻译程序三种不同类型的翻译程序:汇编程序、编译程序、解释程序程序的开发过程编辑、编译、连接、运行调试2020/1/29中国地质大学(武汉)信息工程学院程序的开发过程利用开发工具完成源程序的编辑、编译、连接、运行基本术语:源程序、目标程序、可执行程序P1666C745EC640066C745E04000‥‥‥‥551C90909090‥‥‥‥可执行程序翻译程序inta;intb;a=100;b=64;源程序#includeIntmain({66C745EC640066C745E04000目标程序551C90909090连接程序2020/1/29中国地质大学(武汉)信息工程学院程序的开发过程与工具早期的程序开发工具是分离的,如:(1)源程序输入工具,如edlin(2)源程序编译工具,如compile,masm(3)目标程序连接工具,如Link(4)程序测试和调试工具,如debug现在的程序开发工具是集成的,即用同一个工具可以完成编辑、编译、连接、调试集成开发工具有时也叫集成开发环境2020/1/29中国地质大学(武汉)信息工程学院集成开发工具主要有:Microsoft公司VisualC++Borland公司BorlandC++BuilderIBM的VisualAgeC++2020/1/29程序的开发工具中国地质大学(武汉)信息工程学院程序开发工具集成开发工具MicrosoftVisualStudio演示2020/1/29中国地质大学(武汉)信息工程学院课后阅读及作业(1)阅读教材第1章绪论,Page1-18(2)面向对象的编程语言有哪些特点?(3)面向对象的软件工程包括哪些内容?(4)计算机硬件的基本组成(5)计算机中信息存储格式及机制换算(Bit-G)2020/1/29中国地质大学(武汉)信息工程学院谢谢!2020/1/29