当前位置:文档之家› 软件技术基础知识

软件技术基础知识

软件技术基础知识
软件技术基础知识

软件技术基础知识

第一章

1、算法和算法的特点

2、数据结构:指相互关联的数据元素的集合。

数据结构分为逻辑结构和物理结构。逻辑结构:表示了数据的逻辑关系(前后件关系)。按照逻辑关系的不同分为:线形结构和非线形结构。

物理结构:表示了数据在计算机上的存放形式,也称存储结构。按照存放形式的不同分为:顺序存储和链式存储。

3、线形结构的条件:

4、线形结构通常称之为线性表。顺序存储的线性表称为顺序表,链式存储的线性表称为线性链表。

5、对与空的数据结构可以为线性结构也可以为非线性结构。

6、顺序表和线性链表的特点。

7、栈和队列的特点。

8、栈和队列可以采用顺序存储也可以采用链式存储。

9、双向链表和循环队列。

10、树和二叉树

11、二叉树的基本性质

①第k层最多具有的结点数。

②深度为k的二叉树最具有的结点数。

③任何二叉树对为0的结点数和度为2的结点数的关系。

12、满二叉树的特点。

13、完全二叉树的特点。

14、二叉树的遍历

15、顺序查找适用的情况。对长度为n的线形表进行顺序查找最坏的情况需要查找的次数。

16、二分法查找适用的情况。对长度为n的线形表进行二分法查找最坏的情况需要查找的次数。

17、排序的分类。

交换类排序:冒泡排序法,最坏的情况需要比较的次数。

插入类排序法,堆排序法。

第二章

1、编程的良好习惯要求:根据需要添加相应的注释,应该有良好的视觉组织,在完成功能的前提下,优先考虑可读性和清晰性,然后在考虑效率。

2、注释的分类:序言性注释和功能性注释。

3、结构化程序设计的原则。

4、结构化程序设计的基本结构。

5、对象是属性和行为的封装体。

6、对象的基本特点:标识唯一性,分类性,多态性,封装性,摸快独立性。

7、类和实例之间的关系。

类是具有共同属性和方法对象的集合,是关于对象的抽象,一个具体

的对象则称之为类的一个实例。

8、消息。

9、继承、多态性。

第三章

1、软件的定义及软件的特点

软件是程序、数据及相关文档的集合。

特点:

2、软件危机是开软件过程中所遇到的一系列的严重问题。

3、软件工程的3要素:方法,工具,过程。

4、软件工程研究的目标:软件开发技术和软件工程管理。

5、软件生命周期。

6、软件生命周期的几个阶段。

软件生命周期分为软件定义期,软件开发期,运行维护期3个时期。软件定义期:问题定义,可行性研究,需求分析。

软件开发期(软件设计):概要设计和详细设计。

7、需求分析是发现和了解目标用户的需求,进而确定软件的功能,建立相应的需求模型。

8、需求分析阶段的工作分为:获取需求,需求分析,编写需求规格说明书和需求评审。

需求规格说明书的作用。

9、在需求分析阶段中使用分析方法有:结构化分析方法和面向对象的分析方法。

10、结构化分析方法的分析工具:数据流图(DFD),数据字典(DD)。

11、数据流图是用一些图形符号来表示程序中数据流向的一个工具。数据流图的图形元素:数据流,加工,存储文件,源和潭。12、数据字典的作用是对数据流图里面出现的图形符号进行定义和详细解释说明的。

13、数据流类型分为:事物型和变换型。

14、模块独立性:耦合和内聚性。优秀的软件应该是高内聚,低偶合。

15、概要设计的任务:把需求分析阶段确定的软件功能进行分解,分解为各个相应的几个模块。

16、详细阶段的任务:确定每个模块的具体实现算法和细节。

16、详细阶段的工具:程序流程图,判定表,pdl.

程序流程图的图形符号。

17、软件测试的目的,及原则。

18、软件测试的分类

按照是否执行被测试软件分为:静态测试和动态测试。

按照功能来划分:黑盒测试和白盒测试。

白盒测试就是根据程序的内部逻辑结构来完成软件的功能测试。

黑盒测试就是完全不考虑内部逻辑结构的一个功能测试。黑盒测试方法分为:等价类划分法,边界值分析法,错误推测法,因果图。19、软件测试的4个步骤及作用,依据。

单元测试:以模块为单位的测试,主要发现模块内部的错误。主要包括:模块接口测试、局部数据结构测试、路径测试、错误处理测试、

边界测试

集成测试:把模块组装起来进行的测试。主要发现模块间的接口错误。依据是概要设计说明书。

确认测试:验证软件是否满足软件规格说明书。

20、软件调试的目的。

21、软件调试的方法:

归纳法调试,是一个需要思考的过程。归纳,是一种特殊的思考过程,可以从细节转到全局,即:从线索除法,寻找线索之间的联系。也就意味着:从特殊到一般。归纳调试的步骤可以概括为以下一个图,在此就不再详叙。

演绎法调试,也是一个需要思考的过程。演绎,是从一些普遍的理论或前提除法,使用排除和精炼的过程,达到一个结论,即:错误的位置。其步骤也可以通过一个图来概述,在此就不再详叙。

回溯法调试,也是一个需要思考的过程。它常用于小型程序中来定位错误。它是沿着程序的逻辑结构回溯不正确的结果,直到找出程序逻辑错误的位置,即:从程序产生不正确结果的地方开始,从该处观察到的结果推断出程序变量应该是些什么值。所以使用这个过程,可以确定程序中从状态符合预期的位置点,到第一个状态不符合预期值的位置点之间的范围。

测试法调试,也是一个需要思考的过程。它是要使用测试用例来调试。而测试用例可分两类:供测试的测试用例;供调试的测试用例。(注意两者的不同之处。)不过,该方法不是一个完全独立的方法。

它常常与归纳法一起使用,以获得进行假设和/或证明假设所需的信息;它也可以和演绎法一起使用,以排除有嫌疑的原因,提炼剩下的假设,并/或证明假设。

22、软件可靠性是软件在给定的时间间隔及给定的环境条件下,按设计要求,成功地运行程序的概率

第4章

1、数据,数据库,信息,数据库系统,数据管理发展经历的几个阶段及特点。

2、数据库系统的特点。

3、数据库的数据独立性。

4、数据库系统的3级模式

概念模式(模式):全局数据逻辑结构的描述,全体用户的公共数据视图。

外模式(子模式):局部逻辑结构的描述,是用户所能看到的模式。内模式(物理模式):数据库物理存户结构和存取方法的描述。例如:索引,存储路径。

5、E-R模型的概念及表示工具。

6、关系数据模型

7、关系运算

并叉交,选择,投影,联接,笛卡尔积及特点。

8、数据库设计包括两方面内容:概念设计和逻辑设计。

概念设计的目的:分析数据内在的语义关系,建立概念数据模型E-R

模型。

逻辑设计的目的:把E-R模型转换成相应的关系模式。E-R图中的实体,联系可以转换成关系,属性可以转换成关系的属性。

软件技术基础教学大纲

《软件技术基础》教学大纲学时数:40 学分数: 2.5 开课学期:第4学期 先修课程:《C语言》 考核方式:笔试(闭卷) 执笔者:沈晓峰编写日期:2015年3月审核人(教学副院长): 一、课程性质和目标 授课对象:电子信息工程专业大学二年级本科生 课程类别:学科拓展课程 教学目标: 本课程是针对工科电子信息类本科生开设的一门学科拓展课程。着重培养学生在软件设计领域的基本素质,基本方法和设计理念。授课对象为大学二年级学生,课程任务是通过本课程的学习和相关实验的练习,使学生掌握数据结构、操作系统等软件技术的基本理论知识,具有一定的软件开发能力。 二、教学内容和要求 1、课堂理论教学要求和学时安排(32学时) 1)C程序设计(4学时) (1)C语言回顾,指针的基本概念、运算方法和使用(2学时)。 (2)结构体的基本概念和使用方法(2学时)。 2)数据结构(20学时) (1)数据结构的基本概念(2学时):理解数据结构的基本概念;理解线性和非线性结构的概念。 (2)线性数据结构(9学时):理解表、栈、队列等线性数据结构的概念,存储方式及基于不同存储方式的相关操作的实现方法。 a.理解表的概念及顺序表的存储特点,掌握其创建、插入、删除等实现方法(2 学时); b.掌握单链表、双链表、循环链表的创建、插入、删除方法(2学时); c.理解栈的概念及结构特点,掌握顺序栈及链栈的出栈、入栈操作的实现方法 (2学时); d.理解队列的概念及特点,掌握顺序、循环队列的创建、出队、入队、判空、判满等操作。掌握链队列的创建及出队、入队(2学时); e.理解数组的概念及二维数组的存放方式,掌握对称矩阵及稀疏矩阵的压缩存储方法(1学时)。

软件技术基础教学大纲

《软件技术基础》教学大纲 课程编号:23000840 适用专业:电子信息类(非计算机专业) 学时数: 40 学分数: 2.5 开课学期:第4学期 先修课程:《C语言》 考核方式:笔试(闭卷) 执笔者:沈晓峰编写日期:2015年3月审核人(教学副院长): 一、课程性质和目标 授课对象:电子信息工程专业大学二年级本科生 课程类别:学科拓展课程 教学目标: 本课程是针对工科电子信息类本科生开设的一门学科拓展课程。着重培养学生在软件设计领域的基本素质,基本方法和设计理念。授课对象为大学二年级学生,课程任务是通过本课程的学习和相关实验的练习,使学生掌握数据结构、操作系统等软件技术的基本理论知识,具有一定的软件开发能力。 二、教学内容和要求 1、课堂理论教学要求和学时安排(32学时) 1)C程序设计(4学时) (1)C语言回顾,指针的基本概念、运算方法和使用(2学时)。 (2)结构体的基本概念和使用方法(2学时)。 2)数据结构(20学时) (1)数据结构的基本概念(2学时):理解数据结构的基本概念;理解线性和非线性结构的概念。 (2)线性数据结构(9学时):理解表、栈、队列等线性数据结构的概念,存储方式及基于不同存储方式的相关操作的实现方法。 a.理解表的概念及顺序表的存储特点,掌握其创建、插入、删除等实现方法(2 学时); b.掌握单链表、双链表、循环链表的创建、插入、删除方法(2学时); c.理解栈的概念及结构特点,掌握顺序栈及链栈的出栈、入栈操作的实现方法 (2学时);

d.理解队列的概念及特点,掌握顺序、循环队列的创建、出队、入队、判空、判满等操作。掌握链队列的创建及出队、入队(2学时); e.理解数组的概念及二维数组的存放方式,掌握对称矩阵及稀疏矩阵的压缩存储方法(1学时)。 (3)非线性数据结构(5学时):了解典型非线性数据结构的基本概念、存储和访问方式。 a.理解二叉树、满二叉树、完全二叉树的概念及基本性质(1学时); b.掌握二叉树的三种遍历算法、树和二叉树的转换方法(2学时); c.理解图的基本概念及性质,掌握图的邻接矩阵、邻接图存储方式(2学时)。 (4)结构查找和排序(4学时):理解查找和排序的基本概念,掌握三种查找(顺序、二分、分块)和三种排序(简单插入,简单选择和冒泡)方法和实现。 3)操作系统(8学时) (1)操作系统的基本概念(2学时):了解操作系统的基本概念,操作系统发展的历 程和现代操作系统的基本特征。 (2)处理机管理(4学时);理解进程、进程的状态、描述方式、进程控制的手段, 进程的同步和互斥,进程通信和死锁等基本概念,理解进程调度的相关方法。 (3)作业管理(2学时):理解作业、作业的状态、描述方式、作业控制的手段,等 基本概念,理解作业调度的相关方法。 通过这一章的学习同学们应该理解一个用户作业提交给计算机之后,操作系统控制计算机来执行该用户作业的基本流程。 2、实验安排(8学时) 共设置5组实验,分为上机实验和课外实验两部分:上机实验包括两个实验,课外实验包括3个实验,详细实验内容见实验教学大纲。 三、考核方式 课程最后成绩构成包括:期末考试卷面成绩(70%),平时成绩(10%),实验成绩(20%)。 实验部分的考核包含上机实验和课外实验,实验成绩采用实验出勤、实验考核、实验报告和实验程序验证相结合的方式给出。 四、教材和参考资料 1、教材 《软件技术基础》,黄迪明,电子科技大学出版社,1998年 2、参考资料

计算机软件技术基础(第三版)习题答案

第一章 1.1什么是信息?信息与数据的区别和联系在何处? 信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。 信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。 与数据的区别和联系: 数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。 我们把这些数据收集起来,经过处理后,即得到人们需要的信息。 信息和数据的关系可以归结为: 1.信息是有一定含义的数据。 2.信息是经过加工(处理)后的数据。 3.信息是对决策有价值的数据。 1.2信息有哪些基本属性? 信息的基本属性有: 1.事实性。 2.等级性。 3.可压缩性。 4.可扩散性。 5.可传输性。 6.共享性。 7.增值性和再生性。 8.转换性。 1.3计算机的主要特点是什么? 计算机最主要的特点是: 1.高速自动的操作功能。 2.具有记忆的能力。 3.可以进行各种逻辑判断。 4.精确高速的计算能力。 1.5完整的计算机系统应该包括哪几部分? 目前最完整的计算机系统学说认为由五部分组成: 1.人员 2.数据 3.设备 4.程序 5.规程 1.6什么是计算机硬件?什么是计算机软件? 硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。 微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。 软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。 计算机软件一般分为系统软件和应用软件。 1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?

第一阶段:高级语言阶段 特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。 硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。 第二阶段:结构程序设计阶段 特点:在程序的正确性方面,提出了结构化程序设计思想使程序的可靠性提高了。 程序设计方法论方面,提出由顶向下法和自底向上法。使程序模块 化,使问题的复杂性和人的思维统一起来了。 出现了软件生产管理。 硬件关系:磁盘问世,操作系统发展,非数值计算应用发展,通信设备完善,网络发展,集成电路发展等使软件复杂性增加产生软件危机,在此背景下发展了软件技术。 第三阶段:自动程序设计阶段 特点:向集成化、一体化发展。出现了软件开发环境。程序设计基本方法进一步改进。 硬件关系:集成电路迅速发展以及高分辨率终端的出现,为个人计算机发展提供了条件,再加上人工智能、专家系统研究的发展,使程序设计进入成熟期。 第二章 2.1 什么是数据结构?它对算法有什么影响? 数据结构是指同一数据对象中各数据元素间存在的关系。 对算法是影响:算法的实现必须借助程序设计语言中提供的数据类型及其运算。一个算法的效率往往与数据的表达形式有关,因此数据结构的选择对数据处理的效率起着至关重要的作用。它是算法和程序设计的基本部分,它对程序的质量影响很大。 2.2何谓算法?它与程序有何区别? 广义地说,为解决一个问题而采取的方法和步骤,就称为“算法”。计算机算法是通过计算机能执行的算法语言来表达的。 和程序的区别:一个程序包括两个方面的内容: (1)、对数据的描述,即数据结构。 (2)、对操作的描述,即算法。 所以算法是程序的一个要素。 2.3 何谓频度,时间复杂度,空间复杂度?说明其含义。 频度:在某个算法中某个语句被重复执行的次数就是此语句的频度。 时间复杂度:是用来估算一个算法的执行时间的量,以算法中频度最大的语句来度量。 空间复杂度:指在算法中所需的辅助空间的单元,而不包括问题的原始数据占用的空间。 2.6 数据的存储结构主要有哪两种?它们之间的本质区别是什么? 数据的存储结构:向量和链表。 本质区别:

软件技术基础重点总结

第一章 1.算法的基本要素:一是要做哪些事(算法对数据的操作)二是决定做这些事情的先后顺序(控制结构) 2.算法的基本特征:(1)能行性(2)确定性(3)有穷性(4)拥有足够的情报 3.算法评价的标准(算法的复杂度主要包括):时间复杂度和空间复杂度 4.算法的时间复杂度:执行算法所需要的计算工作量算法的空间复杂度:执行这个算法所需要的内存空间 5.用算法在执行过程中所需基本运算的执行次数来度量算法的工作量 6.算法所执行的基本运算次数与问题规模相关 7.对于一个固定规模,算法所执行的基本运算次数可能与特定的输入有关用①平均性态(平均时间复杂度)②最坏情况复杂性(最坏时间复杂度)来描述 第二章 1.数据结构研究的主要问题:①分析数据的特征②选择逻辑结构和物理存储结构③在存储结构的基础上实现对数据的操作 2.数据逻辑结构指数据元素前后件的关系,与它们在计算机中的存储位置无关;数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构) 3.常用的存储结构有顺序、链接、索引等存储结构 4. 5. 6.线性表:n(n≥0)个数据元素的有限序列线性表特点:均匀性 有序性除了第一个元素, 每一个元素都有一个前驱,除了最后一个元素每个元素都有一个后继 7.线性表中所有元素所占的存储空间是连续的线性表中的各数据元素在存储空间中是按逻辑顺序依次存放 8.顺序表:将线性表中的元素相继存放在一个连续的存储空间中;存储结构:数组;特点:线性表的顺序存储方式。逻辑上相邻,物理上相邻;存取方式:随机存取。 9.栈是限定仅在表尾进行插入和删除运算的线性表,表尾称为栈顶(top),表头称为栈底(bottom)。 10.栈的物理存储可以用顺序存储结构,也可以用链式存储结构。 11.队列:一种特殊的线性表,遵守FIFO(First In First Out)规则。队列的数据元素重视从表末尾加入,从表头取出。队列的物理存储可以用顺序存储结构,也可用链式存储结构。 12. front 13.循环队列区分队空队满长采用两种方法①增加一个标志位S;S=0 队空 S=1且rear==front 队满 14.程序中front==(rear+1)%MAXSIZE来判断队满 15.二叉树的性质:①在二叉树的第i层上至多有2^(i-1)个结点(i≥1)②深度为k的二叉树至多有2^k -1个结点(k≥1)③对任何一颗二叉树T,如果其叶结点数为n0,度为2的结点数为n2,则n0=n2+1④具有n个结点的二叉树,其深度至少为log2 n+1⑥在编号完全的完全二叉树中,编号为i的结点,若存在做孩子,则其编号为2i;若存在有孩子,则其编号为2i+1;若存在父结点,则其编号为i/2 16.图是对结点的前驱和后继个数不加限制的数据结构。有向图:图中每条边都是顶点的有序对。无向图:图中每条边都是顶点的无序对。 17.顶点间的关系边可描述为顶点的偶对,边是无序的。弧:顶点间的边是有序的。弧头:弧的终点(方向前方)。弧尾:弧的起始点称为弧尾(方向后方)。Vx(弧尾)→Vy弧头 18.无向图中:顶点的度是以该顶点为一个端点的边的条数。有向图中有入度和出度。 19.路径:从顶点Vx到顶点Vy的顶点序列称为从Vx到Vy的路径。路径的长度是该路径上边或弧的数目。 20.连通图:在无向图中,若每一对顶点间都有路径,称此图是连通图。 第三章 1.平均查找长度(ASL):与关键字进行比较的平均次数。它是用来评价一个算法好坏的一个依据。顺序查找优点对结点的逻辑次序和存储结构无要求;缺点ASL较长。 2.二分查找的先决条件是查找表中的数据元素必须有序。优点:ASL≤log2 n;缺点:因要求有序,所以对所有数据元素按大小排序是非常费时的操作。 3.分块查找又称索引顺序查找,这是顺序查找的一种改进方法。优点:插入、删除操作方便;只要找到对应的块,在块中任意位置操作均可。缺点:索引表增加了辅助存储空间。 4.哈希查找也成为散列查找,哈希查找则是通过计算存储地址的方法进行查找的。 在哈希元素(地址)求解过程中,不同关键字值对应到同一个存储地址的现象称为冲突。即关键字K1≠K2,但哈希函数值H(K1)=H(K2)。处理冲突的方法:开放定址法Hi=(H(key)+di) MOD m,再哈希法,链地址法。线性探测再散列di=1,2,…m-1 二次探测再散列di=1^2,-1^2,2^2,…+k^2,-k^2(k≤m/2) 5.快速排序法又被称为“分区交换排序”。按某种方法选取一个元素K,以它为分界点,用交换的方法将序列分为两个部分:比该值小的放在左边,否则在右边。形成{左子序列}K{右子序列}再分别对左右两部分实施上述分解过程。 6.插入排序基本思想:边插入边排序,保证子序列中是排好序的。每次处理将无需数列的第一个元素与有序数列的元素从后往前逐个进行比较,找出插入位置,将该元素插入到有序数列的合适位置中。插入算法比较次数和交换次数约为n^2/2,因此其时间复杂度为O(n^2),该算法基本稳定,数据基本有序,插入排序速度块。 7.希尔排序是对直接插入排序的改进方法。排序间隔n/2^k k=1,2,…… 8.选择排序:每次从待排序的记录中选出关键字最小(或最大)的记录,顺序放在已有序的记录序列的最后(或最前)面,直到全部数列有序。9.堆定义:hi≥h2i,hi≥h2i+1 hi≤h2i hi小于等于h2i+1从最后一个非终端结点开始往前逐步调整,让每个双亲不大于(或不小于)子女,直到根结点为止。 10.二分法查找效率高,顺序法可以采用链表存储结构,操作灵活,最好是既有二分法的高效率,又有链表灵活性的查找方法。解决之道:二叉排序树。 11.二叉排序树:二叉树为空,或者是具有下列性质的二叉树:如根结点的左子树不空,则左子树所有结点是值均小于根结点值;如根结点的右子树不空,则右子树所有结点是值均小于根结点值;根结点的左右子树也分别是二叉排序树。 第四章 1.操作系统是控制和管理计算机硬件和软件资源、合理组织计算机工作流程、方便用户使用计算机响应速度而设计的一套程序的集合。功能:文件管理,进程管理,存储器管理,设备管理,作业管理。 2.程序是为解决某个问题用计算机语言或命令设计、编写的一系列指令的有序集合。 3.进程就是程序的一次执行过程,是系统进行资源分配和调度的一个独立单元。进程的状态运行状态、就绪状态、等待状态。①处于就绪状态的进程一旦分配到CPU,就转为运行状态。 ②处于等待状态的进程,当需要等待某个时间发生才能继续运行时,则转为等待状态;或者由于分配给它的时间片用完,就让出CPU而转为就绪状态。③处于等待状态的进程,如果它等待的时间已经发生,即条件得到满足,就转为就绪状态。 4.线程是一个程序内部的顺序控制流(独立执行的流)。但线程并不是程序,它自己并不能运行,必须在程序中才能运行。 5.存储器(Memory)能接收数据、保存数据、并能根据命令提供这些数据的装置。 第五章 1.数据库:长期存储在计算机内的、有组织的、可共享的数据集合。特点:数据按一定的数据模型组织、描述和存储;具有较小的冗余度;较高的数据独立性和易扩展性;可为各种用户共享。 2.数据结构是对实体类型和实体间联系的表达和实现,描述系统的静态特性;数据操作是在数据结构之上允许执行的操作集合,包括对数据库的检索和更新(插入、删除、修改)操作,描述系统的动态特性;数据完整性约束是数据及其联系所具有的制约和依赖规则,以保证数据库中数据的正确性、有效性和相容性。 3.ER图中的四个基本成分:矩形框,表示实体类型;菱形框,表示联系类型;椭圆形框,表示实体类型和联系类型的属性(下划线表示键);直线,联系类型与其涉及的实体类型之间以直线连接,并在直线端部标上联系的种类(1:1, 1:N, M:N) 4.关系的三类完整性约束:实体完整性、参照完整性和用户定义完整性。完整约束条件是数据模型的一个重要组成部分,它保证数据库中数据与现实世界的一致性;实体完整性:元组在组成主键的属性上不能有空值;参照完整性(引用完整性):不允许引用不存在的元组;用户定义的完整性(域完整性) 5.视图的作用? ①视图能够简化用户的操作②视图使用户能以多种角度看待同一数据③视图对重构数据库提供了一定程度的逻辑独立性⑤视图能够对机密数据提供安全保护 6.数据库设计步骤? ①需求分析②概念结构的设计③逻辑结构的设计④物理结构的设计 7.sql语言 ①建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩G组成,其中(Sno, Cno)为主码。 CREATE TABLE SC( Sno CHAR(5) , Cno CHAR(3) , G int, Primary key (Sno, Cno)); ②增加列基本格式 ALTER TABLE 表名ADD 列名类型; ALTER TABLE S ADD ADDRESS V ARCHAR (30) 修改列基本格式 ALTER TABLE 表名MODIFY 列名类型; ALTER TABLE S MODIFY SA SMALLINT; 删除列基本格式 ALTER TABLE 表名DROP 列名; ALTER TABLE S DROP UNIQUE(Sn); ③DISTINCT短语的作用范围是所有目标列 查询选修课程的各种成绩SELECT DISTINCT Cno,Grade FROM SC; ④查询所有(不)姓刘学生的姓名、学号和性别。 SELECT Sname,Sno,Ssex FROM Student WHERE Sname (NOT)LIKE ‘刘%’; ⑤使用谓词IS NULL 或IS NOT NULL,“IS NULL” 不能用“= NULL” 代替 查询缺少成绩的学生的学号和相应的课程号。 SELECT Sno,Cno FROM SC WHERE Grade IS NULL; ⑥使用ORDER BY子句可以按一个或多个属性列排序升序:ASC;降序:DESC;缺省值为升序 查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。 SELECT Sno,Grade FROM SC WHERE Cno= ' 3 ' ORDER BY Grade DESC; ⑦查询有3门以上课程是90分以上的 学生的学号及(90分以上的)课程数 SELECT Sno, COUNT(*) FROM SC WHERE Grade>=90 WHERE是选择记录的条件; GROUP BY Sno HA VING是选择分组的条件,且 HA VING COUNT(*)>=3; 必须和GROUP BY一起使用 ⑧求学生学号、姓名、选修课程名、成绩。 SELECT Student.Sno,Sname,Cname,Grade FROM Student,Course,SC WHERE Student.Sno=SC.Sno AND https://www.doczj.com/doc/f312352168.html,o=https://www.doczj.com/doc/f312352168.html,o;

软件开发工具-知识点整理

1、软件开发工具:在高级程序设计语言(第三代语言)的基础上,为提高软件开发的质量和效率,从规划、分析、设计、测试、文档和管理等各方面,对软件开发都提供各种不同程序的帮助的一类新型的软件。 2、软件发展的几个主要阶段:(1)仅限于把用户已经明确表达出来的算法,用机器语言写成一系列机器指令,供硬件运行使用。(2)编程工作改为用汇编语言进行,编好的汇编指令由汇编程序转化为机器指令。(3)把汇编语言变成了高级程序设计语言(第三代语言)。高级程序设计语言不再是与机器指令一一对应,而是更加接近人类习惯的自然语言。 3、21世纪的软件开发工具与以往的有什么区别?(1)自动化程序的提高。(2)这一阶段的工作明确地把需求分析和架构设计包括在软件工作的范围之内,从而使软件开发过程进一步向用户方面延伸,离用户更近了。(3)把软件开发工作延伸到项目及版本管理,从而超出了一次编程的局限,而扩展到了作为一个不断发展的客体生长守的全过程。(4)在这一阶段的研究中,吸收了许多管理可学的内容与方法。 4、软件开发工具的功能要求:(1)认识与描述客观系统。(2)存储及管理开发过程中的信息。(3)代码的编写或生成。(4)文档的编制或生成。(5)软件项目的管理。 5、软件开发工具的性能:(1)表达能力或描述能力。(2)保持信息一致性的能力。(3)使用的方面程度。(4)工具的可靠程序。(5)对硬件和软件环境的要求。 6、软件开发工具按工作阶段划分为三类:计划工具、分析工具、设计工具。计划工具则从更宏观的角度去看待软件开发。它不仅从项目管理的角度,帮助人们组织与实施项目,并且把有关进度、资源、质量验收情况等信息有条不紊地管理起来,而且考虑到了项目的反复循环、版本更新,实现了“跨生命周期”的信息管理与共享,为信息以致软件的重用创造了条件。设计工具直接为软件开发过程中的编程、调试、文档编写工作提供帮助。多数的分析工具都是作为较大型计算机的专用系统出现的。 7、学习软件开发工具的目的在于,了解软件开发工具的概念、理论基础、基本功能、发展现状与前景,以便能够在实际工作中正确地选择与使用软件开发工具,在必要时能够参加或组织软件开发工具的自行研制,从而达到提高软件工作水平与效率的目标。 8、软件开发的基本问题:(1)用户对软件功能的理解与程序员对软件功能的理解之间的转换。(2)人和机器之间的交流与协调问题。 9、大型软件开发中的困难:(1)一致性的保持成为十分困难的问题。(2)测试的困难大大地增加。(3)工作进度难以控制。(4)文档与代码的协调十分困难。(5)版本更新带来的困难。 10、结构化程序设计的基本思想:把程序的结构分成三种基本模块:处理单元、循环机制、二分决策机制。按照这种方法来构造程序,就可以把程序内容的各种相互影响有效地控制在模块内容,从而避免“水波效应”。 11、面向对象的程序设计的基本思想:(1)客观世界的任事物都是对象,它们都有一些静态属性,也都有一些相关的操作。即所谓“封装性”。(2)对象之间有抽象与具体,群体与个体,整体与部分等几种关系。(3)抽象的、较大的对象所具有的性质,包括静态属性和动态操作,自然地成为它的子类的性质,不必加以说明或规定。即所谓的“遗传性”。(4)对象之间可以互通信息。 12、即插即用的程序设计的基本思想:一部分人专门生产软件组件,而另一部分人构造整个软件的结构,并把软件组件插入这个结构,以便迅速地完成大型软件的研制工作。 13、什么样的软件才能算得上是一个好软件?(1)正确地实现所要求的功能,准确地给出预定的输出结果。(2)用户界面友好,符合实际用户的使用习惯与知识能力。(3)具有足够的速度(而不是越快越好),能在符合用户要求的时间限度内,给出所要求的处理结果。(4)具有足够的可靠性,能够在各种干扰下保持正常的工作。(5)程序易读,结构良好,文档齐

软件技术基础教学大纲资料

软件技术基础》教学大纲 课程编号: 23000840 适用专业:电子信息类(非计算机专业) 学时数: 40学分数: 2.5 开课学期:第4 学期 先修课程: 《C 语言》 考核方式:笔试(闭卷) 执笔者:沈晓峰编写日期:2015 年3月审核人(教学副院长): 一、课程性质和目标授课对象:电子信息工程专业大学二年级本科生课程类别:学科拓展课程教学目标: 本课程是针对工科电子信息类本科生开设的一门学科拓展课程。着重培养学生在软件设计领域的基本素质,基本方法和设计理念。授课对象为大学二年级学生,课程任务是通过本课程的学习和相关实验的练习,使学生掌握数据结构、操作系统等软件技术的基本理论知识,具有一定的软件开发能力。 二、教学内容和要求 1、课堂理论教学要求和学时安排(32 学时) 1) C 程序设计(4 学时) (1)C 语言回顾,指针的基本概念、运算方法和使用( 2 学时)。 (2)结构体的基本概念和使用方法(2 学时)。 2)数据结构(20 学时) (1)数据结构的基本概念(2 学时):理解数据结构的基本概念;理解线性和非线性结构的概念。 (2)线性数据结构(9 学时):理解表、栈、队列等线性数据结构的概念,存储方式及基于不同存储方式的相关操作的实现方法。 a. 理解表的概念及顺序表的存储特点,掌握其创建、插入、删除等实现方法(2 学时); b. 掌握单链表、双链表、循环链表的创建、插入、删除方法( 2 学时); c. 理解栈的概念及结构特点,掌握顺序栈及链栈的出栈、入栈操作的实现方法 (2 学时); d. 理解队列的概念及特点,掌握顺序、循环队列的创建、出队、入队、判空、判满等操作。掌握链 队列的创建及出队、入队(2 学时); e. 理解数组的概念及二维数组的存放方式,掌握对称矩阵及稀疏矩阵的压缩存储方法 (1 学时)。

计算机软件技术基础(第三版)沈被娜课后习题答案较全

第一章信息与计算机 什么是信息信息与数据的区别和联系在何处信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。 与数据的区别和联系:数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。我们把这些数据收集起来,经过处理后,即得到人们需要的信息。信息和数据的关系可以归结为: 1. 信息是有一定含义的数据。 2. 信息是经过加工(处理)后的数据。 3. 信息是对决策有价值的数据。 信息有哪些基本属性 信息的基本属性有: 1. 事实性。 2. 等级性。 3. 可压缩性。 4. 可扩散性。 5. 可传输性。 6. 共享性。 7. 增值性和再生性。 8. 转换性。 计算机的主要特点是什么 计算机最主要的特点是: 1. 高速自动的操作功能。 2. 具有记忆的能力。 3. 可以进行各种逻辑判断。 4. 精确高速的计算能力。完整的计算机系统应该包括哪几部分 目前最完整的计算机系统学说认为由五部分组成: 1. 人员 2. 数据 3. 设备4. 程序 5. 规程 什么是计算机硬件什么是计算机软件 硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。 软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时

所必须的数据。计算机软件一般分为系统软件和应用软件。软件技术发展的几个阶段各有什么特点它与硬件的关系如何 第一阶段:高级语言阶段特点:这一时期,编译技术 代表了整个软件技术,软件工作者追求的主要目的是设计和实现在 控制结构和数据结构方面表现能力强的高级语言。但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。 第二阶段:结构程序设计阶段特点:在程序的正确性方面,提出了结构化程序设计思想使程序的可靠性提高了。程序设计方法论方面,提出由顶向下法和自底向上法。使程序模块化,使问题的复杂性和人的思维统一起来了。出现了软件生产管理。硬件关系:磁盘问世,操作系统发展,非 数值计算应用发展,通信设备完善,网络发展,集成电路发展等使软件复杂性增加产生软件危机,在此背景下发展了软件技术。 第三阶段:自动程序设计阶段特点:向集成化、一体化 发展。出现了软件开发环境。程序设计基本方法进一步改进。 硬件关系:集成电路迅速发展以及高分辨率终端的出现,为个人计算机发展提供了条件,再加上人工智能、专家系统研究的发展,使程序设计进入成熟期。 什么是多媒体计算机多媒体计算机包含那几项 什么是多媒体计算机 1. “媒体”的概念分为两部分,其一是信息存储的实体,其二是表现信

计算机基础知识点汇总

计算机基础知识点汇总 一、计算机的诞生及发展 (一)计算机的诞生 1.时间:1946年 2.地点:美国宾夕法尼亚大学 3.名称:ENIAC (二)计算机的发展 > 二、计算机系统的组成 现代的计算机系统由计算机硬件系统及软件系统两大部分构成。 三、计算机的工作原理 冯·诺依曼提出了“存储程序、程序控制”的设计思想,同时指出计算机的构成包括以下几个方面: (1)由运算器、存储器、控制器、输入设备、输出设备五大部件组成计算机系统。 (2)计算机内部采用二进制表示的数据和指令。 | (3)采用“存储程序和程序控制”技术(将程序事先存在主存储器中,计算机在工作时能在不需要人员干预的情况下,自动逐条取出指令并加以执行)。 四、计算机的分类

五、计算机硬件 (一)中央处理器 1.简介 中央处理器又称为微处理器,是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。 ( 2.组成 (1)控制器 实现计算机各部分的联系并自动执行程序的部件。功能是从内存中一次取出指令,产生控制信号,向其他部件发出命令指挥整个计算过程。 (2)运算器 对二进制数码进行算术运算和逻辑运算。 (二)存储器 1.内存储器 … (1)作用 内存储器又称主存储器,简称内存。内存位于系统主板上,可以直接与CPU进行信息交换,内存储器主要用于存放计算机系统中正在运行的程序及所需要的数据和中间计算结果以及与外部存储器交换信息时作为缓冲。 (2)特点 速度较快,容量相对较小。 (3)分类 只读存储器ROM:永久保存数据,存储微型机的重要信息。 随机存储器RAM:断电丢失数据,存储当前运行的程序信息(SRAM、DRAM)。 \ 2.外存储器 (1)作用

计算机软件技术基础 第三版 课后习题答案

6.1操作系统原理 1操作系统概论 2 操作系统的特性 3 操作系统的功能 4 操作系统的类型 5 进程管理 6.2 常见的操作系统 6.3 小节 操作系统是加到计算机硬件上的第一层软件,它是直接操作计算机的硬件的软件,从而使计算机硬件的功能首次能够发挥出来。一台纯粹由硬件构成的计算机(称之为“裸机”)在加载操作系统之后,就变成了一台与“裸机”大相径庭的“虚拟”的计算机。其他的所有软件,如编译软件、数据库系统、软件开发工具等系统软件以及浏览器、字处理软件、办公软件等应用软件都是以操作系统为基础,运行于“虚拟”机上的。只有首先运行操作系统之后,才能运行其他软件。 操作系统是用户与计算机硬件设备之间的接口,用户通过操作系统操纵计算机硬件设备完成自己的工作。计算机启动并加载操作系统之后,变成了一台“虚拟”(逻辑)的计算机。用户看到的“计算机”是一台逻辑计算机,用户看到的“设备”是访问硬件设备的软件程序,是一种逻辑设备。对逻辑设备的所有操作都被操作系统转换为对实际硬件设备的操作。。 6.1.2 操作系统的特性 1 并发性 ( Concurrence ) 在多任务操作系统中,“并发”是指宏观上,在一段所谓“并发”,是指两个或两个以上的事件在同一时间间隔中发生。时间内,多个进程(简单地说,进程是程序的一次执行,将在后文中仔细讨论这个问题)在“同时”运行,多个计算机“事件”在“同时” 发生。如果计算机只有一个处理器(即CPU),该计算机在任何时刻都只能运行一个进程。如果多个进程在极短的时间内交替执行,而使得用户察觉不到这种交替,

就形成了一种宏观上的“并发”。也就是在一个人类可以感觉的事件间隔内,这些进程的执行效果好像是它们被同时执行一样,但进程之间仍是交替运行的。 CPU分时的“并发”执行 2 共享性( Sharing) 资源的共享是指计算机系统中的硬件资源和软件资源不仅仅为某一程序或者某一用户所独享,多个拥有授权的程序或用户都可以使用。资源共享是为了提高计算机系统资源的利用率。从某种意义上讲,并发也可以看作是资源共享的一种形式。根据资源属性的不同,资源共享的方式有两种: ?互斥访问。计算机系统中的许多资源(比如打印机),虽然多个程序都能够使用,但是在一段时间内却只能允许一个程序使用。 ?同时访问。计算机系统中还有一类资源,允许多个进程在一段时间内同时访问。当然,这里所说的“同时”,仍然是宏观上的。这类资源中,最有代表性的当属磁盘了。 3 虚拟性(Virtual) 所谓“虚拟”,就是把物理实体映射为一个或者多个逻辑实体。物理实体是实际存在的,硬件上的概念,而逻辑实体则是“虚拟”的,软件上的概念,只是用户的一种看法和感觉。比如在多任务操作系统中,虽然只有一个处理器,但是多个进程在极短的时间间隔中交替运行 . 6.1.3 操作系统的功能 从资源管理的角度来看,操作系统通过对处理器、存储器、I/O设备和文件等计算机资源进行合理的分配、调度,提高资源的利用率,最大限度地发挥计算机的效能,提高计算机系统在单位时间内的信息处理能力(一般把单位时间的处理能力叫做吞吐量)。操作系统的主要功能有: ?处理器管理。处理器管理的主要功能就是对处理器的分配、调度实施最有效的管理,最大限度地提高它的处理能力。在多任务环境中,处理器的分配、调度都是以进程为单位的,所以处理器的管理可以归结为进程管理。 ?存储器管理。内存管理为每个进程分配内存,当进程被撤消时回收分配出去的内存是内存管理的主要内容。每个进程只能在自己的内存空间中运行,否则会相互干扰甚至于破坏整个系统,所以内存保护也是内存管理的内容之一。

计算机软件技术基础(第三版)沈被娜 课后习题答案较全

第一章信息与计算机 1.1 什么是信息?信息与数据的区别和联系在何处? 信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。 与数据的区别和联系:数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。我们把这些数据收集起来,经过处理后,即得到人们需要的信息。信息和数据的关系可以归结为: 1. 信息是有一定含义的数据。 2. 信息是经过加工(处理)后的数据。 3. 信息是对决策有价值的数据。 1.2 信息有哪些基本属性? 信息的基本属性有: 1. 事实性。 2. 等级性。 3. 可压缩性。 4. 可扩散性。 5. 可传输性。 6. 共享性。 7. 增值性和再生性。 8. 转换性。 1.3 计算机的主要特点是什么? 计算机最主要的特点是: 1. 高速自动的操作功能。 2. 具有记忆的能力。 3. 可以进行各种逻辑判断。 4. 精确高速的计算能力。 1.5 完整的计算机系统应该包括哪几部分? 目前最完整的计算机系统学说认为由五部分组成: 1. 人员 2. 数据 3. 设备 4. 程序 5. 规程 1.6 什么是计算机硬件?什么是计算机软件? 硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。

微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。 软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。计算机软件一般分为系统软件和应用软件。 1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何? 第一阶段:高级语言阶段特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。 第二阶段:结构程序设计阶段特点:在程序的正确性方面,提出了结构化程序设计思想使程序的可靠性提高了。程序设计方法论方面,提出由顶向下法和自底向上法。使程序模块化,使问题的复杂性和人的思维统一起来了。出现了软件生产管理。硬件关系:磁盘问世,操作系统发展,非数值计算应用发展,通信设备完善,网络发展,集成电路发展等使软件复杂性增加产生软件危机,在此背景下发展了软件技术。 第三阶段:自动程序设计阶段特点:向集成化、一体化发展。出现了软件开发环境。程序设计基本方法进一步改进。硬件关系:集成电路迅速发展以及高分辨率终端的出现,为个人计算机发展提供了条件,再加上人工智能、专家系统研究的发展,使程

(完整版)操作系统基础知识点详细概括

第一章: 1. 什么是操作系统?OS的基本特性是?主要功能是什么 OS是控制和管理计算机硬件和软件资源,合理组织计算机工作原理以及方程用户的功能的集合。特性是:具有并发,共享,虚拟,异步的功能,其中最基本的是并发和共享。主要功能:处理机管理,存储器管理,设备管理,文件管理,提供用户接口。 2. 操作系统的目标是什么?作用是什么? 目标是:有效性、方便性、可扩充性、开放性 作用是:提供用户和计算机硬件之间的接口,提供对计算机系统资源的管理,提供扩充机器 3. 什么是单道批处理系统?什么是多道批处理系统? 系统对作业的处理是成批的进行的,且在内存中始终保持一道作业称此系统为单道批处理系统。 用户所提交的作业都先存放在外存上并排成一个队列,然后,由作业调度程序按一定的算法从后备队列中选择若干个调入作业内存,使他们共享CPU和系统中的各种资源。 4 ?多道批处理系统的优缺点各是什么? 优点:资源利用率高,系统吞吐量大。缺点:平均周转时间长,无交互能力。 引入多道程序技术的前提条件之一是系统具有终端功能,只有有中断功能才能并发。 5. 什么是分时系统?特征是什么? 分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互的方式使用计算机,共享主机中的资源。 特征:多路性、独立性、及时性、交互性 *有交互性的一般是分时操作系用,成批处理无交互性是批处理操作系统,用于实时控制或实时信息服务的是实时操作系统,对于分布式操作系统与网络操作系统,如计算机之间无主次之分就是分布式操作系统,因为网络一般有客户-服务器之分。 6. 什么是实时操作系统? 实时系统:系统能及时响应外部事件的请求,在规定的时间内处理完。按照截止时间可以分为1硬实时任务(必须在截止时间内完成)2软实时任务(不太严格要求截止时间) 7用户与操作系统的接口有哪三种? 分为两大类:分别是用户接口、程序接口。 用户接口又分为:联机用户接口、脱机用户接口、图形用户接口。 8. 理解并发和并行?并行(同一时刻)并发(同一时间间隔) 9. 操作系统的结构设计 1 ?无结构操作系统,又称为整体系统结构,结构混乱难以一节,调试困难,难以维护 2?模块化os结构,将os按功能划分为一定独立性和大小的模块。是os容易设计,维护, 增强os的可适应性,加速开发工程 3?分层式os结构,分层次实现,每层都仅使用它的底层所提供的功能 4. 微内核os结构,所有非基本部分从内核中移走,将它们当做系统程序或用户程序来实现,剩下的部分是实现os核心功能的小内核,便于扩张操作系统,拥有很好的可移植性。 第二章: 1 ?什么叫程序?程序顺序执行时的特点是什么? 程序:为实现特殊目标或解决问题而用计算机语言编写的命令序列的集合特点:顺序性、封闭性、可再现性 2. 什么是前趋图?(要求会画前趋图)P35图2-2 前趋图是一个有向无循环图,记为DAG ,用于描述进程之间执行的前后关系。 3?程序并发执行时的特征是什么? 特征:间断性、失去封闭性、不可再现性

《计算机软件技术基础》教学大纲

《计算机软件技术基础》教学大纲 课程编号:09010072 课程名称:计算机软件技术基础 学时与学分:32(8) / 2 先修课程:微机原理及应用基础、计算机程序设计语言(C 语言)、高等数学、计算机文化基础 适应专业:自动化、测控技术与仪器 教材及参考书:《计算机软件技术基础》,徐士良编,清华大学出版社 一、课程的性质和任务 本课程系自动化等专业有关计算机科学的选修专业课程。通过学习,使学生在掌握计算机基础知识、程序设计概念、熟练上机操作及调试的基础上,加深对软件开发与应用中数据结构的应用的理解,熟练掌握抽象数据类型以及面向对象的方法组织、存储各种类型的数据,使学生掌握计算机软件开发的基本原理、方法、技术和工具。使学生了解数据库技术的发展现状和前景,掌握数据库应用的一般知识,包括关系数据库的概念、设计方法和使用方法,能够完成有关数据库的简单应用,使学生掌握支持软件开发和维护的理论、方法、技术、标准以及计算机辅助工程和环境等知识,并通过实验(实践)达到灵活动用。软件工程的概念,软件设计的基本方法,结构化软件设计等。 二、课程基本要求 1.对重要的基本概念与基本原理了解其含义,能熟练运用基本原理解决问题; 2、掌握重要数据结构的概念、使用方法及实现技术; 3、能运用所学数据结构及其有关算法编制有关小型程序。 4、掌握数据库的基本概念,了解数据管理对数据库技术的需求、数据库技术在信息管理中的地位和作用、数据库技术的发展趋势。 5、能运用关系数据库的相关技术和方法分析数据库应用系统,在此基础上掌握E-R图、规范花理论、数据字典和数据流图及其在构建系统数学模型和应用功能中的作用。熟悉和实践数据库管理系统共有的数据存取语言和标准接口SQL。 6、掌握软件工程的基本原理、概念与方法,主要包括软件系统的可行性研究、需求分析、总体设计、详细设计、编码、测试、维护、管理等方面的基本知识与方法。 7、掌握软件工程中的一些基本技术方法。 8、结合模拟案例,要求学生从实际中掌握瀑布型软件开发过程的基本方法和技巧,以及面向对象分析的方法。 三、课程的基本内容及重点、难点 本课程主要介绍:如何组织各种数据在计算机中的存储、传递和转换。内容包括:数据结构的基本概念、线性表、栈和队列、树与二叉树、图、查找、排序等;操作系统的基本概念、功能、任务,多道程序,进程;数据库的基本概念、关系数据库的基本概念、关系代数、查询优化、关系理论、数据库应用系统的需求分析方法和相关技术、数据库的概念设计、逻辑设计、数据库的物理设计、数据库应用系统功能设计等几部分。 共分六章进行教学,各章内容如下: 第1章内容:算法 重点:算法的基本概念、基本特征、基本要素,算法描述语言,算法设计基本方法、

软件技术基础-文本整理

软件技术基础 第一章计算机进制系统 1.计算机中数据的单位 a、在计算机内部,数据都是以二进制的形式存储和运算的。 b、位(bit) ,简写b,比特,计算机存储数据的最小单位。 c、字节(byte),简写B,1B=8bit,计算中数据处理的最基本单位。 d、字:通常由一个或若干个字节组成。 e、数的换算关系: 1Byte=8bit,1KB=1024B,1MB=1024KB,1GB=1024MB。 字长由计算机型号不同而异,常用字长有8、16、32、64位。一般情况下,IBM PC/XT的字长为8位,80286微机字长为16位,80386/80486微机字长为32位,Pentium4系列微机字长为64位。 2.进位计数制 计算机中采用二进制主要原因: a、电路简单 b、工作可靠 c、简化运算 d、逻辑性强 3、计算机中常用的几种计数制 数码:一个数制中表示基数数值大小的不同数字符号。如,八进制有8个数码:0、 1、2、3、4、5、6、7。 基数:一个数值所使用的数码的个数。如,八进制的基数为8,二进制的基数为2。 位权:一个数值中某一位上的1所表示数值的大小。如,八进制的123,1的位权是64,2的位权是8,3的位权是1。 4.十进制(Decimal) 特点: a、有10个数码:0、1、2、3、4、5、6、7、8、9。 b、基数:10 c、逢十加一(加法运算),借一当十(减法运算) d、按权展开式。对于任意一个n位整数和m位小数的十进制数D,均可按权 展开。 例如:将十进制数456.24写成按权展开式形式为: 456.24=4*102+5*101+6*100+2*10-1+4*10-2 5.二进制(Binary) 特点: a、有2个数码:0、1 b、基数:2 c、逢二进一(加法运算),借一当二(减法运算) d、按权展开式,对于任意一个n位整数和m位小数的二进制数D,均可按权 展开。 例如:把(11001.101)2写成展开式,它表示的十进制数为:

相关主题
文本预览
相关文档 最新文档