第一章计算机软件技术概述(精)
计算机软件技术基础知识点总结
《计算机软件技术基础》第一章算法1.1算法的基本概念算法:指解题方案的准确而完整的描述算法的基本特征:能行性(算法中的每一个步骤必须能够实现;算法执行的结果要能够达到预期的目的)确定性(算法中的每一个步骤都必须是有明确定义的,不能摸棱两可,也不能有多义性)有穷性(算法必须能在执行有限个步骤之后终止)拥有足够的情报(算法执行的结果总是与输入的初始数据有关。
不同输入对应不同输出)算法:是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的、明确的,此顺序将在有限的次数下终止。
算法的基本要素:1.算法中对数据的运算和操作(算术运算、逻辑运算、关系运算、数据传输【赋值、输入、输出】)2.算法的控制结构(算法中各操作之间的执行顺序)1.2算法描述语言C语言描述和简单的算法描述语言(1)符号与表达式:符号主要用以表述变量名、数组名等(2)赋值语句(3)控制转移语句:无条件转移语句形式:GOTO 标号条件转移语句形式IF C THEN SIF C THEN S1ELSE S2(4)循环语句WHILE语句:WHILE C DO SFOR语句:FOR i=init TO limit BY step DO S(5)其他语句EXIT语句:退出某个循环,使控制转到包含EXIT语句的最内层的WHILE或FOR循环后面的一个语句去执行RETURN语句:结束算法的执行(允许使用用引号括起来的注释信息)READ(INPUT)和WRITE(PRINT/OUTPUT)语句:用于输入输出(6)算法中的注释总是用一对方括号【】括起来;复合语句用一对花括号{}括起来1.3算法设计基本方法1.列举法【例1.1】基本思想:根据提出的问题,列举所有可能的情况,并用问题中给定的条件检验哪些是需要的,哪些是不需要的(通常解决“是否存在”“有多少种可能”类型问题)特点:算法比较简单,但列举情况较多时,工作量将很大寻找路径、查找、搜索等问题采用列举法有效2.归纳法基本思想:通过列举少量的特殊情况,经过分析,最后找出一般的关系3.递推法(数学例题)指从已知的初始条件出发,逐次推出所要求的各中间结果和最后结果(本质属于归纳法)4.递归基本思想:将问题逐层分解的过程,实际上并没有对问题进行求解,而只是当解决了最后那些简单的问题后,再沿着原来分解的逆过程逐步进行综合【例1.3】自己调用自己的过程称为递归调用过程递归分为直接递归:一个算法P显式地调用自己间接递归:算法P调用另一个算法Q,而算法Q又调用算法P5.减半递推技术(分治法)减半:将问题的规模减半,而问题的性质不变递推:重复“减半”的过程【例1.4】6.回溯法通过对问题的分析,找出一个解决问题的线索;然后沿着这个线索逐步试探。
计算机软件开发入门指南
计算机软件开发入门指南第一章:软件开发概述本章将介绍计算机软件开发的概念、发展历程以及软件开发的重要性。
了解这些基础知识将有助于读者更好地进入软件开发领域。
1.1 计算机软件开发简介1.1.1 什么是计算机软件开发1.1.2 软件开发的发展历程1.2 软件开发的重要性1.2.1 软件在现代社会中的地位1.2.2 软件开发的商业价值第二章:软件开发技术基础在本章中,将介绍软件开发所需的基本技术知识,包括编程语言、算法和数据结构等。
这些基础知识是进一步学习和实践软件开发的基石。
2.1 编程语言2.1.1 常见的编程语言及其特点2.1.2 如何选择合适的编程语言2.2 算法和数据结构2.2.1 算法的基本概念和分类2.2.2 常用的数据结构及其应用第三章:软件工程与开发流程软件工程是软件开发的重要分支,本章将重点介绍软件开发的过程和流程,以及相关的工具和方法。
3.1 软件开发生命周期3.1.1 软件开发的阶段和任务3.1.2 常见的软件开发模型3.2 软件开发工具和方法3.2.1 集成开发环境 (IDE)3.2.2 版本控制和团队协作工具3.2.3 敏捷开发方法和持续集成第四章:软件测试与质量保证软件测试是软件开发过程中重要的一环,本章将介绍软件测试的基本原理和常见的测试方法,以及质量保证的重要性。
4.1 软件测试的基本原理4.1.1 软件测试的定义和目的4.1.2 常见的软件测试方法4.2 质量保证与软件开发4.2.1 质量保证的概念和重要性4.2.2 质量保证在软件开发中的应用第五章:常见软件开发应用领域软件开发可以应用于各个行业和领域,本章将介绍常见的软件开发应用领域,包括移动应用开发、网络应用开发等。
5.1 移动应用开发5.1.1 常用的移动应用开发平台5.1.2 移动应用开发的技术要点5.2 网络应用开发5.2.1 常用的网络应用开发技术5.2.2 网络应用开发的安全性问题第六章:软件开发的职业发展本章将介绍软件开发行业的职业发展前景和路径,以及如何提升自己的技能和竞争力,走上成功的软件开发之路。
计算机软件技术全解析
计算机软件技术全解析第一章:计算机软件技术概述计算机软件技术是指运用计算机科学与软件工程的原理、方法和工具,设计、开发、维护和测试软件的过程。
它是计算机领域中一门非常重要的学科,负责构建各种应用程序、操作系统和网络系统等。
软件技术的核心任务是通过编程语言和开发工具,将人们的需求转化为能够被计算机理解和执行的指令集。
第二章:软件开发过程软件开发过程是指按照特定的方法和步骤,将软件从概念阶段转变为可以使用的成品的过程。
常见的软件开发过程包括瀑布模型、敏捷开发、迭代开发等。
在软件开发过程中,需要进行需求分析、设计、编码、测试和部署等一系列步骤,以确保软件的质量和功能符合用户的要求。
第三章:编程语言和开发工具编程语言是软件开发中最基础的部分,它是程序员用来编写代码的工具。
常见的编程语言有C、C++、Java、Python等。
每种编程语言都有其特点和应用场景,开发人员通过选择适合的编程语言来实现项目需求。
开发工具则提供了编写、调试和测试代码的环境,如集成开发环境(IDE)、调试器和版本控制系统等。
第四章:软件测试与质量保证软件测试是确保软件质量的关键环节,通过检测程序的正确性、可靠性和兼容性等,以保证软件功能的正确性和稳定性。
软件测试的方法包括单元测试、集成测试、系统测试、性能测试等。
质量保证则是通过工程化的方法,从需求分析到软件上线,全程监控和控制,以确保软件开发过程中的质量问题得到及时解决。
第五章:软件工程与项目管理软件工程是通过科学的方法和工程化的手段,对软件开发过程进行管理和控制的学科。
它包括项目计划、需求工程、结构设计和项目管理等方面。
在大型软件项目中,项目管理起到了至关重要的作用,通过明确的项目目标、合理的资源分配和有效的沟通协调,促进项目的成功交付。
第六章:人机交互与用户体验人机交互是研究人与计算机之间的信息交流和交互方式的学科。
通过设计友好的用户界面和人性化的交互方式,提高软件的易用性和用户体验。
事业单位计算机专业知识整理(全)
计算机基础第一章计算机基础知识一.计算机与信息技术概述㈠计算机的产生和发展1.巴贝奇被国际计算机界公认为“计算机之父”.2.现代计算机的发展艾兰·图灵在计算机科学方面的主要贡献有两个:一是建立了图灵机的理论模型,奠定了可计算理论的基础;二是提出了定义机器智能的图灵测试,奠定了人工智能的理论基础.冯·诺依曼被称为“计算机之父”,他提出了“存储程序”的概念,并以此概念为基础确定了计算机硬件系统的基本结构.“存储程序”的工作原理也因此被称为冯·诺依曼.世界第一台电子计算机是1946年投入使用的ENIAC,即数字积分计算机.3.计算机的分代⑴第一代计算机(1946-1957)电子管计算机时代.主要用于军事领域和科学研究工作中的科学计算.⑵第二代计算机(1958-1964)晶体管计算机时代.数据处理和事务处理⑶第三代计算机(1964-1970)集成电路计算机时代.⑷第四代计算机(1971-至今)大规模、超大规模集成电路计算机时代.⑸未来新型计算机:光子计算机、量子计算机、生物计算机.计算机的发展趋势是进一步的“四化”:巨型化、微型化、网络化和智能化.4.计算机新技术的发展嵌入式、网格计算、中间件技术㈡计算机的特点和分类1.计算机的特点:⑴运算速度快;⑵运算精度高;⑶具有记忆能力;⑷具有逻辑判断能力;⑸运行过程自动化;⑹可靠性高;⑺通用性好.2.分类:⑴一般的,常将电子计算机分为数字计算机(DigitalComputer)和模拟计算机(AnalogueComputer)两大类.①数字计算机,是通过电信号的有无来表示数,并利用算术和逻辑运算法则进行计算的.它具有运算速度快、精度高、灵活性大和便于存储等优点,因此适合于科学计算、信息处理、实时控制和人工智能等应用.我们通常所用的计算机,一般都是指的数字计算机.②模拟计算机,是通过电压的大小来表示数,即通过电的物理变化过程来进行数值计算的.其优点是速度快,适合于解高阶的微分方程.在模拟计算和控制系统中应用较多,但通用性不强,信息不易存储,且计算机的精度受到了设备的限制.因此,不如数字计算机的应用普遍.⑵按照计算机的用途可将其划分为专用计算机(SpecialPurposeComputer)和通用计算机(GeneralPurposeComputer).在通用计算机中,人们又按照计算机的运算速度、字长、存储容量、软件配置等多方面的综合性能指标将计算机分为巨型机、大型机、小型机、工作站、微型机等几类.(考点:计算机根据运算速度、存储能力、功能强弱、配套设备等因素可划分为:巨型机、大型机、中型机、小型机和微型机.)随着超大规模集成电路技术的发展,微型计算机进入快速发展时期,计算机技术和应用进一步普及.微型计算机按字长划分,可分为:8位机、16位机、32位机、64位机,而微型计算机按体积大小划分,又可分为:台式计算机、便携式计算机、膝上型计算机.㈢计算机的应用1.科学计算;2.信息处理;3.过程控制;4.计算机辅助工程;5.人工智能;6.计算机网络;7.电子商务㈣信息技术概述1.信息与数据⑴数据:指的是人们用于表达、描述、记录客观世界事物与现象属性的某种物理符号.注:数据不仅包括数字、文字、字母和各种特殊符号等文字数据,还包括图形、图像、动画、影像、声音等各种多媒体数据.但使用最多、最基本的仍然是文字数据.⑵信息:是客观世界事物与现象属性的反映,是经过加工处理,并对人类的客观行为产生影响的具有知识性的有用数据.⑶信息处理:为了产生信息而对原始数据进行的加工处理.信息处理通常包括数据的采集、接收、转换、传递、存储、整理、分类、排序、索引、统计、计算、检索等一系列的活动过程.2.信息技术⑴人类经历的信息革命:第一次是语言的产生;第二次是文字的使用;第三次是印刷术的发明;第四次是广播、电话、电视的应用.第五次是计算机技术和现代通信技术的应用与发展.⑵现代信息技术包括:①信息感测技术,即获取信息的技术;②信息传输技术,就是通信技术;③信息控制技术;④信息存储技术;⑤信息处理技术.3.现代信息技术的特点⑴数字化;⑵多媒体化;⑶网络化;⑷智能化.二.计算机中信息的表示与存储计算机的主要功能是进行数值运算、信息处理和信息存储.㈠进位计数制1.数制的概念数制又称为计数制,是指用一组固定的数字或者文字符号(称为数码),和一套统一的规则来表示数值大小的方法.数制可以分为非进位数制和进位计数制两类.⑴非进位计数制:表示数值大小的数码与它在数中的位置无关的计数体制称为非进位计数制.罗马数字⑵进位计数制:表示数值大小的数码与它在数中的位置有关,采用进位原则的计数体制称为进位计数制.2.进位计数制构成进位计数制的三个要素,它们是:⑴基数:进位计数制使用固定的R个数码,R称为该计数制的基数,并逢R进一.R等于几,即为几进制,逢几进一.⑵数位:指的是数码在一个数中所处的位置.数位以小数点为基准进行确定.⑶位权:位权的大小等于以基数为底、数位序号为指数的整数次幂的值.㈡常用进位计数制间的相互转换任何有理数都可以写成某种进位计数值的按权展开表达式.1.二——十进制数间的相互转换⑴将十进制数转换成二进制数时,需要对整数部分和小数部分分别进行,然后将各自得到的结果组合,以获得最后结果.步骤如下:①整数的转换:采用除2取余法,得到的余数,其高低位顺序由后(下)向前(上)取;②小数的转换:采用乘2取余法,得到的余数,其高低位顺序由后(下)向前(上)取;③将转换获得的整数和小数部分组合起来,即得转换为二进制数.⑵二进制转换为十进制二进制数转换成十进制数只需采用按权展开乘幂求和的方法即可.2.二——八进制数、十六进制数间的相互转换⑴二进制数转换成八进制数、十六进制数1位八进制数可以用3位二进制数表示,1位十六进制数可以用4位二进制数表示.①二进制数转换成八进制数方法是:以小数点为界,整数部分向左,小数部分向右,每三位一组,用相应的八进制数表示,到左端最高位或右端最低位不足三位时,用0补足.②二进制数转换成十六进制数方法是:以小数点为界,整数部分向左,小数部分向右,每四位一组,用相应的八进制数表示,到左端最高位或右端最低位不足四位时,用0补足.⑵八进制数、十六进制数转换成二进制数将八进制数、十六进制数转换成二进制数的方法是将上述转换方法的逆操作.只要将每位八进制数或十六进制数分别用相应的三位或四位二进制数表示即可.3.十进制与其他进制间的相互转换⑴十进制转换成八进制方法与转换成二进制数的方法相似,整数、小数分别转换.整数部分采用除8取余法,小数部分采用乘8取整法,最后将转换结果组合起来.⑵八进制数转换为十进制数将八进制数转换成十进制数同样只需采用按权展开乘幂求和的方法即可.⑶十进制与任意进制间的转换方法:①十进制数转换成任意进制数将十进制数的整数、小数分别转换.整数部分采用除基数取余法,小数部分采用乘基数取整法,最后将转换结果组合起来即可.②任意进制数转换成十进制数写出以该进制数的基数为底的按权展开式,乘幂求和算出该多项式的结果即可.4.计算机技术中使用的数制⑴常用的进位计数制⑵计算机与二进制二进制的优点(为什么计算机中采用二进制数表示各种信息数据):①表示方便二进制数只有0和1两个数码,在计算机中非常容易用电子元器件、电子线路、磁芯等物理部件的两种不同的物理状态来表示.如晶体管的导通与截止,开关的接通与断开等.②运算简单③逻辑运算:既便于使用逻辑代数的方法去设计和简化计算机的各种逻辑电路,也可以在计算机中根据二值逻辑运算.④可靠性高:二进制数只有0和1两个基本数码,在存储、传输和处理时不容易出错,可靠性高.⑤转换方便:计算机使用二进制,人们习惯于使用十进制.而二进制与十进制间的转换很方便,因此使人与计算机间的信息交流既简便又容易.㈢二进制数的运算1.算术运算⑴加法运算0+0=00+1=10+1=11+1=10⑵减法运算0-0=00-1=11-0=11-1=0⑶乘法运算0*0=00*1=01*0=01*1=1⑷除法运算0/0=00/1=01*0(无意义)1/1=12.二进制的逻辑运算⑴逻辑与运算⑵逻辑或运算⑶逻辑非运算㈣数值型数据在计算机中的表示1.真值与机器数机器数:将计算机使用的二进制数的最高位作为符号位,用“0”表示正号,“1”表示负号,用其余位表示数值的大小.在计算机内部将正、负号数字化后得到的数称为机器数,而在计算机外部用正、负号表示的实际数值,称为该机器数所表示的真值.2.定点数与浮点数在计算机中小数点并不占用二进制位.根据对小数点位置的规定,机器数有整数、定点小数和浮点小数之分,整数和定点小数都是定点数.⑴定点数在机器数中,小数点的位置固定不变的数称为定点数.①若将小数点的位置固定在机器数最低位之后,此时的机器数表示的就是一个纯整数.对于n位带符号的二进制整数,可表示数值的位数为n-1位,其取值范围是:②若将小数点的位置固定在符号位之后,数值最高位之前,此时的机器数表示的就是一个纯小数,又称定点小数.对于n位带符号的二进制定点小数,可表示数值的位数为n-1位,其取值范围是:⑵浮点数小数点的位置在数中是可以变动的,这种数值表示法称为浮点表示法.浮点表示法将任意一个二进制数表示成阶码和尾数两部分.其中:E是N的阶码(又称指数),E前的正负号称为阶符;M是N的尾数,为数值的有效数字部分,M前的正负号称为数符;2是二进制数的基数.注:小数点的位置隐含在数符与尾数之间,即尾数总是一个小于1的数.数符占一位,用于确定该浮点数的正负.阶码总为整数,用于确定小数点浮动的位数.阶符也占一位,用于确定小数点浮动的方向.若阶符为正,小数点向左浮动;若阶符为负,小数点向右浮动.3.原码、反码和补码⑴原码原码是机器数的一种简单表示法.用n位二进制数的最高位作为符号位,符号位的“0”表示正号,“1”表示负号,其余位表示二进制数的数值.n位原码能够表示的数值范围是:-(2n-1-1)~(2n-1-1)⑵反码机器数的反码表示可以很容易地从原码得到.当机器数为正时,其反码与原码相同;当机器数为负时,符号位保持不变(仍为“1”),其余数值位全部按位取反,得到的就是反码.反码通常作为求补码的中间过程.⑶补码机器数的补码表示也同样可以通过原码得到.当机器数为正数时,其补码与原码相同;当机器数为负数时,符号位保持不变(仍为“1”),其余数值位全部按位取反后再加1,得到的就是补码.简单地说,负数的补码就等于该数的反码加1.㈤非数值型数据在计算机中的表示编码,指的是使用某种符号的组合,表示特定对象信息的过程.例如邮电部门使用的电报明码、邮政编码,以及车辆牌号,路牌号码.1.二——十进制数字编码(BCD)所谓二——十进制编码指的是将每一位十进制数用四位二进制数来表示.例如,最常用的是8421码.8421BCD码的编码方式最简单,每一位十进制数用四位二进制数表示,自左向右每一位二进制数对应的位权分别是8、4、2、1,故称之为8421码.2.ASCII字符编码ASCII的全称是americanstandardcodeforinformationinterchange(美国信息交换标准代码).ASCII码现在已经成为西文字符编码的国际通用标准.标准ASCII码用7位二进制数表示一个字符.因为27=128,所以可以表示128个不同的字符.在计算机中,因为每个ASCII码字符占用一个字节,故称之为单字节字符.标准ASCII码字符只使用低7位,最高位为0.有时最高位可以用来存放奇偶校验的值,因此该位也可以称为校验位.3.中文字符编码汉字的编码主要分为四类:汉字交换码、汉字机内码、汉字输入码和汉字字形码.⑴汉字交换码:简称国标码(GB).它是由国家制定的用于汉字信息交换的标准汉字编码.每个汉字字符采用两个字节表示,故称之为双字节字符.⑵汉字机内码汉字机内码就是汉字字符在计算机内部存储、处理时表示代码.汉字机内码将各字节的最高位设置为1.⑶汉字输入码输入码常称为外码.根据汉字输入编码方法的不同,可以分为四大类:数字码、拼音码、字形码和音形码.⑷汉字字型码:是用于表示汉字字体形态的字模数据代码,用于汉字符的显示和打印.通常用字形点阵或者矢量函数表示.汉字的输入,计算机内部的处理,再到汉字的输出,需要多种汉字编码的支持和相互转换才能完成.如下图所示㈥数据在计算机中的存储1.名词术语⑴位(bit):是二进制数字的缩写.位是存储在计算机中的最小的数据单位,也就是二进制数的最小单位:有0和1两个值得一位二进制数.在计算机网络通信中,常用(bps,每秒多少位)来衡量数据传输速率的快慢.⑵位模式:指的是由若干位组成的一个序列.位模式的长度取决于要表示的数据的数量.⑶字节(Byte):通常将长度为8的位模式称之为字节.即1B=1b.⑷字与字长字长取决于CPU中寄存器存储单元的长度,即CPU一次能够直接处理的二进制数据的位数.微处理器的字长已从早期的4位、8位,发展到了16位、32位,目前已达到64位.⑸内存地址指的是内存储器中用于区分、识别各个存储单元的标示符.内存地址使用无符号的二进制整数表示.2.数据存储数据在内存储器中是以字节为单位存储的.三.计算机系统的组成与工作原理㈠冯诺依曼计算机体系结构设计思想主要有三点:⑴采用二进制数制;⑵程序和数据都存放在存储器中,将程序指令作为数据进行处理;⑶为实现存储程序的工作原理,计算机的硬件应由控制器、运算器、存储器、输入设备和输出设备五个部分组成.㈡计算机硬件系统根据冯诺依曼提出的计算机设计思想,计算机的硬件结构主要由五部分构成.1.控制器(UC),是计算机系统的神经中枢和指挥中心,用于控制、指挥计算机系统的各个部分协调工作.其基本功能是从内存中取出指令,对指令进行分析,然后根据该指令的功能向有关部件发出控制命令,以完成该指令所规定的任务.控制器主要由程序计数器、指令寄存器、指令译码器、操作控制电路和时序控制电路等组成,它们的主要功能是:⑴程序计数器(PC):用来对程序中的指令进行计数,使控制器能够按照一定的顺序依次读取指令;⑵指令寄存器(IR):保存从内存中读取出来的指令;⑶指令译码器(IE):用于识别、分析指令的功能,确定指令的操作要求;⑷操作控制电路:根据指令译码,产生各种控制操作命令;⑸时序控制电路:生成脉冲时序信号,以协调、控制计算机各部件的工作.2.运算器(ALU):又称算术逻辑单元,是对信息进行加工处理的部件,主要由算术逻辑运算器、累加器、寄存器等组成.控制器和运算器组成中央处理器CPU.3.存储器:是具有记忆能力的电子装置或机电设备.存储器通常分为内存储器和外存储器两大类.⑴内存储器:又称主存储器,主要功能是存放CPU要执行的程序、要处理的原始数据、处理后的中间结果和最终结果.内存储器的特点是工作速度快、容量较小、价格较高.根据信息保存和工作特点的不同,内存储器又分为三类:只读存储器、随机存储器、高速缓冲存储器.CPU和内存储器构成计算机的主机.⑵外存储器:又称为辅助存储器,是内存储器的补充和后援,主要用于存放计算机当前不处理的程序和大量的数据.常用的外存储器主要有软/硬盘、光盘、磁带、闪存盘等.外存储器的特点是容量很大,信息可长期保存,但数据的读/写速度较慢.4.输入设备:是向计算机(内存)输入程序、数据等各种信息的设备.如键盘、鼠标、扫描仪、光笔等.5.输出设备:是将计算机的处理结果从内存中输出,并以用户能够接受的形式表示出来的设备,如显示器、打印机、绘图仪等.输入设备、输出设备和外存储器等统称为计算机外部设备.㈢计算机软件系统计算机软件指的是操作、运行、管理、维护计算机所需的各种应用程序及其相关的数据和技术文档资料.计算机软件系统通常将软件分为两大类:系统软件和应用软件.1.系统软件:指的是管理、监控、维护计算机的软、硬件资源,使计算机系统能够高效率工作的一组程序及文档资料.主要包括操作系统、各种语言处理系统、数据库管理系统,服务性程序等.⑴操作系统:是管理、控制计算机系统的所有软、硬件资源,提供用户与计算机交流信息的界面,方便用户操作、使用计算机系统的各种资源和功能,以最大限度地发挥计算机的作用和效能的一组庞大的管理控制程序.操作系统通常包括四个方面的管理功能:处理器管理、存储器管理、设备管理和文件管理.⑵语言处理系统(程序设计语言)计算机语言通常分为三大类:机器语言、汇编语言、高级语言.其中,汇编语言程序的执行过程如图所示:高级语言:是面向解题过程或者面向对象的语言.用高级语言编写的程序易读、易记、易维护,且通用性强,便于推广和交流,从而大大提高了程序设计效率. 用高级语言编写的程序需要用翻译程序将其翻译成机器指令程序(目标程序)才能执行.根据翻译的方式的不同,可分为两类:“编译”方式和“解释”方式.执行过程分别如下:⑶数据库管理系统⑷服务程序:用于调试、检测、诊断、维护计算机软、硬件的程序,如连接程序Link,编译程序Editor等.2.应用软件㈣计算机的工作原理计算机的工作就是是顺序执行存放在内存储器中的一系列指令. 1.指令、指令系统与程序指令是一组能被计算机识别并执行的二进制数据代码,是让计算机完成某个操作的命令.一条指令通常由两个部分组成,前面部分称为操作码,后面部分是操作数.一台计算机的所有指令的集合,称为该计算机的指令系统.指令系统应具有以下功能的指令:⑴数据传送指令;⑵数据处理指令;⑶程序控制指令;⑷输入/输出指令;⑸其他指令.2.计算机的工作原理计算机的工作过程实际上就是执行指令的过程.计算机在执行指令的过程中,有两种数据在计算机系统的各部件之间流动,它们是数据流和控制流.计算机执行指令的过程可分为四个步骤:⑴读取指令;⑵分析指令;⑶执行指令;⑷更新计数器.四.微型计算机的硬件组成㈠主机微型计算机的硬件组成:1.主板2.控制芯片:决定了主板的结构和性能.芯片组一般由两个超大规模集成电路组成,分别称北桥芯片和南桥芯片.北桥芯片在主板中其中主导作用,所以被称为主桥.北桥芯片决定了主板的速度、性能、档次和质量.3.CPU用于衡量CPU性能好坏的技术指标主要有以下几个:⑴CPU字长;⑵总线宽度;包括数据总线宽度和地址总线宽度,其中,数据总线控制整个系统数据流量的大小.地址总线宽度决定了CPU可以访问的物理地址空间的大小,也就是决定了CPU能够使用的最大内存容量. ⑶工作频率与速度①主频、倍频和外频主频指的是CPU内部时钟频率,也就是CPU运算时的工作频率,通常主频越高,CPU的工作速度也就越快.外频指的是系统总线的工作频率,而倍频则是指外频与主频相差的倍数,两者的关系是:主频=外频*倍频.②总线速度:分为内存总线速度和扩展总线速度.⑷工作电压⑸数学协处理器⑹超标量4.内存储器根据其功能特征可以分为三类:随机存取存储器、只读存储器、高速缓冲存储器.5.系统总线系统总线可分为地址总线、数据总线和控制总线.⑴地址总线(AB):用于传输内存储单元的地址或I/O接口的地址信息.地址总线的数量决定了计算机内存空间的大小.例如32位地址总线的寻址空间为:0到232-1,支持的最大内存储器的容量为4GB.⑵数据总线(DB):用于在CPU与内存或者I/O接口之间进行数据的传递.它的数量取决于CPU的字长.⑶控制总线CB用于传送各种控制信号、时序信号和状态信息等.数量取决于COU的字长.⑷常见微型计算机系统总线①PC总线;②ISA总线;③MCA总线;④EISA总线;⑤PCI总线⑥AGP总线㈡常用外部设备及其接口根据外部设备与主机交流信息的方向和功能的不同,可以分为输入设备、输出设备和外存储器三大类.1.输入设备,主要有:⑴键盘;⑵鼠标,工作原理有机械式和光电式;⑶扫描仪;⑷手写板;⑸条形码阅读器;⑹光笔;⑺触摸屏.2.输出设备⑴显示器(CPT):①阴极射线管显示器,性能指标有:a分辨率,分辨率越高,像素越密,图像越清晰;b点距:点距越小,像素越密,图像越清晰;c行频扫描;d帧频刷新频率,帧频指的是屏幕变换的快慢;e屏幕尺寸;②液晶显示器(LCD)⑵打印机打印机按工作原理可分为击打式和非击打式两类.常见的打印机主要有:a针式打印机(击打式)b喷墨打印机(非击打式)c激光打印机(非击打式的高精度打印机)⑶绘图仪3.常用外部总线接口微型计算机系统的外部总线接口主要有:⑴通用串行总线USB;⑵IEEE1394高速串行接口4.微型计算机的输入/输出接口I/O接口又称为设备控制器或适配器.常用的适配卡有:⑴显示适配器⑵多功能卡:将五种不同功能的适配器集成在一块电路板上,它们包括软盘驱动器接口、硬盘驱动器接口、串行通信接口、并行通信接口和游戏操作杆接口.①并行接口②串行接口③硬盘接口:主要有IDE、SCSI光纤和SATA 几种.⑶声音卡⑷调制解调器⑸网络适配器㈢外存储器常用的外存储器主要有软磁盘、硬磁盘、磁带、光盘和闪存盘等.⑴磁盘存储器:是微型计算机中使用最广泛的外存储器,分为:①软磁盘存储器:由软磁盘和驱动器两部分构成.软盘的存储容量可用下列公式计算:软盘容量=磁盘面数*磁道数*扇区数*扇区字节数磁盘存储器的特点:容量小、速度慢,但因磁盘和驱动器可以分开,易携带.磁盘上有写保护开关.②硬磁盘存储器硬盘容量=磁头数*柱面数*扇区数*扇区字节数;簇是磁盘上存储文件的基本单位,1簇=2n扇区.。
计算机软件从入门到精通的完整教程
计算机软件从入门到精通的完整教程第一章:计算机软件基础知识在计算机软件从入门到精通的学习过程中,首先需要掌握计算机软件的基础知识。
计算机软件是指计算机系统中不同类型的程序、数据以及相关的文档的总称。
了解计算机软件的分类,如系统软件、应用软件等,以及软件的开发过程,有助于全面理解软件在计算机系统中的重要性和作用。
第二章:软件安装和配置在掌握了计算机软件的基础知识后,接下来需要学习软件的安装和配置。
软件安装是将软件从安装介质复制到计算机系统中的过程。
在安装过程中,需要按照安装向导逐步操作,选择安装路径、配置文件关联等。
同时,还需要了解软件的配置方法,包括系统配置、软件参数设置等。
第三章:软件界面和功能介绍每个软件都有其独特的界面和功能,熟悉软件的界面和功能是通过该软件进行操作和实现功能的前提。
学习软件界面和功能的方法包括阅读用户手册、参考在线教程、观看视频教程等。
在此过程中,应重点关注软件的主要功能,掌握常用功能的操作方法和快捷键,提高操作效率。
第四章:软件操作技巧和实用功能除了掌握基本的操作方法和功能之外,还需要学习一些软件操作技巧和实用功能,以提高工作效率和使用体验。
例如,学习使用快捷键、自定义工具栏、批量操作等技巧,可以减少繁琐的操作步骤。
另外,了解软件的实用功能,如图像处理软件的滤镜效果、办公软件的数据分析等,能够更好地应对各种工作和学习需求。
第五章:软件故障排除和维护在使用计算机软件的过程中,难免会遇到各种故障和问题。
为了解决这些问题,需要学习软件故障排除和维护的知识。
故障排除包括诊断问题、定位原因和采取相应的解决方法。
维护包括软件更新和升级、磁盘清理、垃圾文件清理等操作,可以保持软件的正常运行和性能优化。
第六章:软件开发和编程能力除了使用现有软件进行操作和应用外,学习软件开发和编程能力可以进一步提升在计算机软件领域的技术水平。
学习编程语言、算法和数据结构等基础知识,可以开发出自己的软件程序。
第1章软件工程学概述
(3)软件经常变化 (4)开发软件的效率非常重要 (5.) 和谐地合作是开发软件的关键 (6.) 软件必须有效地支持它的用户 开发软件的目的就是支持用户的工作,满足 用户对软件的需求 (7. )在软件工程领域中通常由具有一种文 化背景的人替具有另一种文化背景的人创 造产品
37
软件工程的研究内容
软件是计算机系统中与硬件(hardware)相互依存 的另一部分,与硬件合为一体完成系统功能。 软件定义包括如下几点: (1)功能和性能的指令集(即程序); (2)程序能正常操纵信息的数据结构(即相关数 据); (3)与程序开发维护和使用有关的各种图文数据 (即说明文档)。
16
软件=程序+数据+相关文档
软件的发展主要经历了以下3个发展阶段:
第一阶段(20世纪50年代初期至20世纪60年 代中期) 特点:(1)称为程序设计阶段 (2)软件生产以个体化为主 (3)编写程序的工具只有低级语言 (4)软件规模小,几乎没有系统化的 标准可循
11
(5)软件由软件使用者自己开发和编写,适 合个人应用 (6)没有“软件”概念,对于程序有关的文 档的重要性认识不足,开发主要围绕硬件 进行 (7)工程规模小,使用工具单一,开发者之 间没有明确分工 第二阶段(20世纪60年代中期至70年代末期) 称程序系统阶段
7
ENIAC诞生于二战时期,最初是作为辅助炮兵计 算炮弹轨迹的工具,在盟军登陆西欧前一年开始 制造,但直到1945年停火时还没完成。在冷战初 期军方就发现了ENIAC的大量用途,它的17468 根真空管被用来测试氢弹的早期设计的可行性。 这台计算机每秒能执行5000条指令,在当时的情 况下它的运算速度比电动式计算机快1000倍。当 然,现在iPhone 6每秒能响应250亿条指令。
大学计算机基础知识点总结 第一章 计算机及信息技术概述
大学计算机基础知识点总结第一章计算机及信息技术概述(了解)1、、、、计算机发展历史上的重要人物和思想计算机发展历史上的重要人物和思想计算机发展历史上的重要人物和思想计算机发展历史上的重要人物和思想1、法国物理学家帕斯卡(1623-1662):在1642年发明了第一台机械式加法机。
该机由齿轮组成,靠发条驱动,用专用的铁笔来拨动转轮以输入数字。
2、德国数学家莱布尼茨:在1673年发明了机械式乘除法器。
基本原理继承于帕斯卡的加法机,也是由一系列齿轮组成,但它能够连续重复地做加减法,从而实现了乘除运算。
3、英国数学家巴贝奇:1822年,在历经10年努力终于发明了“差分机”。
它有3个齿轮式寄存器,可以保存3个5位数字,计算精度可以达到6位小数。
巴贝奇是现代计算机设计思想的奠基人。
英国科学家阿兰英国科学家阿兰英国科学家阿兰英国科学家阿兰图灵图灵图灵图灵(理论计算机的奠基人理论计算机的奠基人理论计算机的奠基人理论计算机的奠基人) 图灵机图灵机图灵机图灵机::::这个在当时看来是纸上谈兵的简单机器,隐含了现代计算机中“存储程序”的基本思想。
半个世纪以来,数学家们提出的各种各样的计算模型都被证明是和图灵机等价的。
美籍匈牙利数学家冯美籍匈牙利数学家冯美籍匈牙利数学家冯美籍匈牙利数学家冯诺依曼诺依曼诺依曼诺依曼(计算机鼻祖计算机鼻祖计算机鼻祖计算机鼻祖) 计算机应由运算器、控制器、存储器、输入设备和输出设备五大部件组成;应采用二进制简化机器的电路设计;采用“存储程序”技术,以便计算机能保存和自动依次执行指令。
七十多年来,现代计算机基本结构仍然是“冯·诺依曼计算机”。
2、、、、电子计算机的发展历程电子计算机的发展历程电子计算机的发展历程电子计算机的发展历程1、1946年2月由宾夕法尼亚大学研制成功的ENIAC是世界上第一台电子数字计算机。
“诞生了一个电子的大脑” 致命缺陷:没有存储程序。
2、电子技术的发展促进了电子计算机的更新换代:电子管、晶体管、集成电路、大规模及超大规模集成电路3、、、、计算机的类型计算机的类型计算机的类型计算机的类型按计算机用途分类:通用计算机和专用计算机按计算机规模分类:巨型机、大型机、小型机、微型机、工作站、服务器、嵌入式计算机按计算机处理的数据分类:数字计算机、模拟计算机、数字模拟混合计算机 1.1.4 计算机的特点及应用领域计算机的特点及应用领域计算机的特点及应用领域计算机的特点及应用领域计算机是一种能按照事先存储的程序,自动、高速地进行大量数值计算和各种信息处理的现代化智能电子设备。
计算机软件的技术要点和使用技巧
计算机软件的技术要点和使用技巧第一章编程语言与算法编程语言是计算机软件开发的基础,不同的编程语言适用于不同的应用场景。
在选择编程语言时,需要考虑语言的易学性、性能、生态系统等因素。
常用的编程语言有Java、C++、Python等,每种语言都有自己的特点和优势。
算法是解决问题的方法和步骤。
掌握常用的算法可以提高编写高效、优化的计算机软件的能力。
常见的算法有排序算法、查找算法、图算法等。
在实际应用中,选择合适的算法可以提高程序的运行效率和响应速度。
第二章数据结构与存储数据结构是组织和存储数据的方式,它直接影响着软件的性能和效率。
常见的数据结构有数组、链表、栈、队列、树、图等。
选择合适的数据结构对于实现特定功能或解决特定问题至关重要。
存储是计算机软件中数据的长期保存方式。
常用的存储技术包括关系型数据库、非关系型数据库、文件存储等。
在选择存储技术时,需要考虑数据的结构、访问模式、扩展性等因素。
第三章软件设计与开发软件设计是软件开发的核心步骤,它涉及到软件架构、模块划分、接口设计等方面。
合理的软件设计可以提高软件的可维护性和可扩展性。
常用的设计模式有单例模式、工厂模式、观察者模式等,它们提供了解决常见设计问题的标准化解决方案。
软件开发包括编码、调试、测试等环节。
编码阶段需要遵循编码规范和代码风格,保证代码的可读性和可维护性。
调试和测试是发现和解决软件问题的重要手段,通过合理的问题排查和测试用例覆盖可以提高软件的稳定性和质量。
第四章用户界面与交互设计用户界面是计算机软件与用户之间进行交互的界面。
良好的用户界面可以提升用户体验和用户满意度。
在设计用户界面时,需要考虑用户的习惯、心理需求、操作便捷性等因素。
合理的交互设计可以提高软件的易用性和用户黏性。
常用的用户界面设计技巧包括布局设计、色彩搭配、图标设计等。
布局设计应该考虑信息的层次性、可视区域的利用率等因素。
色彩搭配应该遵循品牌识别和用户心理需求。
图标设计需要简洁明确、直观易懂。
第一章计算机软件技术概述(精)
第一章计算机软件技术概述⏹了解以下知名公司的发展历史,掌握公司业务范围及主流产品的应用领域Microsoft、Apple、IBM、Oracle(Sun、Google、Adobe、Amazon、Symbian1.1 软件的组成要素1.2 软件技术的组成体系1.3 软件的主要属性与特点1.4 软件的工作与存储空间1.1 软件的组成要素⏹引子:使用计算机就是使用软件,我们会用到许多感兴趣的应用软件,而应用软件还需要一个“看不见的引擎”的支撑和驱动。
我们不能真正看到或触摸这个“引擎”—也称软件平台,但在现代产品中它却无处不在,有的甚至家喻户晓1、软件(Software的三要素⏹计算机软件:程序、数据及相关文档组成•文档(Document:指软件开发、维护和使用相关的图文资料,包括对软件程序和数据的描述等2、软件与程序⏹软件的组成中,程序和数据是主体,核心是程序。
有时软件和程序可以相互替换使用,并不严格区分,也有称软件程序⏹但要了解,两者区别是很明显⏹程序侧重描述软件实现的指令代码,并且源程序中的代码通常是可以阅读的,但是不能被计算机直接执行,而可执行程序的代码通常是无法被阅读的,但可以提交计算机执行。
从这个角度,我们所购买的软件只是程序的可执行版本而不是(软件的源代码⏹软件包含程序,其内涵与外延更广泛⏹计算机系统由软件与硬件组成。
硬件(Hardware作为有形、可触摸的物理设备构成一个“裸机”,须加载软件(即装入程序才能构成可以运行和发挥功用的计算机系统以服务于用户⏹计算机软硬件协同工作、相互支持、相互制约,推动着计算机应用的发展1.2 软件技术的组成体系⏹计算机软件技术是与软件开发及软件使用相关的理论和技术的总称。
软件使用体现软件在各行各业的具体应用⏹从学科角度,软件技术体系非常丰富、广泛,可概括为软件理论、软件系统及软件开发三大组成部分⏹软件系统由系统软件、支撑软件及应用软件组成,涉及软件整体含义的内容组成,不同软件根据其作用按不同的层次环绕硬件。
第1章 软件工程概述
因而软件成本相当昂贵;
(6)相当多的软件开发涉及到社会因素。
2017/10/26 第4页 软件工程
3、软件的分类:
(1)按功能分类 a、系统软件:支持计算机系统各个部件、相关的软件
和数据协调、高效地工作的软件。如:OS、DBMS、
DRIVER、COMMUNICATION-SYSTEM。 b、支撑软件:协助用户开发软件的工具性软件,文本 编辑软件。如:PSL/PSA(问题描述语言、问题描述分析 器)、图形软件包、预编译程序、静态分析程序。
是批处理还是人机交互,信息存储是采用文件系统还是数据库?),方案的级
别有:低、中、高等级,每种方案都用系统流程图或其它工具加以描述。推荐 一种方案。最后确定一种方案。 (4)完成的任务:可能的解法(每种解法的系统流程图和成本效益分析),推 荐的系统结构(层次图或结构图)。 总体设计结束的标志是提交总体设计说明书、数据库或数据结构说明书和 集成测试计划等文件。
软件工程
2017/10/26
第1页
软件工程
第一章 软件工程概述
软件 软件危机 软件工程
2017/10/26
第2页
软件工程
1.1 软
1、什么叫软件?
件
(1)广义软件:相对于有形物理实体,把技术条件、管理法
规以及人员素质等无形因素称为软件。 (2)计算机软件:是与计算机硬件相对应的计算机组成部分, 包括程序、数据及其相关文档的完整集合。 Boehm:“软件是程序以及开发、使用和维护程序所需的所有
2017/10/26
第6页
软件工程
(4)按功能软件服务对象分类 a、项目软件:受特定客户委托由一个或多个软件 开发机构在合同的约束下开发出来的软件。 b、产品软件:提供给市场的商品。
《计算机应用基础》精品课程电子教案
《计算机应用基础》精品课程电子教案第一章:计算机基础知识1.1 计算机概述计算机的定义与发展历程计算机的分类与性能指标1.2 计算机系统组成硬件系统:CPU、内存、输入输出设备等软件系统:系统软件、应用软件1.3 操作系统简介操作系统的功能与作用常见操作系统简介:Windows、Linux、macOS 1.4 计算机病毒与网络安全计算机病毒的定义与传播途径网络安全的基本概念与措施第二章:计算机软件与应用2.1 软件概述软件的定义、分类与开发过程软件版权与知识产权保护2.2 常用软件与应用办公软件:Word、Excel、PowerPoint等网络通信软件:QQ、、电子邮件等2.3 计算机编程基础编程语言的分类与选择常见编程语言简介:C、C++、Java、Python等2.4 计算机应用领域与案例科学计算与数据分析图形图像处理与多媒体应用与机器学习第三章:计算机网络基础3.1 计算机网络概述计算机网络的定义、功能与分类网络拓扑结构与传输介质3.2 网络协议与分层模型网络协议的定义与作用OSI七层模型与TCP/IP协议族3.3 局域网与广域网技术局域网:以太网、Wi-Fi等广域网:电话网、互联网等3.4 网络设备与网络配置网络设备的分类与功能:路由器、交换机、网卡等网络配置方法与技巧第四章:文字处理与办公自动化4.1 文字处理基础文字处理软件的基本操作字体、段落格式设置与排版4.2 表格制作与数据处理表格制作技巧与样式设置数据排序、筛选与公式应用4.3 演示文稿制作演示文稿软件的基本操作幻灯片设计、动画与放映4.4 办公自动化系统与实践办公自动化概述与分类常见办公自动化设备与软件应用第五章:网络通信与信息安全5.1 网络通信技术互联网接入方式与网络速度网络浏览、与5.2 电子邮件应用电子邮件的发送与接收管理、邮件分类与搜索5.3 信息安全概述信息安全的基本概念与威胁信息安全技术与管理措施5.4 网络安全实践与案例分析网络攻击手段与防范策略网络安全事件案例分析与启示第六章:计算机组装与维护6.1 计算机硬件系统主要硬件组件的功能与性能指标计算机组装的基本步骤与技巧6.2 计算机软件安装与升级操作系统安装的一般流程驱动程序的安装与更新软件升级与更新的方法6.3 计算机系统维护定期维护的重要性和方法清理磁盘和文件管理系统优化和性能检测6.4 计算机故障诊断与处理常见硬件故障的诊断与排除软件故障的常见表现与解决办法数据恢复原理与实践第七章:数据库基础与应用7.1 数据库概述数据库的基本概念数据管理系统的演变数据库系统的组成7.2 数据库设计与创建数据库设计的基本步骤创建数据库和表格设置数据类型和约束7.3 数据查询与操作SQL语言的基本查询语句数据更新、删除和插入操作高级查询技术7.4 数据库应用实例数据库在实际应用中的案例分析数据库管理系统的使用数据库应用开发流程第八章:程序设计基础8.1 程序与编程语言程序的基本概念编程语言的分类与特点程序设计的基本原则8.2 算法与逻辑结构算法的定义与特性常见算法设计与分析逻辑结构:顺序、选择、循环8.3 常用编程工具与环境集成开发环境(IDE)的使用代码编辑、编译与调试版本控制与协同开发8.4 编程实践与案例分析简单的编程案例:计算器、数据分析等面向对象程序设计的基本概念实际项目开发流程简介第九章:多媒体技术基础9.1 多媒体概述多媒体的基本概念多媒体技术的应用领域多媒体文件格式9.2 图像与音频处理图像处理基本技术音频文件格式与处理多媒体编辑软件的使用9.3 视频处理与动画制作视频文件格式与编码视频编辑与特效制作动画设计原理与软件9.4 多媒体应用案例多媒体演示文稿的制作数字故事讲述与多媒体教学交互式多媒体应用开发第十章:电子商务与互联网生活10.1 电子商务概述电子商务的基本概念与类型电子商务模式与交易流程电子商务的安全与法律问题10.2 网上购物与支付网上购物平台的使用电子支付系统的原理与实践网络安全支付的注意事项10.3 社交媒体与网络生活社交媒体的基本概念与影响社交媒体平台的应用网络生活的法律与道德规范10.4 互联网创业与就业互联网创业的基本条件与风险网络营销的基本策略互联网行业就业前景与趋势第十一章:计算机图形学与动画11.1 计算机图形学概述图形与图像的区别计算机图形学的应用领域图形处理的基本概念11.2 图形软件与工具常见的图形软件及其特点矢量图形与位图图形的处理动画制作软件与技术11.3 图形设计原则与技巧设计原则:统一性、对比性、重复性等色彩理论及其在图形设计中的应用图形设计的基本技巧11.4 动画原理与制作动画的基本类型与原理帧动画与补间动画的制作动画编辑与优化技巧第十二章:与机器学习12.1 概述的定义与发展历程的应用领域与挑战的基本技术12.2 机器学习基础机器学习的定义与类型监督学习与无监督学习的区别常见机器学习算法简介12.3 深度学习与神经网络深度学习的基本概念神经网络的结构与工作原理常用深度学习框架简介12.4 应用案例自然语言处理与应用计算机视觉与图像识别智能推荐系统与智能第十三章:云计算与大数据13.1 云计算概述云计算的定义与服务模型云计算的类型与优势云计算平台的选择与使用13.2 云存储与云服务云存储的基本概念与特点常见云存储服务及其比较云服务的安全性与隐私保护13.3 大数据概述大数据的定义与特征大数据处理的技术挑战大数据的应用领域13.4 数据分析与挖掘数据分析的基本方法数据挖掘的技术与流程数据可视化与报告第十四章:编程语言进阶与应用14.1 高级编程语言特性面向对象编程函数式编程并发编程14.2 编程语言选择与应用场景不同编程语言的特点与应用领域跨平台编程与框架现代编程语言的发展趋势14.3 软件开发方法与实践敏捷开发与Scrum方法持续集成与持续部署代码复用与模块化设计14.4 项目管理与协作工具项目管理的基本概念与方法版本控制系统的使用团队协作与沟通工具的选择第十五章:计算机伦理与社会责任15.1 计算机伦理计算机伦理的基本原则与问题网络安全与隐私权知识产权与数字鸿沟15.2 社会责任与法律规范网络行为规范与法律责任企业社会责任与可持续发展信息技术对社会的积极与消极影响15.3 信息技术教育与普及信息技术教育的意义与现状数字素养与终身学习信息技术在教育中的应用案例15.4 未来信息技术发展趋势信息技术发展的驱动因素未来计算技术的前景人类与机器的融合与挑战重点和难点解析本文主要介绍了《计算机应用基础》精品课程的电子教案,内容涵盖了计算机基础知识、软件与应用、网络基础、文字处理与办公自动化、网络通信与信息安全、计算机组装与维护、数据库基础与应用、程序设计基础、多媒体技术基础、电子商务与互联网生活、计算机图形学与动画、与机器学习、云计算与大数据、编程语言进阶与应用、计算机伦理与社会责任等十五个章节。
SE第1课-软件工程概述
是一个软件从用户需求开始,经过分析、开发、测试、运行维护 的一系列相关活动的全周期。
13
1.3 软件工程
软件的生命周期过程
14
1.3 软件工程
软件工程方法学
软件工程是技术与管理的紧密结合,技术是指方法学问题,管 理是指通过计划、组织和控制等活动,合理配置和使用各种资源, 得到满足质量要求的工作产物(运行系统和支持文档)。
结构化的软件过程模型
1 瀑布模型
特点 阶段的顺序性和依赖性 推迟实现的观点 文档驱动的质量保证
存在问题 不适合需求模糊的系统
17
1.3 软件工程
2 快速原型模型
快速原型方法
原型:
是系统的早期版本,是系统的物理模型,只 实现了系统的一些最基本的功能,反映系统的 行为特性,但不一定满足全部需求。
软件工具是一种自动化系统 用于软件生存周期的某一个阶段或某一个环节
25
1.4 软件工程环境
软件工程环境的定义:
是用以支持需求定义、程序生成,以及软件维护等 整个软件生命周期全部活动的,并把方法、规模和计 算机程序集成在一起的整个体系。 又称为软件开发环境,软件支撑环境,自动开发环境
需求:
集成化的系统 通用的系统 可剪裁又可扩充的系统 实用的、经济合算的系统
3) 组成:
面向对象分析(Object-Oriented Analysis, OOA) 面向对象设计(Object-Oriented Design, OOD) 面向对象程序设计(Object-Oriented Programming, OOP)22
1.3 软件工程
OOA:
任务:ห้องสมุดไป่ตู้析问题域,用相应的符号系统建立系统的概念模型; 通常从三个方面建立系统模型:
计算机软件基础知识要点总结
计算机软件基础知识要点总结第一章软件的概念和分类软件是指计算机程序和与之相应的文档等软件资料的总称。
根据软件的性质和用途的不同,可以将软件分为系统软件、应用软件和中间件。
系统软件是计算机硬件与其他应用软件之间的中介,它为应用软件提供所需的环境和支持。
应用软件是直接为用户提供各种功能和服务的软件,如办公软件、图形处理软件等。
中间件是位于系统软件与应用软件之间的软件层,提供高效的通信和数据交换手段,如数据库管理系统、消息中间件等。
第二章数据结构与算法数据结构是组织和存储数据的方式,包括线性结构(如数组、链表)、树状结构(如二叉树、图)和图状结构等。
算法是解决问题的方法和步骤,常见的算法有排序算法(如冒泡排序、快速排序)、查找算法(如顺序查找、二分查找)和图算法(如最短路径算法、拓扑排序算法)等。
掌握合适的数据结构和高效的算法可以提高软件的性能和效率。
第三章编程语言和开发工具编程语言是程序员用来书写计算机程序的语言,常见的编程语言有C、C++、Java、Python等。
不同的编程语言有不同的语法和特性,根据实际需求选择合适的编程语言。
开发工具是帮助开发人员进行程序开发和调试的软件,如集成开发环境(IDE)、调试器等。
熟练掌握编程语言和开发工具是软件开发的基础。
第四章软件开发流程软件开发流程是指将软件从概念到交付使用的整个过程,常用的开发流程有瀑布模型、迭代模型和敏捷开发等。
瀑布模型是将软件开发过程划分为需求分析、系统设计、编码、测试和维护等阶段,按顺序依次执行。
迭代模型是将软件开发过程划分为多个迭代周期,每个迭代周期包括需求分析、系统设计、编码、测试和维护等阶段。
敏捷开发是一种迭代增量的软件开发方法,着重于快速响应变化和快速交付可用的软件。
第五章软件测试与质量保证软件测试是为了发现程序中存在的错误和缺陷,以提高软件的质量和可靠性。
常见的软件测试方法包括单元测试、集成测试、系统测试和验收测试等。
单元测试是对程序的最小可测单元进行测试,集成测试是将多个模块进行组合测试,系统测试是对整个系统进行功能和性能的全面测试,验收测试是由用户对软件进行测试和确认。
计算机大一每章知识点
计算机大一每章知识点第一章:计算机基础概述计算机的定义与发展历史计算机硬件与软件的基本概念计算机的工作原理及层次结构第二章:计算机硬件基础计算机内部各部件的功能与作用中央处理器(CPU)的结构与工作原理存储器(内存)与存储技术输入与输出设备及其分类第三章:计算机软件基础计算机软件的分类与特点系统软件与应用软件的定义与区别操作系统的功能与作用常见的操作系统类型与特点第四章:数据表示与处理二进制与十进制的转换计算机中的数据表示方式整数与实数的存储与运算字符与字符串的表示与处理第五章:程序设计基础算法与流程图的概念与表示方法常用的编程语言及其特点基本的编程思路与编程方法常用的程序结构与语句第六章:计算机网络基础计算机网络的定义与分类局域网与广域网的区别与特点网络通信协议与常用的网络协议互联网的发展与应用第七章:数据库基础数据库的概念与特点常见的数据库模型与体系结构关系数据库与SQL语言的基本操作数据库的设计与管理原则第八章:操作系统基础操作系统的功能与特点进程与线程的概念与管理内存管理与文件系统的实现常见的操作系统与其特点第九章:计算机安全基础计算机安全的概念与重要性常见的计算机安全威胁与攻击手段密码学与信息加密技术网络安全与个人信息保护的方法第十章:多媒体技术基础多媒体的概念与特点数字图像与音频的表示与处理视频与动画的基本原理与编码方法多媒体技术在各领域的应用以上是计算机大一每章知识点的简要概述,希望对您有所帮助。
在学习过程中,建议您结合教材和课堂实践进行深入学习与理解,以帮助您掌握计算机基础知识,为日后的学习与工作奠定扎实的基础。
计算机软件技术范文
计算机软件技术范文计算机软件技术是指用于设计、开发、测试、维护计算机软件的一系列技术和方法。
软件技术是计算机科学的一个重要分支,也是现代信息技术的基础之一、它涵盖了许多领域,包括软件工程、软件测试、软件架构、软件设计模式、软件开发方法论等等。
本文将从软件开发的角度来介绍计算机软件技术。
首先,软件工程是计算机软件技术的一个重要分支。
它研究如何管理软件开发过程,包括项目管理、需求分析、软件设计、编码、测试、发布等各个阶段。
软件工程的目标是提高软件开发的效率和质量,减少软件开发过程中的风险和成本。
为了达到这个目标,软件工程提出了一系列的方法和工具,如敏捷开发、迭代开发、面向对象设计等,这些方法和工具都是为了帮助开发人员更好地组织和管理软件项目。
其次,软件测试是保证软件质量的一个重要环节。
软件测试是指通过运行软件的一系列测试用例,检查软件的功能是否符合设计要求,是否存在缺陷和错误。
软件测试需要根据软件的需求和功能设计相应的测试用例,通过功能测试、性能测试、安全测试等一系列测试手段来验证软件的质量和稳定性。
在软件测试过程中,可以运用自动化测试工具来提高测试效率和测试覆盖率,减少人为错误。
再次,软件架构是软件系统的“蓝图”,它定义了软件系统的结构和组成,以及各个组件之间的关系和依赖。
软件架构可以帮助开发人员将复杂的软件系统分解为可管理的模块,更好地组织软件开发工作。
同时,软件架构也决定了软件系统的性能、可扩展性和可维护性等方面的特性。
为了设计出优秀的软件架构,开发人员需要了解不同的架构模式和设计原则,并根据实际需求选择合适的架构。
此外,软件开发方法论也是软件技术的重要组成部分。
开发方法论是一套规范和指南,用于组织和管理软件开发工作。
常见的软件开发方法论有瀑布模型、敏捷开发、迭代开发等。
瀑布模型是一种传统的开发方法,它将软件开发过程分为需求分析、设计、编码、测试和维护等几个阶段,各个阶段按照顺序进行,每个阶段的输出作为下一个阶段的输入。
计算机软件技术基础
第2页
无所不在的嵌入式家族
第3页
养在深闺的巨型计算机
世界上最快的计算机 IBM的Blue Gene/L ,
拥有超过100万个处 理器,每个处理器每 秒可运算10亿次。运 算能力相当于击败国 际象棋世界级棋手的 超级电脑“深蓝”的 1000倍。占地达两个 篮球场之大,重达 106吨。
第 21 页
1.5 操作系统
没有安装任何软件的计算机称为裸机。 操作系统是直接运行于裸机之上的系统软件,
它负责对计算机系统的各种软硬件资源进行 管理和分配,为用户提供友好的计算机使用 界面和平台。 在裸机上配置操作系统之后就构成了操作系 统虚拟机。 所有其它的程序都在扩充后的机器上运行。
第 22 页
程序:是使计算机完成某种任务的一个有序的命令(指 令语句)和数据的集合。
写程序就像写文章,要解决两个问题: 1.明确自己要表达的是什么 2.用一种语言把它表达出来
程序设计语言是编写计算机程序所用的语言。 程序设计语言发展的三个阶段:
机器语言→汇编语言→高级语言
第 15 页
1.3 程序设计语言
机器语言 是机器指令的集合,其代码由0、 1组成的二进制串表示,不需翻译可直接为 机器所接受。
第 31 页
结构化程序设计
强调使用程序的三种基本控制结构(顺序、 选择和循环 ),有限制地使用goto语句。
第 32 页
第4页
1、计算机硬件及发展
什么是硬件? 硬件是组成计算机系统的所有电子的、机
械的、磁性的、光学的装置和部件。 配置一台计算机需要购买哪些东西? 存储程序式计算机的工作原理 5大部件:
(运算器+控制器)+存储器+输入设备+输出设备
02316计算机应用技术第一章
第一章计算机及其应用概述第一节计算机的发展历史一、计算的概念计算就是映射或基于规则的符号串的变换过程。
算法是求解某类问题的通用法则或方法,即符号串变换的规则。
二、计算工具的发展人类社会很早就有了各种各样的计算工具,纵观计算工具的发展历史,经过了算筹、算盘、计算尺、机械计算机、电子管计算机、晶体管计算机、大规模和超大规模集成电路计算机等多个阶段,继而又在生物计算、光计算、量子计算等方面进行新的探索。
计算工具发展的动力,主要来自两个方面的需求:一是提高计算的速度和精度;二是使计算更方便,降低计算的成本,减小计算工具的体积。
1.手工计算阶段算筹,算筹是由木头或竹子做成的小木棍,多个长短粗细相同的小木棍可以通过纵横相间的摆放来表达超过十的数字。
算盘是另一种用来扩展手指运算功能的计算工具。
中国很早就出现了算盘,配套有完整的运算口诀和操作方法。
口诀是针对算盘结构特点设计的基本操作规则,算盘从中国传到了日本、朝鲜、东南亚、西亚和欧洲,成为使用最广泛、价格最低廉的计算工具。
17世纪出现了计算尺。
它是一种可滑动的尺子,以长度来模拟运算数字,除了能进行简单的四则运算外,还能进行三角函数、对数等比较复杂的运算。
2.机械计算阶段1642年,法国人帕斯卡发明了用齿轮计算的机械加法器。
1666年,英国人莫兰发明了可以进行加减运算的机械计算器。
1673年,德国人莱布尼兹改进帕斯卡的设计在机械计算器中增加了乘除运算。
1822年,英国人巴贝奇首先提出计算过程自动化的概念设计出了第一台通用自动时序控制机械式计算机,称为“巴贝奇差分机”。
这台机器不仅自提高乘法速度,而且改进了对数表等数字表的精确度。
巴贝奇研制的差分机和分析机为现个计算机设计思想的发展奠定了基础。
3.电子计算阶段20世纪电子技术和电子元器件不断发展,为电子计算机的诞生奠定了基础,尤其是军事对于计算能力的巨大需求,促使大量的人力物力投入到电子计算机的研究开发之中。
1946年2月,在美国宾夕法尼亚大学诞生了世界上第一台真正意义上的电子计算机ENIAC(Electronic Numerical Integrator And Computer,电子数字积分计算机)。
计算机软件功能与应用解析
计算机软件功能与应用解析第一章基本概念及功能计算机软件是指由程序、数据及相关文档组成的数据处理指令集合。
在计算机系统中,软件起到了非常重要的作用,它决定了计算机的功能和性能。
计算机软件可以分为系统软件和应用软件两大类。
1.1 系统软件系统软件是一种控制和管理计算机硬件及其他软件的程序集合。
其主要功能包括:- 操作系统:负责管理计算机硬件和软件资源,提供对硬件的直接控制和管理。
- 设备驱动程序:负责控制和管理计算机外部设备的功能,如打印机、鼠标等。
- 中间件:用于构建分布式系统,实现异构环境下的信息交流和数据共享。
- 虚拟机:创建一个模拟的计算机环境,实现软件在不同平台上的运行。
1.2 应用软件应用软件是一种根据用户需求而开发的具有特定功能的程序集合。
其主要功能有:- 办公软件:用于处理文档、电子表格、幻灯片等办公工作。
- 图形图像软件:用于图像处理、图形设计、图片编辑等。
- 数据库管理软件:用于存储、管理和处理大量数据。
- 多媒体软件:用于音频、视频的录制、编辑和播放。
- 游戏软件:提供用户娱乐和休闲的电子游戏。
第二章软件开发与设计2.1 软件生命周期软件生命周期是指软件从计划、开发、测试、发布、维护到退役等各个阶段的过程。
其中主要包括需求分析、系统设计、编码、测试和维护等环节。
2.2 软件开发方法- 瀑布模型:按照阶段顺序一次进行软件开发过程。
- 敏捷开发:采用迭代和增量的方式进行软件开发,强调与用户的合作和快速响应变化。
- 原型模型:通过迭代的方式不断改进软件设计,直至用户期望满足。
2.3 软件设计原则- 开闭原则:软件应该对扩展开放,对修改关闭。
- 单一职责原则:一个类应该只有一个引起它变化的原因。
- 里氏替换原则:子类必须能够替换掉父类。
- 接口隔离原则:不应该强迫客户依赖于它们不用的接口。
- 依赖倒置原则:高层模块不应该依赖于底层模块,二者都应该依赖于抽象。
第三章软件的应用领域3.1 商业领域商业领域是软件应用最为广泛的领域之一。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章计算机软件技术概述⏹了解以下知名公司的发展历史,掌握公司业务范围及主流产品的应用领域Microsoft、Apple、IBM、Oracle(Sun、Google、Adobe、Amazon、Symbian1.1 软件的组成要素1.2 软件技术的组成体系1.3 软件的主要属性与特点1.4 软件的工作与存储空间1.1 软件的组成要素⏹引子:使用计算机就是使用软件,我们会用到许多感兴趣的应用软件,而应用软件还需要一个“看不见的引擎”的支撑和驱动。
我们不能真正看到或触摸这个“引擎”—也称软件平台,但在现代产品中它却无处不在,有的甚至家喻户晓1、软件(Software的三要素⏹计算机软件:程序、数据及相关文档组成•文档(Document:指软件开发、维护和使用相关的图文资料,包括对软件程序和数据的描述等2、软件与程序⏹软件的组成中,程序和数据是主体,核心是程序。
有时软件和程序可以相互替换使用,并不严格区分,也有称软件程序⏹但要了解,两者区别是很明显⏹程序侧重描述软件实现的指令代码,并且源程序中的代码通常是可以阅读的,但是不能被计算机直接执行,而可执行程序的代码通常是无法被阅读的,但可以提交计算机执行。
从这个角度,我们所购买的软件只是程序的可执行版本而不是(软件的源代码⏹软件包含程序,其内涵与外延更广泛⏹计算机系统由软件与硬件组成。
硬件(Hardware作为有形、可触摸的物理设备构成一个“裸机”,须加载软件(即装入程序才能构成可以运行和发挥功用的计算机系统以服务于用户⏹计算机软硬件协同工作、相互支持、相互制约,推动着计算机应用的发展1.2 软件技术的组成体系⏹计算机软件技术是与软件开发及软件使用相关的理论和技术的总称。
软件使用体现软件在各行各业的具体应用⏹从学科角度,软件技术体系非常丰富、广泛,可概括为软件理论、软件系统及软件开发三大组成部分⏹软件系统由系统软件、支撑软件及应用软件组成,涉及软件整体含义的内容组成,不同软件根据其作用按不同的层次环绕硬件。
上述也是一种常用软件分类方法1、系统软件⏹系统软件属于基础软件(1面向系统并为整个计算机系统服务(2面向用户的应用软件及中间件等须通过它发挥作用⏹操作系统(Operating System是主要系统软件(或软件平台,Platform,是最贴近硬件、最基础的一层软件,与具体应用领域无关,其他任何软件都依赖于它⏹OS影响着计算机系统的稳定性、可靠性⏹操作系统或软件平台对计算机(及各种信息设备和产品的运行起着非同寻常的作用,是计算机中的“看不见的引擎”⏹从微处理器的视角看,计算机平台中,操作系统是CPU接收指令的唯一程序,其他任何程序都通过OS与CPU打交道⏹操作系统是非常复杂的软件(程序,通常由一个“内核”和其他程序模块组成,负责计算机软硬件资源的分配与调度、程序的执行,涉及进程管理、内存管理、设备管理、文件管理、网络支持及安全管理等,我们使用计算机时所必须安装和感知的第一个软件即OS(OS界面⏹示例:操作系统(OS是最主要系统软件,用户首先选择和安装的软件⏹语言处理系统也是一类重要的软件,有人将其归类为系统软件,也有单独划为编程软件,是软件开发者所关心的用于创建、调试、维护应用软件的工具,主要涉及:⏹为什么需要语言处理系统?应用软件(程序基于某高级语言编制而成,但要让软件能被计算机理解、执行,就需要借助语言处理系统的翻译处理⏹最常用语言处理系统有:即编译系统(或称为编译程序、编译器及解释系统(或称为解释程序、解释器⏹编译程序(Compiler:将高级语言书写的程序(源程序翻译成等价的低级语言(机器或汇编语言程序(称为目标程序,Object program的计算机程序(软件⏹高级语言程序被处理后生成的目标程序不能直接执行,还需链接程序(Chain Program以生成可执行程序⏹解释程序(Interpreter:直接翻译(转换为机器码并执行某种语言编写的源程序指令的计算机程序⏹与编译程序的工作模式不同,解释程序采用类似外语现场“口译”中的边说边翻译的工作模式,解释程序对源程序处理后并不产生一个独立的目标程序而是输出执行计算结果⏹2、支撑软件:支撑软件开发、维护与运行的一类专业软件。
此类软件较广泛的是中间件(Middleware,可理解为介于OS与应用软件之间的软件⏹3、应用软件(Application Software:指面向具体业务和应用领域的软件⏹计算机应用很大程度取决于应用软件为终端用户带来效率的提高,其他的软件都服务于应用软件,提供支持⏹操作系统作为软件平台搭起应用软件与硬件沟通的桥梁⏹软件平台聚集各种应用软件开发者及终端用户,还吸引中间件(开发者为应用软件开发者提供各种支持帮助⏹示例:应用软件可以基于不同的操作系统(软件平台,对比手机和个人电脑平台⏹应用程序编程接口(API,Application Programming Interface:操作系统对终端用户和应用程序(软件支持模式不同⏹应用程序是应用程序(软件开发商提供给终端用户的产品和服务,程序开发人员或者应用程序通过OS所提供的各种应用程序编程接口获取OS 服务,以便更有效开发面向终端用户的各种软件产品⏹Java是当今极具竞争力的热门技术,其核心构成包括Java语言、JVM及Java API,Java平台(JVM和Java API能够嵌入所有OS平台中。
基于Java平台这种跨平台特点,Java应用程序只需编译一次,即可在各种计算机系统运行,即实现“write once,run anywere”1.3 软件的主要属性与特点⏹软件的抽象性(无形性⏹软件的复杂性(知识性⏹软件的开发模式(手工⏹软件的知识产权(盗版⏹软件项目与产品(群体1、软件的抽象性⏹一方面软件是一种无形的、不可触摸、不会产生“磨损”的信息产品和逻辑产品(“比特bit”集,但通过其载体及运行呈现的界面被用户感知、传播和使用⏹另一方面,软件只有装入计算机中,并运行和使用,才能确定其提供的功能是否满足需要、是否好用(用户体验⏹用户通过软件(界面,Interface使用计算机硬件的功能。
软件界面历经不断改进和发展,使用软件使用更容易、更方便、更人性化,促进了计算机的普及示例:不同软件界面展示与启示(图略示例:同一软件界面发展(图略⏹1990年2月Photoshop 1.0正式发布:当时只能运行在苹果的麦金塔电脑上⏹20年之后(2010年2月,历经不断升级、更新换代,从2.0、3.0等直到CS、CS2、CS3到CS5(平均1到2年示例:软件程序图标、文件及其运行模式⏹源程序或可执行程序都是以文件的形式存储于计算机存储体中(硬盘等,这也是用户可感知软件程序(文件存在的方式,只是不同软件平台(OS中的文件管理系统(模块所呈现文件方式有很大的不同,如早期DOS的字符模式与当今流行的Windows中的图标模式⏹可执行程序的文件扩展名通常为.exe⏹如文字处理程序Word 2003、浏览器程序都是最常用的程序文件,它们的文件名分别为winword.exe和iexplore.exe,DOS与Windows下的显示、运行对比如下(图略2、软件的复杂性⏹软件是人们(软件开发团队通过大量的脑力劳动,把知识与技术转化为信息产生的知识性产品,这个转化的过程称为软件开发。
软件的复杂性源自于问题和任务本身及软件开发过程的复杂⏹“当越来越多的功能组件加入OS,并且硬件的性能随之逐渐增强时,OS大小和复杂性也在不断升级”3、软件的开发模式⏹迄今软件开发几乎完全依赖人类手工模式完成,尽管有软件工程、自动化工具辅助与支撑,以及软件开发团队协作在一定程度上可以提高开发效率⏹软件开发的工作量大、周期长且成本高昂,工作辛苦乏味,极具挑战性⏹如操作系统(OS:从概念形成、架构、开发实现到发布通常需要历时数年⏹对于应用软件:希望能在连续几代的操作系统上工作,操作系统平台改变必须尽可能保持软件的“后向兼容性”⏹专有操作系统或专有软件(商业软件等开发是采用软件公司团队的集中式、市场与商业利益驱动模式,开发成本用户埋单商业软件价格是个敏感话题。
与硬件价格的不断下降相比,软件价格并未同步下降而开源软件则是基于“软件自由”的信仰和源代码公开,从而实现“免费软件”目标,它通常是依赖互联网、吸收全世界各地的程序员的非集中式软件开发(生产)方式专有软件如Windows操作系统数千万行代码是一个被严守的商业秘密,至今只有被严格审查的少数外部人员在高度机密的条件下才能看到其源代码。
而开源软件的源代码是完全公开的,任何人可免费获取“开源”是指参与者所编写的软件程序的源代码完成后,要公开最后的程序代码,用户可免费获取开源软件(包括源代码)但要受GPL(通用公共许可证)的限制:“如果你发行的工作全部或者部分包含或来源于开源程序及它的衍生产品,那么你必须将它免费授权给任何的遵循这一协议的第三方”(自由软件基金会FSF)最成功的开源软件平台:Linux操作系统(最早是由芬兰赫尔辛基大学的学生Linus Torvalds编写的,1991年),当今OS领域的“没有所有者的新挑战者” Apache服务器(软件):也是最成功、最著名的开源项目之一、最流行的Web服务器软件(最早由美国国际超级计算机应用中心NCSA 编写,National Center for Supercomputing Applications)开源软件是自愿者出于兴趣、提高编程和开发技能、对“自由”的向往、探索、挑战及荣誉等非物质的动机在空闲时间进行的 GPL强制实施机制的意义:“保证了没有人能够通过在集体知识产权上加上一点私有知识产权就把整个软件变成了私有产品” 基于开源软件的商业模式:如通过支持Linux,增加硬件、专有软件和服务的销售 4、软件的知识产权(Intellectual Property)软件一旦开发完成,可以反复拷贝和使用,其复制和传播的成本极为低廉软件拥有者收益受软件盗版影响很大(还有同类软件市场竞争等因素)(1)发售难辨认的机器码(反编译困难)(2)版权(授权)、专利等法律形式以保护合法使用和阻止知识产权被窃用 5、软件的项目属性和产品属性软件项目(Project):有的软件将只是针对某个特定用户的开发软件产品(Product):有的则是面向某一类广泛用户群体的开发 1.4 软件的工作与存储空间(Storage Space)存储系统层次化是指把不同速度、不同容量、存储技术也不同的存储设备分为若干层,共同组成一个面向CPU的整体存储系统,且具有最好的性能价格比,即拥有足够大的存储空间,能保证匹配CPU的存取访问速度,并且价格适中组成:寄存器、高速缓存、内存和辅存(速度、受访频度、价格递减,而容量递增)。