2023年度计算机技术与软件专业技术资格(水平)考试 -希赛

目录

计算机组成原理 -- 2023.02.16 ~ 2023.03.09
数据的表示、原码、反码、补码、移码
逻辑运算、计算机系统的组成与体系结构
CPU的组成、指令系统、存储系统、总线系统可靠性和性能指标以及多媒体基础知识

数据结构与算法基础 -- 2023.03.16 ~ 2023.04.10
数据结构、顺序表和链表、数组
字符串、矩阵、栈和队列
树的基础知识
图的认识、算法特征和复杂度
查找算法和排序算法

C语言 -- 2023.04.12 ~ 2023.04.21
分支结构
循环
函数、递归函数
变量、数组
指针、链表


程序流程图 -- 2023.04.23 ~ 
程序流程图


操作系统 -- 2023.04.23 ~ 2023.04.25
操作系统概述、进程管理、存储管理
文件管理、系统安全和可靠性以及word和excel


程序设计语言 -- 2023.04.27 ~
程序设计语言、编译和解析、正则式、有限自动机


软件工程 -- 2023.05.06 ~
可行性分析与需求分析、软件测试和维护、项目管理


知识产权与标准化+面向对象 -- 2023.05.08
知识产权与标准化、面向对象概念、UML、设计模式


JAVA基础知识 -- 2023.05.10
基础面向对象语法和考点


计算机网络与信息安全 -- 2023.05.12 ~ 2023.05.15
网络基础知识、OSI参考模式、IP地址结构、Internet基础知识
网络安全知识、HTML语言、信息技术基础


数据库系统 -- 2023.05.17 ~ 2023.05.19
数据库模式、数据模型、设计过程、数据流图、ER图
关系代数、规范化理论、SQL语言、数据库的控制功能


程序员考试特点总结

程序员:
程序员是属于软考初级科目,一年两次,分别为5月下旬和1L月上旬,考试的科日分为上午的软件综合知识(选择题)和下午的应用技术(案例题)两个部分,满分都为75分,需两门科日同时达到45分及以上才算合格

上午综合知识篇(选择题)
共计75空选择题,每空1分,共计 76分,其中有英语填室固定为5分,其余70分涉及的知识点分别为:
计算机系统基础知识9分,
多媒体基础知识3分,
操作系统基础知识7分,
软件工程6分,
程序设计语言6分,
网络基础知识9分,
标准化与知识产权2分,
MS Office 软件2分,
信息处理技术1分,
面向对象基础知识5分,
数据库基础知识6分,
C 语言选择题考查2分,
数据结构和算法基础 12分。

上午题部分总的来说,通过培训,可以将各个考点的高频分值给筛选出来,能够让大家高效学习,从而帮助大家较短时间拿到更高的分数,所以45分的及格分是完全没有问题的,其次考试的题目也是偏基础,换汤不换药,大部分题型在培训课上老师都会跟大家详细介绍做题的思路。


下午应用技术篇(案例题)
共计6道大题,最后2道为选答题,JAVA和C+程序设计语言二选一,实际上只做5道大题,每题15分,共计 75分,合格分数为45分,题型固定。
前面4道题型都为C语言的程序代码题目,第1道大题为C语言的流程图形式进行填空,第2-4题为C语言的代码填空和程序输出结果方式,这类题型本质上大同小异,考查的都为简单的C语言基础代码知识,主要以填空的方武出现。
在培训课程上,首先会对C语言的基础语法进行详解,课后以习题为辅进行训练,保证了大家在训练的过程中更加注重代码的规范性,介绍做题技巧和答题思路,能够保证大家少走许多的弯路,从而达到事半功倍的效果。
培训之后,前四道大题稳定在42分左右问题不大。最后1道选答题(JAVA和C+12选1),选择白己比较熟悉的语言进行作答,填空方式为代码填空,共计5空,每空3分,填写代码的时候需要注意关键词的书写,要养成平时书写代码的规范性。对于整个题型来说,难度不算太大,一般来说前面3空是大家经过学习之后都能够填写出来的,要求大家能够拿到9分左右就可以了。

程序员导学课

  • 1-程序员导学课01考试流程


软考官网 https://www.ceiaec.org
成绩及报名查询 https://www.educity.cn/rk/zt/



  • 2-程序员导学课02考试概况
01.掌握数制及其转换、数据的机内表示、算术和逻辑运算、应用数学的基础知识;
02.了解计算机的组成以及各主要部件性能指标;
03.掌握操作系统、程序设计语言的基础知识;
04.熟练掌掘基本致据结构和常用算法;
05.熟练掌握C程序设计语言以及C+、Java中的一种程序设计语富;
06.熟悉数掘库、网络和多媒体的基础知识;
07.了解软件工程的基础知识、软件过程基本知识、软件开发项目管理的常识;
08.了解常用信息技术标准、安全性以及有关法律、法规的基础知识;
09.了解信息化及计算机应用的基础知识;
10.正确阅读和理解计算机领域的简单英文资料。

  • 3-程序员导学课03考试内容与学习指导
1、制定可行的学习计划,并持之以恒,坚持不懈!
2、看书的同时在讲义上做笔记,记录难点、重点和疑问,有问题尽早解决!
3、整体流程:先看讲义,做习题一一听视频,做笔记一-课后总结
4、通过习题训练了解细节
5、考前进行大量综合训练,巩固所学知识
6、C语言要提前进行基础性知识的学习哦
科目一:综合知识
客观题:75道单项选择题,1题1分,时长150分钟

特点:范围广,但考试时间多得让人犯困

学习策略
1、各个击破
2、混合练习
3、分层做题,不听天由命


科目二:案例分析(笔试)
操作题:5道大题150分钟75分
特点:5道案例题(流程图1题,C语言3题,C++和JAVA二选一)
主要以填空题为主,偶尔出现选择题

学习策略
1、多练历年试题,熟悉答题规则,习惯“意外”
2、以C语言练习为主,最好上机进行练习操作
3、多做题,多练习,不会的时候看下讲解视频
4、注意考场操作注意事项,以从容的心态上考场

C语言考点:
1.for循环、while循环、switch case分支语句
2.查找和排序算法(选择排序、插入排序、雷泡排序、快速排序、顺序查找和二分查找)
3.字符串相关计算(匹配和对比、复制、取数字、计算单调个数等,一般会用到指针)
4.链表的相关计算(链表重构(逆转、合井、排序)、二叉查找树、树的构造、元素处理等)
5.函数相关知识(函数的调用、递归函数、字符串函数使用、特殊函数的编写等)
6.其他一些数值运算(特殊数字、时间日期等运算)
JAVA和C++主要考点:
1、创建对象(类名对象名=new类名0);)
2、继承类(class子类名extends父类名)3、接口定义(interface接口名)
4、实现定义(class<类名>implements接口名)
5、抽象类和抽象方法(abstract class类名{abstract方法名0})
6、当前类对象的引用(this关键字)
7、父类的引用,通过这个对像可以访问父类的成员(super关键字)
8、类所有的对象共享同一个成员时,使用静态变量和静态方法(static关键字)
9、方法的调用(对象名.方法名)
10、修饰符(public、protect、private和default默认)


01.计算机系统基础知识

1.1 章节概述

4-1.1 章节概述
  • 课程内容提要


1.2 进制的表示

5-1.2 进制的表示01
6-1.2 进制的表示02
7-1.2 进制的表示03


进制的表示

二进制(B):  0, 1, 10, 11, 100, 101, 110, 111, 1000 ...
八进制(O):  0, 1, 2, 3, 4, 5, 6, 7, 10, 11, 12.
十进制(D) :  0, , 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12...
十六进制(H):  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 10, 11,12..

 注意 :计算机中的一切数据,如数字、汉字、图片、声音、视频、指令等都是用二进制进行表示和传输的。
 ASCII:美国信息交换标准代码。一般使用7位二治制数来表示学母、数字、标点符号及部分特殊控制字符。

\(2^{0}=1\)
\(2^{1}=2\)
\(2^{2}=4\)
\(2^{3}=8\)
\(2^{4}=16\)
\(2^{5}=32\)
\(2^{6}=64\)
\(2^{7}=128\)
\(2^{8}=256\)



十进制和其他进制的转换:其他进制转十进制

R进制转十进制使用按权展开法,其具体操作方式为:将R进制数的每一位数值用 R^{k} 形式表示,即幂的底数是R,指数为k,k与该位和小数点之间的距离有关。当该位位于小数点左边,k值是该位和小数点之间数码的个数,而当该位位于小数点右边,k值是负值,其绝对值是该位和小数点之间数码的个数加1。

R进制数:
\(X_{n-1}...X_{0}.X_{-1}=X_{n-1}R^{n-1}+...+ X_{0}R^{0} +X_{-1}R^{-1}\)

二进制:
10100.01 = 1x\(2^{4}\)+0x\(2^{3}\)+1x\(2^{2}\)+0x\(2^{1}\)+0x\(2^{0}\)+0x\(2^{-1}\)+1x\(2^{-2}\)
10100.01 = 1x\(2^{4}\)+1x\(2^{2}\)+1x\(2^{-2}\)

八进制:
604.01 = 6x\(8^{2}\)+0x\(8^{1}\)+4x\(8^{0}\)+0x\(8^{-1}\)+1x\(8^{-2}\)
604.01 = 6x\(8^{2}\)+4x\(8^{0}\)+1x\(8^{-2}\)



十进制和其他进制的转换:十进制转其他进制

短除法 (除基取余法)

将十进制94转换为二进制

\(2 | 94 \ \ 0\)
\(2 | 47 \ \ 1\)
\(2 | 23 \ \ 1\)
\(2 | 11 \ \ 1\)
\(2 | 05 \ \ 1\)
\(2 | 02 \ \ 0\)
\(2 | 01 \ \ 1\)
$ \ \ \ \ \ 0 $
结果: {0}101 1110


\(2^{0}=1\)
\(2^{1}=2\)
\(2^{2}=4\)
\(2^{3}=8\)
\(2^{4}=16\)
\(2^{5}=32\)
\(2^{6}=64\)
\(2^{7}=128\)
\(2^{5}=256\)


\(94 = 64 + 16 + 8 +4 +2\)
\(94 = 2^{6}+2^{4}+2^{3}+2^{2}+2^{1}\)
\(94 = {0}101 \ 1110\)


\(13 = 2^{3} + 2^{2} + 2^{0}\)
\(13 = 0000 \ 1101\)


当表示有符号的数值的时候,需要在高位上增加一个符号位,设置为"1"表示为负数,设置为"0"的时候表示为整数

将十进制15转换为二进制

\(2 | 15 \ \ 1\)
\(2 | 07 \ \ 1\)
\(2 | 03 \ \ 1\)
\(2 | 01 \ \ 1\)
$ \ \ \ \ \ 0 $
结果: {0} 1111


==> \(2^{4}-1=16-1\)(D)
==> 10000(B) -1(D)
==> 01111(B)


\(15 = 2^{3} + 2^{2} + 2^{1} + 2^{0}\)
\(15 = 0000 \ 1111\)


将十进制100转换为八进制

\(8 | 100 \ \ 4\)
\(8 | 012 \ \ 4\)
\(8 | 001 \ \ 1\)
$ \ \ \ \ \ 0 $
结果: \((0)144_8\)


将十进制100转换为16进制

\(16 | 100 \ \ 4\)
\(16 | 006 \ \ 6\)
$ \ \ \ \ \ \ 0 $
结果: \((0)64_16\)



十进制和其他进制的转换:十进制小数转其他进制

乘基取整法:

将0.875转换成其他进制
\(2 \times 0.875 \ 取整数\)
\(2 \times 1.75 \ \ 1\)
\(2 \times 1.5 \ \ \ \ 1\)
\(\ \ \ \ \ \ \ 1 \ \ \ \ \ \ \ 1\)

结果: 0.111



二进制、八进制、十六进制之间的转换

  • 二进制转八进制和十六进制

\(0001(B)=1(D)\)
\(0011(B)=3(D)\)
\(0111(B)=7(D)\)
\(1111(B)=15(D)\)


\(A(H)=10(D)\)
\(B(H)=12(D)\)
\(C(H)=13(D)\)
\(D(H)=14(D)\)
\(E(H)=15(D)\)
\(F(H)=16(D)\)


\(2^{0}=1\)
\(2^{1}=2\)
\(2^{2}=4\)
\(2^{3}=8\)
\(2^{4}=16\)
\(2^{5}=32\)
\(2^{6}=64\)
\(2^{7}=128\)
\(2^{5}=256\)


二进制: 010 001 110
八进制: 2    1   6

  二进制: 1000 1110
十六进制:  8     E

八进制和十六进制之间的转换:基于二进制转化

小数点左侧开始从0, 1, 2, 3...
小数点右侧开始从-1, -2, -3...

(1011.1)(B) = \(2^{3}\) + \(2^{1} + 2^{0}\) + \(2^{-1}\) = 8 + 2 + 1 + 0.5 = 11.5(D)


\((71)_8\)=7x\(8^{1}\)+1x\(8^{0}\)=\((57)_10\)


考点-进制的转换

考点1:进制的表示
目前的小型和微型计算机系统中普遍采用的字母与字符编码是()。
A、BCD码
B、海明码
C、ASCII码 ✔
D、补码


考点2:其他进制转十进制
对于十六进制数5C,可用算式()计算与其对应的十进制数
A、5x16+12 ✔
B、12x16+5
C、5x16-12
D、12x16-5


结果:
5C=5x\(16^{1}\)+C
  =5x\(16^{1}\)+12x\(16^{0}\)
  =5x16+12x1
  =5x16+12
  =92


\((101A)_16\)=\((101(10))_16\)=10x\(16^{0}\)+1x\(16^{1}\)+0x\(16^{2}\)+1x\(16^{3}\)=10+16+0+16x16x16=\((4122)_10\)



考点3:十进制转其他进制
对于十进制数-1023,至少需要()个二进制位表示数(包括符号位)。
A、8
B、9
C、10
D、11 ✔


结果:
\(2^{8}=256\)
\(2^{9}=512\)
\(2^{10}=1024\)

当表示有符号的数值的时候,需要在高位上增加一个符号位,设置为"1"表示为负数,设置为"0"的时候表示为整数
0  正数
1  负数


考点4:二进制、八进制和十六进制的转换
十六进制数92H的八进制表示为()。
A、444
B、442
C、234
D、222 ✔


\(A(H)=10(D)\)
\(B(H)=12(D)\)
\(C(H)=13(D)\)
\(D(H)=14(D)\)
\(E(H)=15(D)\)
\(F(H)=16(D)\)


92的16进制转2进制:
9(H)=\(2^{3}+2^{0}\)
    =1001(B)
2(H)=0010(B)
92(H)=1001 0010(B)


2进制转8进制:
1001 0010(B) = 010 010 010(B)
             =  2   2   2 (O)
             = 222  (O)

总结-进制的转换



1.3 原码、反码、补码和移码

8-1.3 原码、反码、补码和移码

1)转换规则

01100010(B)=98(D)

码制 正数 负数 运算规则
原码 0 110 0010 1 110 0010 最高位为符号位。
为0表示正数,
为1表示负数
反码 0 110 0010 1 001 1101 原码基础上,
正数保持不变,
负数符号位不变其余位按位取反
补码 0 110 0010 1 001 1110 反码基础上,
正数保持不变,
负数+1
移码 1 110 0010 0 001 1110 补码基础上,将符号位取反
原反补: 正数保持不变

2)±0的表示

数值0 数值-0 0-0
原码 0000 0000 1000 0000 1000 0000
反码 0000 0000 1111 1111 1111 1111
补码 0000 0000 0000 0000 0000 0000
移码 1000 0000 1000 0000 0000 0000
注意:在【补码】和【移码】表示中,0有唯一的维码;【补码】中+0和-0均为00000000。
      多数计算机都采用【补码】进行加减运算,其符号位和数值位一样参与运算,无须做特殊处理。

3)表示范围

原码: (定点整数) -(\(2^{n-1}\)-1) ~ +(\(2^{n-1}\)-1)
反码: (定点整数) -(\(2^{n-1}\)-1) ~ +(\(2^{n-1}\)-1)
补码: (定点整数) -\(2^{n-1}\) ~ +(\(2^{n-1}\)-1)
移码: (定点整数) -\(2^{n-1}\) ~ +(\(2^{n-1}\)-1)


  • 定点整数

当n=8,也就是一共8个数位时;
原码 -(\(2^{n-1}\)-1) ~ +(\(2^{n-1}\)-1)    -127 ~ +127

转为二进制:1111 1111 ~ 0111 1111

补码: -\(2^{n-1}\) ~ +(\(2^{n-1}\)-1)     -128 ~ +127

转为二进制:10000 0000  ~ 0111 1111

其中-128的补码为10000 0000是人为设定



考点-原码反码补码移码

考点1:转换规则考察
设机器字长为8,对于二进制编码10101100,如果它是某整数x的补码表示,则x的真值为(),若它是某无符号整数y的机器码,则y的真值为()
A、84
B、-84 ✔
C、172
D、-172


A、52
B、84
C、172 ✔
D、204


补码 ==> 反码 ==> 原码
码制 运算规则
原码 最高位为符号位。
为0表示正数,
为1表示负数
反码 原码基础上,
正数保持不变,
负数符号位不变其余位按位取反
补码 反码基础上,
正数保持不变,
负数+1
移码 补码基础上,将符号位取反

补码的负数:1010 1100
1 010 1100  (补码-负数)
        -1
1 010 1011  (反码-负数)
1 101 0100  (原码-负数)

  101 0100(B)=\(2^{6}+2^{4}+2^{2}\)
        =64+16+4=84=-84

左移相当于减法
010 1100= -44 +(1) = -43 =  010 1011

某无符号整数:1010 1100
1010 1100(B)= \(2^{7}+2^{5}+2^{3}+2^{2}\)=128+32+8+4=172



考点2:土0的表示
计算机中常用原码、反码、补码和移码表示数据,其中表示0时仅用一个编码的是()。
A、原码和反码
B、原码和补码
C、反码和移码
D、补码和移码 ✔


注意:在【补码】和【移码】表示中,0有唯一的维码;[补码]中+0和-0均为00000000。


考点3:补码实现计算
在定点二进制运算中,减法运算一般通过()来实现。
A、补码运算的二进制减法器
B、原码运算的一进制减法器
C、原码运算的二进制加法器
D、补码运算的一进制加法器 ✔


多数计算机都采用【补码】进行加减运算,其符号位和数值位一样参与运算,无须做特殊处理。


考点4:表示范围
设机器字长为8个二进制位,对于十进制数-128,其补码表示为()。
A. 1111 1111
B. 1111 0000
C. 1000 0000 ✔
D. 1000 1000


-128的补码为10000 0000是人为设定


总结-原码反码补码移码



1.4 浮点数

9-1.4 浮点数01
10-1.4 浮点数02

知识点


1)浮点数的表示:数符、尾数、阶符、阶码

1)浮点数的表示
N=尾数x\(基数^{指数}\)
N=数符x尾数mx\(2^{阶符*阶码e}\)


数符±   尾数m  阶符±  阶码e 

尾数部分:定点小数
阶码部分:定点整数
特点:
1、阶码的位数决定数的表示范围,位数越多范围越大
2、尾数的位数决定数的有效精度,位数越多精度越高

1.23x\(10^{-3}\)
数符±: +
尾数m: 1.23 , 2进制的尾数都是以2进制表示
阶符±: \(10^{-3}\) 中的 -
阶码e: \(10^{-3}\) 中的 3


1.234x\(10^{5}\)
数符±: +
尾数m: 1.234
阶符±: \(10^{-3}\) 中的 +
阶码e: \(10^{5}\) 中的 5


1.2x\(10^{2345}\)
数符±: +
尾数m: 1.2
阶符±: \(10^{2345}\) 中的 +
阶码e: \(10^{2345}\) 中的 2345


二进制:
1010 x \(2^{110}\)
1000001 x \(2^{1010}\)


2)浮点数加减运算过程

两浮点数加减运算过程:
1、对阶
2、尾数计算
3、结果格式化

注意:
1、对阶时,小数向大数看齐
2、对阶是通过较小数的尾数右移实现的

二进制的结果格式化(约定):
对于正数,以01开头, 尾数在0.5~1范围内
对于负数,以10开头

0.1001x\(2^{100}\)+0.110x\(2^{011}\)

         \(\downarrow\)

0.1001x\(2^{4}\)+0.110x\(2^{3}\)

         \(\downarrow\)

0.1001x\(2^{4}\)+0.0110x\(2^{4}\)

         \(\downarrow\)

0.1001x\(2^{100}\)+0.0110x\(2^{100}\)

         \(\downarrow\)

(0.1001 + 0.0110) x\(2^{100}\)

         \(\downarrow\)

0.1111 x \(2^{100}\)



1、对阶时,小数向大数看齐
2、对阶是通过较小数的尾数右移实现的

1.23 x \(10^{2}\) \(\Rightarrow\) 0.123 x \(10^{3}\)
1.25 x \(10^{3}\) \(\Rightarrow\) 1.250 x \(10^{3}\)


加法:
1.250 x \(10^{3}\) + 0.123 x \(10^{3}\) =
    (1.250 + 0.123) x \(10^{3}\)
              1.373 x \(10^{3}\)



3)浮点数二进制

实例:
-37/64采用8位定点机器码表示

①转分数形式
②分子转二进制
③分子部分尾数右移
④添加符号位
⑤补足位数

-37/64
   \(\downarrow\)

-37/\(2^{6}\)

   \(\downarrow\)

-37 x \(2^{-6}\)

   \(\downarrow\)

-(32+(4+1)) x \(2^{-6}\)

   \(\downarrow\)

-(\(2^{5}\) + (\(2^{2}\) + \(2^{0}\)) )x \(2^{-6}\)

   \(\downarrow\)

-(0010 0101) x \(2^{-6}\)

   \(\downarrow\)

-(0.10 0101) x \(2^{0}\)

   \(\downarrow\)

1.10 0101 x \(2^{0}\)

   \(\downarrow\)

因为 负数 -

所以 0.10 0101 变为 1.10 0101

   \(\downarrow\)

1.10 01010 x \(2^{0}\)

   \(\downarrow\)

数符±: 1 (0正 1负)
尾数m: .10 01010
阶符±: \(10^{2345}\) 中的 +
阶码e: \(10^{2345}\) 中的 0



考点-浮点数

考点1:阶码和尾数的意义
以下关于浮点数表示的叙述中,正确的是()。
A、浮点数的精度取决于尾数M的位数,范围取决于阶码E的位数 ✔
B、浮点数的精度取决于阶码E的位数,范围取决于尾数M的位数
C、浮点数的精度和范围都取决于尾数M的位数,与阶码E的位数无关
D、浮点数的精度和范围都取决于阶码E的位数,与尾数M的位数无关


32位浮点数,若阶码采用补码表示,为8位(含1位阶符),尾数采用原码表示,为24位(含1位数符),不考虑规格化,阶码的最大值为()。
A、255
B、256
C、127 ✔
D、128



考点2:浮点数加减运算过程
对于浮点数x=m \(\times\) \(2^{i}\) 和 y=W \(\times\) \(2^{j}\) ,已知i>j,那么进行x+y运算时,首先应该对阶,即(),使其阶码相同。
A、将尾数m左移(i-j)位
B、将尾数m右移(i-j)位
C、将尾数w左移(i-j)位
D、将尾数w右移(i-j)位 ✔

1、对阶时,小数向大数看齐
2、对阶是通过较小数的尾数右移实现的

J --> i  ==> (i-j)


考点3:浮点数转二进制
己知X=-79/128,若采用8位定点机器码表示,则[x]补=()。
A.1.1001111
B.0.1001111
C.1.0110001 ✔
D.0.1110001


-79/128

   \(\downarrow\)

-79/\(2^{7}\)

   \(\downarrow\)

-79 x \(2^{-7}\)

   \(\downarrow\)

-(64 + 8 + 4 + 2 + 1) x \(2^{-7}\)

   \(\downarrow\)

-( \(2^{6} + 2^{3} + 2^{2} + 2^{1} + 2^{0}\) ) x \(2^{-7}\)

   \(\downarrow\)
-(0100 1111) x \(2^{-7}\)

   \(\downarrow\)

-(0.1001111) x \(2^{0}\)

   \(\downarrow\)

1.1001111 x \(2^{0}\)

   \(\downarrow\)

1.现在是求得原码的负数
2.原码->反码->补码 (负数)
3.反码:原码基础上,正数保持不变,负数符号位不变其余位按位取反
4.补码:反码基础上,正数保持不变,负数+1

   \(\downarrow\)

x[]原= 1.1001111

   \(\downarrow\)

x[]反= 1.0110000

   \(\downarrow\)

x[]补= 1.01100010



总结-浮点数



1.5 逻辑运算

11-1.5 逻辑运算

知识点


1)逻辑运算规则-与或非、异或-半加

1)逻辑运算规则

逻辑变量之间的运算称为逻辑运算。二进制救1和0在逻辑上可以代表“真”与“假”。

逻辑与 (&&、*、•、\(\bigcap_{}^{}\)\(\wedge\)、AND):连接的两个逻辑值全1时才取1
逻辑或 (||、+、\(\bigcup\)\(\vee\)、0R):连操的两个逻辑值全0时才取0
逻辑非(!、一、~、NOT、 一):将原逻辑值取反即可
逻辑异或/半加(\(\bigoplus\)、XOR):连族的两个逻辑值不相同时才取1,相同则取0


2)真值表

!A A+B A*B A \(\bigoplus\) B
值1 值2 逻辑非 逻辑或 逻辑与 逻辑异或/半加
0 0 1 0 0 0
0 1 1 1 0 1
1 0 0 1 0 1
1 1 0 1 1 0
计算优先级:
逻辑非 > ( 逻辑与 | 逻辑或 )

逻辑与: 连接的两个逻辑值全1时才取1
逻辑或: 连操的两个逻辑值全0时才取0

考点-逻辑运算

考点:用真值表运算


A+B 答案A 答案B ✔ 答案C 答案D
值1 值2 逻辑或 逻辑与
0 0 0 0 0
0 1 1 0 1
1 0 1 1
1 1 1 1


总结-逻辑运算



1.6 校验码

12-1.6 校验码

知识点


奇偶校验码

奇偶校验
由若干位有效信息(如一个字节),再加上一个二进制位(校验位)组成校验码。
  奇校验:整个校验码(有效信息位和校验位)中“1"的个数为奇数。
  偶校验:整个校验码(有效信息位和校验位)中“1"的个数为偶数。

奇偶校验,可检查奇数位的错误,不可纠错。如果偶数位发生错误,则发现不了。

海明码、汉明码

海明码:也是利用奇偶性进行 [检错] 和 [纠错] 。在数据位之间插入K个校验位,通过扩大码距来实现检错和纠错。
校验位设置在\(2^{i}\)的位置。其位置关系存在一个规律,即\(2^{P}\)\(\geqslant\)P+D+1,其中P代表海明码的个数,D代表数据位的个数。


CRC循环冗余校验码

循环冗余校验码:(n,k)码,信息码占左边的k位,校验码占右边的n-k位,校验码位数越长,校验能力越强。
在求CRC编码时,采用的是模二运算。(可检错)


考点-校验码

考点1:奇偶校验
已经某字符的ASCII码值用十进制表示为69,若用二进制形式表示并酱最高位设置为偶校验位,则为( ).
A、1100 0101 ✔
B、0100 0101
C、1100 0110
D、0110 0101


69(D)=64+4+1=\(2^{6}\)+\(2^{2}\)+\(2^{0}\)=\(01000101_(B)\)=\(11000101_{偶校验}\)



考点2:检错性能比较
()是可以检错和纠错的校验码。
A、海明码 ✔
B、原码
C、反码
D、补码



总结-校验码



1.7 计算机的分类

13-1.7 计算机的分类

1)按照计算机体积和工作能力划分

个人移动设备:带有多媒体用户界面的无线设备,如智能手机、平板电脑等

桌面计算机:基于超大规模集成电路技术的CPU,包括低端的上网本、笔记本、台式机和高配置的工作站

服务器:提供大规横的可靠的文件及计算服务

集群/仓库级计算机:
  集群机将一组爽面计算机观服务器用网络连接在一起,运行方式类似于一个大型的计算机。
  仓库级计算机将数万个服务器连接在一起形成的大规模集群。

超级计算机:与个人计算机无太大差异,但规格高,性能要强大许多,具有很强的计算能力,但是能耗巨大

嵌入式计算机:专用的,针对某个具体特定的应用,如微波炉、洗衣机、数码产品等


2)按照指令系统划分

指令系统类型 指令 寻址方式 实现方式 其他
CISC
复杂
数量多,
使用频率差别大,
可变长格式
支持多种 微程序控制技术(微码) 研制周期长
RISC
精简
数量少,
使用频率接近,
定长格式,
大部分为单周期指令,
操作寄存器,只有Load/Store操作内存
支持方式少 增加了通用寄存器;
硬布线逻辑按制为主;
适合采用流水线
优化编译,
有效支持高级语言


1.8 计算机系统组成

14-1.8 计算机系统组成

知识点


考点-计算机系统组成

考点:计算机系统的组成
计算机软件有系统软件和应用软件,下列()属于应用软件。
A. Linux
B. Unix
C. Windows7
D. Internet Explorer ✔



1.9 中央处理器

15-1.9 中央处理器

1) 中央处理器的工作流程


2)中央处理器的核心部件

运算器
  \(\color{red}{1.算术逻辑单元ALU}\) :数据的算术运算和逻辅运算
  \(\color{red}{2.累加寄存器AC(数据寄存器)}\):用于留存操作数和中间运算结果并向ALU提供运算对象
  3.状态字寄存器PSW(标志寄存器):存状态标志与控制标志
  4.通用寄存器组:用于暂存操作数成数据的地址

控制器
  \(\color{red}{1.程序计数器PC}\) :存储下一条要执行指令的地址,每取出一条指令,PC内容自动+1
  \(\color{red}{2.指令寄存器IR}\):存放正在执行的指令
  3.指令译码器ID:对现行指令进行分析,确定指令类型和其所要完成的操作以及寻址方式
  4.时序部件:用于产生时序脉冲和节拍电位
  5.状态字寄存器PSW(标志寄存器):保存指令执行完成后产生的条件码



考点-中央处理器

考点1:CPU的构成
CPU是一块超大规模集成电路,其主要部件有()
A、运算器、控制器和系能总线
B、运算器、寄存器组和内存储器
C、控制器、存储器和寄存器组
D、运算器、控制器和寄存器组 ✔


点2:运算器基本部件
CPU中可用来暂存运算结果的是()。
A、算逻运算单元
B、累加器 ✔
C、数据总线
D、状态寄存器


考点3:控制器主要部件
计算机执行程序时,CPU中()的内容总是一条指令的地址。
A、运算器
B、控制器
C、程序计数器 ✔
D、通用寄存器


总结



1.10 指令系统

16-1.10 指令系统

1)指令执行方式

指令执行 \(\rightarrow\) 取指 \(\rightarrow\) 分析 \(\rightarrow\) 执行


计算机性能:
通常用”百万条指令/秒”来表示(MIPS,Million instruction Per Second)来表示计算机的运算速度。
并且计算机的字长越长处理能力越强。


2)指令地址结构

一条指令就是机器语言的一个语句,它是一组有意义的二进制代码,指令的基本格式如下:

值1 值2
操作码字段 地址码字段

操作码部分指出了计算机要执行什么性质的操作,如加法、减法、取数、存数等。
地址码字段需要包含各操作数的地址及操作结果的存放地址等,从其地址结构的角度可以分为三地址指令、二地址指令、一地址指令和零地址指令。


三地址指令

值1 值2 值3 值4
OP \(A_1\) \(A_2\) \(A_3\)

二地址指令

值1 值2 值3
OP \(A_1\) \(A_2\)

一地址指令

值1 值2
OP \(A_1\)

零地址指令

值1
OP


3)寻址方式

立即寻址方式:
特点:操作数直接在指令中,速度快,灵活性差

直接寻址方式:
特点:指令中存放的是操作数的地址

间接寻址方式:
特点:指令中存放了一个地址,这个地址对应的内容是操作数的地址。

寄存器寻址方式:
特点:寄存器存放操作数

寄存器间接寻址方式:
特点:寄存器内存放的是操作数的地址

就像找宝,有的直接是宝(立即),有的宝是地图要过去找(直接),有的地图一打开又是个地址(间接 )


考点-指令系统

考点1:流水线技术
计算机系统采用()技术执行程序指令时,多条指令执行过程的不同阶段可以同时进行处理。
A、流水线 ✔
B、云计算
C、大数据
D、面向对象


考点2:寻址方式
在寻址方式中,将操作数的地址放在寄存器中的方式称为()
A、直接寻址
B、问接寻址
C、寄存器寻址
D、寄存器间接寻址 ✔



1.11 存储体系

17-1.11 存储体系01
18-1.11 存储体系02

知识点


1)层次化存储结构

内存:一般用于临时存储计算机运行时所需的程序、数据及运行结果。
外存:用于长期保存信息。
寄存器:位于CPU中,用于临时存放少量的数据,运算结果和正在执行的指令。

2)Cache

  1.基于成本和性能方面的考虑,Cache(即高速缓存)是为了解决相对较慢的主存与快速的CPU之间工作速度不匹配问题而引入的存储器。
  2.Cache容量较小,速度比主存快5~10倍,存储的是主存内容的副本。
  3.主存地址与Cache地址之间的转换工作由硬件自动完成。
  4.在计算机的存储系统体系中,Cache是访问速度最快的腰次(若有寄存器,则寄存器最快)。
  5.使用Cache改善系统性能的依据是程序的局部性原理。
  6.时间局部性:某条指令一旦执行,可能将会再次被执行;某数据被访问,可能将会再次被访问。
  7.空间局部性:某程序一旦访问了某个存储单元,其附近的存储单元也可能将会被访问。


3)主存储器: ROM和RAM

主存储器:
  ROM只读存储器):ROM中的内容在厂家生产时写入,其内容只能读出不能改变,断电后其中的内容不会失。
  RAM(随机存储器):既可以写入也可以读出,断电后信息无法保存,只能用于暂存数据。RAM又可以分为SRAMIDRAM两种。
    SRAM:不断电情况下信息一直保持而不委失
    DRAM:信息会随时间逐渐消失,需要定时对其进行刷新来雄持信息不丢失


思考题:
回收站和剪切板分别占用内存还是外存的存储空间?

回收站: 外存
剪切板: 内存


3)主存储器: 存储容量单位

3)主存储器:存储容量单位
字(Word): 计算机进行数据处理时,一次存取、加工和传送的数据长度称为字。
  字的位数可以是16位、32位、64位等。
地址:整个内存被分成若干个存储单元,每个单元用地址(唯一的编号)来标识
位(b/bit):存放一位二进制数
字节(B/Byte):8个二进制位为一个字节

1B=8b
1KB=1024B 
1MB=1024KB 
1GB=1024MB 
1TB=1024GB
1PB=1024TB 
1EB=1024PB 

3)内存:内存编址

存储单元
  按字编址:存储体的存储单元是\(\color{red}{字存储单元}\),即最小寻处单位是\(\color{red}{一个字}\)
  按字节编址:存储体的存储单元是\(\color{red}{字节存储单元}\),即最小寻址单位是\(\color{red}{一个字节}\)


根据存储器所要求的容量和选定的存铺芯片的容量,就可以计算出所需芯片的总数。
    总片数=总容量/每片的套量


例:若内存地址区同为4000H~43FFH,每个存储单元可存储16位二进制数,该内存
区域用4片存储器芯片构成,则构成该内存所用的存储器芯片的容量是多少?
A.512 x 16bi
B.256 x 8bit
C.256 X 16bit ✔
D.1024 × 8bH


字长: 1个存储单元可存储16位二进制数

存储芯片容量=\(\frac{总容量}{4片存储器芯片}\)=\(\frac{容量*16bit}{4片存储器芯片}\)=\(\frac{(43FF-4000H+1)*16bit}{4片存储器芯片}\)=\(\frac{(400H)*16bit}{4片存储器芯片}\)=\(\frac{(4*16^{2})*16bit}{4片存储器芯片}\)=256 X 16bit



考点-存储系统

考点1:层次化存储体系
在计算机的存储系统中,()属于外存储器。
A、硬盘 ✔
B、寄存器
C、高速缓存
D、主存


考点2:Cache的目的和存储内容
在CPU和主存之间设置“Cache”的作用是为了解决()的问题。
A、主存容量不足
B、主存与辅助存储器速度不匹配
C、主存与CPU速度不匹配 ✔
D、外设访问效率


考点3:ROM和RAM的区别
以下关于SRAM(静态随机存储器)和DRAM(动态随机存储器)的说法中,正确的是()。
A、SRAM的内容是不变的,DRAM的内容是动态变化的
B、DRAM断电时内容会丢失,SRAM的内容断电后仍能保持记忆
C、SRAM的内容是只读的,DRAM的内容是可读可写的
D、SRAM和DRAM都是可读可写的,但DRAM的内容需要定期刷新 ✔


考点4:内存编址
某计算机内存空间按字节编址,起始地址为0000A000H、终止地址为0000BFFFH的内存区域容量为()KB。
A、8 ✔
B、13
C、1024
D、8192


按字节编址:存储体的存储单元是字节存储单元,即最小寻址单位是一个字节. 1B=8bit

内存区域容量=\(\frac{(0000BFFFH-0000A000H+1)*1B}{1KB}\)=\(\frac{(2000H)*1B}{1024B}\)=\(\frac{(2*16^{3})*1B}{1024B}\)=\(\frac{(2*2^{4*3})*1B}{1024B}\)=\(\frac{(2*2^{12})*1B}{1024B}\)=\(\frac{(2^{13})*1B}{2^{10}B}\)=\(\frac{(2^{13})*1B}{2^{10}B}\)=8



总结-存储体系



1.12 总线系统

19-1.12 总线系统

芯片内总线
  用于集成电路芯片内部各部分连接


元件级总线
  用于一块电路板内各元器件的连接


\(\color{red}{系统总线/内总线}\)
  最重要的总线,用于计算机各组成部分(\(\color{red}{CPU、内存和接口}\)等)的连接
    ISA总线: 工业标准总线、16条数据线、24条地址线
    EISA总线:扩展工业标准总线、32条数据线、32条地址线
    PCI总线:外设部件互连标准、微机中广泛使用


通信总线/外总线
  用于计算机与外设或计算机与计算机之间的连接或通信
    RS-232C
    SCSI总线
    USB
    IEEE-1394



2)系统总线:系统总线性能

总线的带宽(总线数据传输速率):单位时间内总线上传送的数据量,即每钞钟传送MB的最大稳态数据传输率。
总线的带宽=总线的工作频率*总线的位宽/8=\(\frac{总线的工作频率*总线的位宽}{8}\)


总线的位宽:
能同时传送的二进制数据的位数,或数据总线的位数,即32位、64位等总线宽度的概念。总线的位宽越宽,每秒钟数据传输率越大,总线的带宽越宽。


总线的工作频率:以MHZ为单位,工作频率越高,总线工作速度越快,总线带宽越宽。(每秒百万个时钟脉冲)


工作频率:一秒能够传输多少次
位宽:一次能够传输多少字节/位数据


2)系统总线:三总线系统

系统总线 -
    地址总线
      CPU是通过地址总线来指定存储单元的,其决定了CPU所能访问的最大内存空间的大小。
      例如:若计算机的地址总线的宽度为32位,则最多允许直接访问4GB的物理空间,所以最多支持4G内存。
      一个CPU的寻址能力为8K,那么它的地址总线的宽度为13。


    数据总线
      CPU与内存或其他器件之间的数据传送的通道,决定了CPU和外界的数据传送速度。
      每条传输线一次只能传输1位二进制数据。
      例如:8根数据线一次可传送一个8位二进制数据(即一个字节)。
      “64位的CPU“是指CPU的数据总线的宽度是64位。字长取决于数据总线的宽度。


    控制总线
      对外部器件进行控制,其宽度决定了CPU对外部器件的控制能力。


设有一个64K×32位的存储器(每个存储单元为32位),其存储单元的地址宽度为64K=\(2^{16}\),总共16位。这里32位可以说是每个存储单元为32位,也可以理解为数据总线宽度是32。


AB:地址总线:
  1.单向传输(从CPU到外部设备)
  2.如果地址总线为n 则地址总线可寻址空间为2的n次方字节(B)
    可寻址空间=地址总线宽度
  3.传输地址

DB:数据总线:
  1.双向传输
  2.传输数据
  3.字长(一个存储单元)决定数据总线宽度
  4.ISA/AGP/PCI/PCI-E等


CB:控制总线:
  1.由控制信号和时序信号

考点1:系统总线的性能
微机系统中系统总线的()是指单位时间内总线上传送的数据量。
A、主频
B、工作频率
C、位宽
D、带宽 ✔


考点2:数据总线
计算机中数据总线的宽度是指()。
A、通过它一次所能传递的字节数
B、通过它一次所能传递的二进制位数 ✔
C、CPU能直接访问的主存单元的个数
D、CPU能直接访问的磁盘单元的个数


考点3:地址总线
若计算机中地址总线的宽度为24位,则最多允许直接访问主存储器()的物理空间(以字节为单位编址)。
A、8MB
B、16MB ✔
C、8GB
D、16G


若计算机的地址总线的宽度为32位,则最多允许直接访问4GB的物理空间,所以最多支持4G内存。

\(2^{24}\)=\(2^{4}\)x\(2^{10}\)x\(2^{10}\)=16M Byte



总线-总线系统



1.13 IO接口与设备

20-1.13 IO接口与设备

1)输入设备和输出设备划分

  输入设备:
    键盘:字符/数字键、功能键、控制键
    鼠标:常见操作有滑动、单击、双击、拖动
    扫描仪:图形、图像输入设备
    其他输入设备:触摸、声音输入设备、手写输入设备、条形码阅读器、光学字符阅读器OCR


  输出设备:
    显示器:分辨率(清晰程度)、可视角度(观看范围)、信息响应时间
      (流畅情况)、对比度(亮度的比值)
    打印机:激光打印机、喷墨打印机、针式打印机
    绘图仪:按照人们的要求自动绘制图形的设备


2)CPU与外设之间进行交换数据的方式

CPU与外设之间进行交换数据的方式:
  直接程序控制
     立即程序传送方式(无条件传送或同步传送):I/O接口总是准备接收来自主机的数据或向主机输入数据,无需查看接口的状态
     程序查询方式:CPU通过查询执行程序查询外设的状态进行判断是否准备好,简单且容易实现,但降低了CPU的利用率


  中断方式
     I/O接口准备好后会发送中断信号通知CPU,CPU确认后保存正在执行程序现场转而执行I/O中断服务程序


  直接存储器存取DMA方式
     数据的传送由DMA控制器进行控制,不需要CPU的于涉,只能进行简单的数据传


  通道控制方式
    CPU按约定格式准备数据和命令,然后启动通道,通道执行相应的通道程序完成所要求的操作


直接程序控制
  a.立即程序传送方式(耗时CPU)
      1.io接口一直开放
      2.直接传送(总是准备接受主机的数据或向主机输入数据),不一定处理
  b.程序查询方式(耗时CPU)
      1.CPU查询io是否忙碌,执行之前的任务
      2.CPU查询io准备好了,准备传送


中断方式(CPU和IO可以并行处理)
      1.IO准备好了发送---中断信号
      2.CPU接收到中断信号,中断之前任务就执行传输
      3.在传输前各自运行自己的任务


直接存储器 存储DMA方式(简单数据传送)(CPU和IO可以并行处理)(外设和主存直接传送)
      1.不需要CPU控制
      2.DMA控制,所有数据发给DMA控制器,DMA传输


通道控制方式(CPU和IO可以并行处理)(外设和主存直接传送)
      1.CPU按照格式准备数据命令,启用通道
      2.通道执行相应通道程序完成所要求的的操作

考点-IO接口与设备

考点:CPU与外设之间进行交换数据的方式
在计算机外部设备和主存之间直接传送而不是由CPU执行程序指令进行数据传送的控制方式称为()。
A、程序查询方式
B、中断方式
C、并行控制方式
D、DMA方式 ✔



1.14 计算机性能指标

21-1.14 计算机性能指标

1)主要性能指标

CPU主要性能指标
    1.主频 -
      CPU时钟频率
      主频超高CPU的速度越快
      主频=外频X倍频
    2.内存总线速度 -
      CPU与二级高速缓存和内存之间的通信速度
    3.扩展总线速度 -
      CPU与扩展设备之间的数据传输速度


计算机系统的效率
    1.响应时间 -
      从用户输入完整的操作命令到系统开始显示应答信息为止的这段时间
    2.吞吐量 -
      单位时间内系统完成的工作量
    3.周转时间-
      用户提交作业到执行后该作业返回给用户所需的时间


响应时间和周转时间越短越好(反)
吞吐量越大执行时间越快(正)

2)系统可用性



考点-计算机性能指标

考点1:可靠性
计算机系统的工作效率通常用()来度量:计算机系统的可靠性通常用()来评价。
A、平均无故障时间(MTBF)和吞吐量
B、平均修复时间(MTTR)和故障率
C、平均响应时间、吞吐量和作业周转时间 ✔
D、平均无故障时间(MTBF) 和平均修复时间(MTTR)


A、平均响应时间
B、平均无故障时间(MTBF) ✔
C、平均修复时间(MTTR)
D、数据处理速率


考点2:运算能力
通常,用于大量数据处理为主的计算机对()要求较高。
A、主机的运算速度、显示器的分辨率和I/O的速度
B、显示器的分辨率、外存储器的读写速度和I/0设备的速度
C、显示器的分辨率、内存的存取速度和外存储器的读写速度
D、主机的内存容量、内存的存取速度和外存储器的读写速度 ✔



22-1.15 章节总结

02.操作系统基础知识

23-2.1章节概述
24-2.2媒体的种类
25-2.3音频
26-2.4图形和图像
27-2.5动画和视频
28-2.6多媒体相关计算内容
29-2.7章节总结

03.程序设计语言基础知识

30-3.1章节概述
31-3.2操作系统概述01
32-3.2操作系统概述02
33-3.2操作系统概述03
34-3.3进程管理01
35-3.3进程管理02
36-3.3进程管理03
37-3.4存储管理01
38-3.4存储管理02
39-3.5 设备管理
40-3.6文件管理01
41-3.6文件管理02
42-3.7 作业管理与用户界面
43-3.8 章节总结
44-4.1 章节概述
45-4.2 程序设计语言及其构成
46-4.3 表达式
47-4.4 传值和传址调用
48-4.5 语言处理程序
49-4.6 编译程序
50-4.7 有限自动机和正规式
51-4.8 章节总结

04.教据结构与算法

52-5.1章节概述
53-5.2顺序表和链表
54-5.3数组
55-5.4字符串
56-5.5矩阵01
57-5.5矩阵02
58-5.6栈和队列
59-5.7树的基本性质
60-5.8树的遍历
61-5.9特殊二叉树
62-5.10图01
63-5.10图02
64-5.11算法特性与复杂度
65-5.12查找01
66-5.12查找02
67-5.13插入类排序01
68-5.13插入类排序02
69-5.14交换类排序
70-5.15选择类排序
71-5.16 归并和基数排序
72-5.17章节总结

05.软件工程基础知识

6.1 章节概述

73-6.1 章节概述



6.2软件工程概述

74-6.2软件工程概述01
75-6.2软件工程概述02

1)软件生存周期

软件:包含程序、数据及相关文档。
软件工程:涉及到软件开发、维护、管理等多方面的原理、工具与环境。最终的目的是开发高质量的软件。
目的:提高软件生产率、提高软件质量、降低软件成本。



问题定义:要解决的问题是什么
可行性分析: 研究问题的范围,是否值得去解,是否有可行的解决办法
需求分析: 确定软件系统必须做什么,确定功能、性能、数据和界面要求,确定逻辑模型
总体设计: 概括地说,如何解决这个问题?指定推荐系统的详细计划并设计软件的结构
详细设计: 怎样具体实现这个系统?对模块完成的功能进行具体描述
编码和单元测试: 写成某种特定程序设计语言表示的源程序清单及测试每一个模块
综合测试: 通过各类型的测试使软件达到预定的要求
维护: 通过各种必要的维护活动使系统持久满足用户的需要


文档的作用:
1.提高软件开发过程的能见度;
2.提高开发效率,便于发现错误和不一致性;
3.作为开发人员在一定阶段的工作成果和结束标志;
4.记录开发过程中的有关信息,便于协调以后的软件、开发、使用和维护;
5.提供对软件的运行、维护和培训的有关信息,便于相关人员和用户之间的协作、交流和了解;
6.便于潜在用户了解软件的功能、性能等各项指标,为他们选购符合自己需要的软件提供依据。



2)软件生存周期模型


瀑布模型 Waterfall Model
  将软件生存周期各个活动规定为依线性顺序连接起来的若干阶段的模型。
  适合需求明确的模型,但缺乏灵活性,客户需完整表示需求


演化模型 Evolutionary Model
  适合对需求缺乏准确认识的情况,根据用户使用过程中提出的意见和建议对原型不断重复改进,缺点是要对用户要求加以控制

增量模型 Incremental Model
  每一个线性序列产生软件的可发布的“增量”,但需对变更进行规划,否则会造成后来增量的不稳定,部分增量可能需重新开发

螺旋模型 Spiral Model
  结合瀑布模型和演化模型的特点,并加入了风险分析,适合用户需求的动态变化,适合庞大、复杂并且具有高风险的系统

喷泉模型 Fountain Model
  以用户需求为基础,适合面向对象开发,开发过程具有迭代性和无间隙性,开发要重复多次,且开发活动不存在明显边界

统一过程 Unified Process
  用例和风险驱动,以架构为中心,迭代的增量开发过程,将开发项目划分为小的“袖珍项目”,其每个都包含所有元素

敏捷方法 Agile Development
  通过“尽可能早地、持续地对有价值的软件的交付”使客户满意。
  包括极限编程XP、水晶法、并列争求法和自适应软件开发ASD




3)软件开发方法

软件开发方法: 结构化方法、Jackson方法、票型化方法、面向对象开发方法。

结构化方法: 自顶而下、逐层分解。原则是分解与抽象,开发周期长,不适用于大规模、复杂的项目以及变化的需求

Jackson方法: 面向结构的开发方法。主要包括JSP (Jackson Structured Programming)和JSD (Jackson System Development)

原型化方法: 适合用户需求不清晰、业务理论不确定、且需求经常变化的情况适合小规模的项目

面向对象开发方法: 包括面向对象分析、设计与实现,适合比较复杂的项目模型

考点1:软件生命周期
In general, a typical( ) model is composed of several phases, such as requirements analysis phase ,general/detailed design phase ,implementation phase,system acceptance testing phase.
A. Waterfall &#10004;
B. Incremental 
C. Spiral
D. Prototyping

考点2:开发方法
以下关于结构化方法的叙述中,不正确的是()。
A、指导思想是自顶向下、逐层分解
B、基本原则是功能的分解与抽象
C、适合解决数据处理领域的问题
D、特别适合解决规模大的、特别复杂的项目 &#10004;


6.3 软件需求分析

1)可行性分析


2)软件需求分析


考点-软件需求分析

软件设计

软件设计的原则


内聚和耦合


考点-软件设计的基本概念

考点-内聚和耦合


软件测试

V模型


软件测试的过程


黑盒测试与白盒测试



测试原则与注意事项



考点-软件测试的类型


考点-测试原则和注意事项


考点-测试用例


软件运行与维护

类型
正确性维护
适应性维护
预防性维护
完善性维护




考点-软件维护的含义


考点-软件维护的类型


程序员职业素养

软件工程基本使用


软件工程的最终目标


程序员的职业素养


考点-程序员的职业素养


课程内容提要









76-6.3 软件需求分析
77-6.4 软件设计
78-6.5软件测试01
79-6.5软件测试02
80-6.6 软件运行与维护
81-6.7程序员职业素养
82-6.8 章节总结

09.C语言程序设计

10.C++语言程序设计

11.Java语言程序设计

83-7.1章节概述
84-7.2面向对象的基本概念1
85-7.3UML
86-7.4设计模式
87-7.5章节总结

06.数据库系统基础知识

88-8.1章节概要
89-8.2数据库的基本概念
90-8.3数据流图
91-8.4概念模型
92-8.5关系模型
93-8.6关系运算
94-8.7SQL语言01
95-8.7SQL语言02
96-8.8数据库的控制
97-8.9章节总结

07.网络与信息安全基础知识

98-9.1 章节概述
99-9.2 网络概述
100-9.3OSI和TCPIP01
101-9.3OSI和TCPIP02
102-9.4IP地址与子网划分01
103-9.4IP地址与子网划分02
104-9.5 浏览器基础知识1
105-9.6URL和电子邮件
106-9.7网络安全
107-9.8章节总结

08.标准化与知识产权基础知识

108-10.1章节概述
109-10.2著作权
110-10.3其他权利
111-10.4章节总结

posted @ 2023-04-02 18:42  爱折腾的大臭臭  阅读(238)  评论(0编辑  收藏  举报