计算机科学与技术学科知识体系知识分享.docx
《计算机科学与技术学科知识体系知识分享.docx》由会员分享,可在线阅读,更多相关《计算机科学与技术学科知识体系知识分享.docx(38页珍藏版)》请在冰豆网上搜索。
![计算机科学与技术学科知识体系知识分享.docx](https://file1.bdocx.com/fileroot1/2022-12/12/27ccf558-f648-4e4f-b03e-da594a2c984e/27ccf558-f648-4e4f-b03e-da594a2c984e1.gif)
计算机科学与技术学科知识体系知识分享
计算机科学与技术学科知识体系
下面是14个知识领域(area)及其中的知识单元(llnits)和知识点(topiCS)的描述:
1离散结构(DS)
1.1函数、关系和集合(核心)DS1
1.1.1函数DS11
1.1.1.1满射
1.1.1.2到内的映射
1.1.1.3逆函数
1.1.1.4复合函数
1.1.2关系
1.1.2.1自反
1.1.2.2对称
1.1.2.3传递
1.1.2.4等价关系
1.1.3集合
1.1.3.1文氏图
1.1.3.2补集
1.1.3.3笛卡儿集
1.1.3.4幂集
1.1.4鸽笼原理
1.1.5基数性和可数性
1.2基本逻辑(核心)
1.2.1命题逻辑
1.2.2逻辑连接词
1.2.3真值表
1.2.4范式
1.2.4.1合取式
1.2.4.2析取式
1.2.5永真性
1.2.6谓词逻辑
1.2.7全称量词和存在量词
1.2.8假言推理、否定式推理
1.2.9谓词逻辑的局限性
1.3证明技巧(核心)
1.3.1蕴涵、逆、逆反、置换、非、永假等概念
1.3.2形式证明结构
1.3.3直接证明
1.3.4反例证法
1.3.5逆反式证明法
1.3.6反证法
1.3.7数学归纳法
1.3.8强归纳法
1.3.9递归数学定义
1.3.10良序
1.4计数基础(核心)
1.4.1计数变元
1.4.2求和与相乘的规则
1.4.3包含排斥
1.4.4算术和几何级数
1.4.5斐波那契(Fibonacci)数列
1.4.6排列组合
1.4.7基本定义
1.4.8恒等式
1.4.9二项式定理
1.4.10递归关系
1.4.11实例
1.4.12Master原理
1.5图与树(核心)
1.5.1树
1.5.2无向图
1.5.3有向图
1.5.4生成树
1.5.5遍历策略
1.6离散概率
1.6.1有限概率空间、概率度量、事件
1.6.2条件概率、独立性、贝叶斯规则
1.6.3整型随机变量、期望
2程序设计基础(PF)
2.1程序设计基本结构(核心)
2.1.1变量、类型、表达式和语句
2.1.2高级语言的基本语法和语义
2.1.3输人和输出基础
2.1.4顺序、条件和循环控制结构
2.1.5函数定义、函数调用和参数传递
2.1.6程序结构分解基础
2.2算法与问题求解(核心)
2.2.1问题求解策略
2.2.2问题求解算法
2.2.3算法实现策略
2.2.4调试策略
2.2.5算法的概念和特性
2.3基本数据结构(核心)
2.3.1基本类型
2.3.2数组
2.3.3记录
2.3.4字符串和字符串处理
2.3.5数据在存储器中的表示
2.3.6静态分配、栈式分配和堆式分配
2.3.7运行时的存储器管理
2.3.8指针和引用
2.3.9链式结构
2.3.10栈、队列和哈希表的实现策略
2.3.11树和图的实现策略
2.3.12数据结构的应用和选择策略
2.4递归(核心)
2.4.1递归的概念
2.4.2递归数学函数
2.4.3递归过程
2.4.4分治法
2.4.5回溯法
2.4.6递归的实现
2.5事件驱动程序设计(核心)
2.5.1事件处理方法
2.5.2事件传播
2.5.3异常处理
3算法与复杂性(AL)
3.1算法分析基础(核心)
3.1.1复杂性上界和平均复杂性的渐近分析
3.1.2最佳、最差和平均情况下的复杂性差异
3.1.3大O,小o,Ω和θ符号
3.1.4标准复杂性类
3.1.5性能的经验度量
3.1.6算法时间、空间复杂性的权衡
3.1.7用递归关系分析递归算法
3.2算法策略(核心)
3.2.1穷举算法
3.2.2贪心算法
3.2.3分治算法
3.2.4回溯法
3.2.5分支界限法
3.2.6试探法
3.2.7模式匹配和字符串/文本匹配算法
3.2.8数值逼近算法
3.3基本算法(核心)
3.3.1简单数值算法
3.3.2顺序查找算法和折半查找算法
3.3.3二次排序算法
3.3.3.1选择排序
3.3.3.2插人排序
3.3.4复杂度为O(NlogN)排序算法
3.3.4.1快速排序
3.3.4.2堆排序
3.3.4.3归并排序
3.3.5哈希(Hash)表,包括冲突消解策略
3.3.6二叉查找树
3.3.7图的表示
3.3.7.1邻接表
3.3.7.2邻接矩阵
3.3.8深度优先遍历
3.3.9广度优先遍历
3.3.10最短路径算法(Dijkstra和Floyd算法〕
3.3.11传递闭包(FIoyd算法)
3.3.12最小生成树(Prim算法和Kruskal算法)
3.3.13拓扑排序
3.4分布式算法(核心)
3.4.1一致性和选择
3.4.2终止探测
3.4.3容错
3.4.4稳定性
3.5可计算性理论基础(核心)
3.5.1有限状态自动机
3.5.2上下文无关文法
3.5.3易解问题和难解问题
3.5.4不可计算函数
3.5.5停机问题
3.5.6不可计算性的含义
3.6复杂性类:
P类和NP类(选修)
3.6.1P类和NP类的定义
3.6.2NP完全性
3.6.3基本的NP完全问题
3.6.4归约技术
3.7自动机理论(选修)
3.7.1确定的有限自动机(DFA)
3.7.2非确定的有限自动机(NFA)
3.7.3DFA和NFA的等价性
3.7.4正则表达式
3.7.5正则表达式的泵引理
3.7.6下推自动机(PDA)
3.7.7PDA和上下文无关文法的关系
3.7.8上下文无关文法的特性
3.7.9图灵机
3.7.10非确定的图灵机
3.7.11集合和语言
3.7.12Chomsky文法分类
3.7.13Church-Turing论题
3.8高级算法分析(选修)
3.8.1退火算法分析
3.8.2联机算法和脱机算法
3.8.3随机算法
3.8.4动态程序设计
3.8.5组合优化
3.9加密算法(选修)
3.9.1密码学史回顾
3.9.2私钥密码和密钥交换问题
3.9.3公钥密码
3.9.4数字签名
3.9.5安全协议
3.9.6应用(零知识证明,认证系统等等)
3.10几何算法(选修)
3.10.1线段的性质和线段相交性
3.10.2求凸包算法
3.11并行算法(选修)
3.11.1PRAM模型
3.11.2互斥读写与并发读写
3.11.3指针跳转
3.11.4Brent定理和工作效率
4计算机组织与体系结构(AR)
4.1数字逻辑与数字系统(核心)
4.1.1计算机发展历史回顾
4.1.2基本的组成元件(逻辑门,触发器,计数器,寄存器,PLA)
4.1.3逻辑表达式,最小化,寄存器传输的表示,物理特性(门延迟,扇入,扇出)
4.1.4计算机的基本组成,硬件结构,软件的概念,计算机语言及其编译
4.1.5计算机系统结构的概念,性能评价
4.2数据的机器级表示(核心)
4.2.1数值表示和数制
4.2.2定点数和浮点数系统
4.2.3有符号数的表示方法和基本运算方法
4.2.4非数值数据的表示(如字符代码和图象数据)
4.2.5系统可靠性与纠错码
4.2.6数据运算器的结构
4.3汇编级机器组织(核心)
4.3.1指令格式
4.3.2数据的存储方式与寻址方式
4.3.3指令集及其分类(数据操作,控制,输入输出)
4.3.4子程序调用和返回机制
4.3.5汇编语言和机器语言编程基础
4.4存储系统组织和结构(核心)
4.4.1存储器件类型及其工作原理
4.4.2主存储器的组织和操作
4.4.3存储器的延迟,工作周期,带宽提高和交叉存储技术
4.4.4层次化存储系统
4.4.5高速缓冲存储器(地址映射,块大小,替换和更新机制)
4.4.6虚拟存储器(页表,TLB快表)
4.5接口和通信(核心)
4.5.1输人输出基本原理,信号交换,缓冲存储
4.5.2程序控制I/O,中断驱动I/O,DMA
4.5.3中断结构,向量化和优先级化,中断识别
4.5.4外部存储器的物理组织及驱动
4.5.5总线和总线协议,仲裁机构和直接存储器存取(DMA)
4.5.6多媒体支持
4.5.7RAID系统结构
4.6功能组织(核心)
4.6.1简单的数据通路实现
4.6.2控制单元,硬连线实现和微程序实现
4.6.3指令读取、解码和执行
4.6.4异常与中断
4.6.5指令流水技术,指令级并行(ILP)技术与循环级并行技术
4.7多处理和其他系统结构(核心)
4.7.1SIMD,MIMD,VLIW和EPIC
4.7.2网络互联(超立方体,混洗交换,网格结构,交叉开关结构)
4.7.3共享存储系统
4.7.4cache一致性
4.7.5存储模型和存储一致性
4.8性能提高技术(选修)
4.8.1超标量体系结构
4.8.2分支预测
4.8.3指令预取
4.8.4推测执行
4.8.5多线程
4.9网络与分布式系统结构(选修)
4.9.1LAN与WAN
4.9.2网络的分层协议
4.9.3分布式算法对系统结构的影响
4.9.4网络计算
4.9.5分布式多媒体
5操作系统(OS)
5.1操作系统概述(核心)
5.1.1操作系统的作用和目的
5.1.2操作系统的发展历史
5.1.3操作系统的特征和功能
5.1.4支持客户——服务器模型和手提设备的机制
5.1.5有关有效性、健壮性、灵活性、可移植性、安全性、兼容性的设计问题
5.1.6安全性、网络化、多媒体、视窗所带来的影响
5.2操作系统原理(核心)
5.2.1结构化方法(整体的、分层的、模块化的、微内核模型)
5.2.2抽象、进程、资源
5.2.3应用程序接口(API)的基本概念
5.2.4应用的需求以及软、硬件技术的发展
5.2.5设备的组织
5.2.6中断的方法和实现
5.2.7用户系统状态及其保护,以及用户/系统状态转换到核心态的原理
5.3并发性(核心)
5.3.1状态和状态图
5.3.2就绪队列、进程控制块等的结构
5.3.3调度和状态转换
5.3.4中断的作用
5.3.5并发执行的优点和缺点
5.3.6互斥问题和一些解决的方法
5.3.7死锁的产生、条件及其预防措施
5.3.8信号量、监控、条件变量、聚集的模型和机制
5.3.9生产者——消费者问题和同步
5.3.10多处理器自旋锁定和重入的问题
5.4调度与分派(核心)
5.4.1抢占和非抢占调度
5.4.2调度和策略
5.4.3进程和线程
5.4.4里程碑和实时问题
5.5内存管理(核心)
5.5.1物理内存和内存管理硬件的回顾
5.5.2覆盖、交换、分区
5.5.3内存分页和分段
5.5.4分配和淘汰策略
5.5.5工作集和系统颠簸
5.5.6高速缓存
5.6设备管理(核心)
5.6.1串行和并行设备的特点
5.6.2设备的分类
5.6.3缓冲策略
5.6.4直接存储器访问(DMA)
5.6.5故障恢复
5.7安全与保护(核心)
5.7.1系统安全概论
5.7.2策略/机制分离
5.7.3安全方法和设备
5.7.4保护、访问、身份验证
5.7.5保护模型
5.7.6内存保护
5.7.7加密技术
5.7.8恢复管理
5.8文件系统(核心)
5.8.1文件中的数据和元数据,文件的操作、组织及缓冲,顺序文件和非顺序文件
5.8.2目录的内容和结构
5.8.3文件系统(磁盘分区、文件的安装/卸载、虚拟文件系统)
5.8.4标准的实现技术
5.8.5内存映像文件
5.8.6特定用途的文件系统
5.8.7文件的命名、搜索、访问、备份
5.9实时和嵌入式系统(选修)
5.9.1进程和任务调度
5.9.2实时环境中内存/硬盘管理所需要的条件
5.9.3故障、风险、恢复
5.9.4实时系统中需考虑的特殊问题
5.10容错(选修)
5.10.1基本概念(可靠性和可用性系统)
5.10.2空间和时间冗余
5.10.3实现容错的方法
5.10.4可靠系统的实例
5.11系统性能评价(选修)
5.11.1系统性能评价的意义
5.11.2评价的内容
5.11.3高速缓存、内存分页、调度安排、内存管理、安全等策略
5.11.4确定型的、分析型的、仿真型的、具体实现型的评估模型
5.11.5收集评估数据的方法(剖析和追踪机制)
5.12脚本(选修)
5.12.1脚本和脚本语言的作用
5.12.2基本系统命令
5.12.3建立脚本、传递参数
5.12.4执行一个脚本
5.12.5脚本对编程的影响
6网络及其计算(NC)
6.1网络及其计算介绍(核心)
6.1.1网络和因特网发展的历史和背景
6.1.2网络体系结构
6.1.3网络及其计算的主要内容
6.1.4网络和协议
6.1.5网络多媒体系统
6.1.6分布式计算
6.1.7移动和无线计算
6.2通信与网络(核心)
6.2.1网络标准与相关标准化组织
6.2.2ISO七层参考模型和TCP/IP模型
6.2.3电路交换和分组交换
6.2.4流和数据报
6.2.5网络物理层概念:
理论基础、传输媒体、标准以及接口
6.2.6数据链路层概念:
组帧、差错控制、流量控制和协议
6.2.7互联和路由:
路由算法、拥塞控制以及网络互联
6.2.8传输层服务:
连接的建立与释放、性能问题、传输层的基本元素
6.3网络安全(核心)
6.3.1密码学基础
6.3.2密钥算法
6.3.3公钥算法
6.3.4认证协议
6.3.5数字签名
6.3.6举例
6.4客户—服务器计算举例(核心)
6.4.1Web技术
6.4.2服务器端程序
6.4.3公共网关接口(CGI)程序
6.4.4客户端脚本
6.4.5Applet概念
6.4.6Web服务器特征
6.4.7处理许可
6.4.8文件管理
6.4.9常用服务器体系的性能
6.4.10客户计算机的角色
6.4.11客户服务器联系的性质
6.4.12Web协议
6.4.13Web站点创建和Web管理的支持工具
6.4.14开发因特网信息服务器
6.4.15客户端程序开发
6.5构建Web应用(核心)
6.5.1应用层协议
6.5.2Web工程原理
6.5.3数据库驱动的Web站点
6.5.4远程过程调用(RPC)
6.5.5轻量分布式对象
6.5.6中间件的角色
6.5.7支持工具
6.5.8分布式对象系统的安全问题
6.5.9基于Web的企业级应用
6.6网络管理(核心)
6.6.1网络管理问题概述
6.6.2口令和访问控制技术的使用
6.6.3域名和名字服务
6.6.4因特网服务提供者(ISP)问题
6.6.5安全问题和防火墙
6.6.6服务质量问题:
性能、故障恢复
6.7压缩与解压缩(选修)
6.7.1模拟和数字表示法
6.7.2编码和解码算法
6.7.3有损和无损压缩
6.7.3数据压缩:
Huffman编码、Ziv-Lempel算法
6.7.4视频压缩和解压缩
6.7.5图像压缩和解压缩
6.7.6音频压缩和解压缩
6.7.7定时、压缩因子以及实时应用的适宜性
6.8多媒体数据技术(选修)
6.8.1声音和音频、图像和图形、动画和视频
6.8.2多媒体标准(音频、音乐、图形、图像、电话、视频以及TV)
6.8.3容量计划和性能问题
6.8.4输入输出设备(扫描仪、数码相机、触摸屏、语音识别)
6.8.5MIDI键盘、合成
6.8.6存储标准(CD-ROM、DVD)
6.8.7多媒体服务器和文件系统
6.8.8支持多媒体开发的工具
6.9无线和移动计算(选修)
6.9.1概述历史、发展以及无线标准的兼容性
6.9.2无线和移动计算的特殊问题
6.9.3无线局域网和基于卫星的网络
6.9.4无线本地回路
6.9.5移动因特网协议
6.9.6扩展客户/服务器模型,以适应移动的特征
6.9.7移动数据访问:
服务器数据分发和客户缓冲管理
6.9.8支持移动和无线计算的软件包
6.9.9中间件和支持工具的角色
6.9.10性能问题
6.9.11新技术
7程序设计语言(PL)
7.1程序设计语言概论(核心)
7.1.1程序设计语言的历史
7.1.2程序设计语言范型概述
7.1.2.1过程式语言
7.1.2.2面向对象语言
7.1.2.3函数语言
7.1.2.4说明性,非算法式语言
7.1.2.5脚本式语言
7.1.3程序设计方法学的规模效应
7.2虚拟机(核心)
7.2.1虚拟机的概念
7.2.2虚拟机层次结构
7.2.3中间语言
7.2.4不同机器上运行代码的安全性问题
7.3语言翻译简介(核心)
7.3.1解释器和编译器的比较
7.3.2语言翻译步骤(词法分析,语法分析,代码生成,优化)
7.3.3机器相关翻译,机器无关翻译
7.4声明和类型(核心)
7.4.1类型的值集和操作集的概念
7.4.2声明模式(绑定、可见性、作用域与生存期)
7.4.3类型检查概论
7.4.4垃圾回收
7.5抽象机制(核心)
7.5.1过程和函数等抽象机制
7.5.2参数化机制(引用调用和值调用)
7.5.3活动记录和内存管理
7.5.4类型参数和参数化类型
7.5.5程序设计语言模型
7.6面向对象程序设计(核心)
7.6.1面向对象设计
7.6.2封装与信息隐藏
7.6.3行为与实现的分离
7.6.4类与子类
7.6.5继承(支配,动态派生)
7.6.6多态性(子类型多态和继承)
7.6.7类的层次
7.6.8类的收集与重用协议
7.6.9对象和方法的内部表示
7.7函数程序设计(选修)
7.7.1函数语言概述和机能
7.7.2递归表,自然数,树和其他递归定义数据
7.7.3语用学(通过划分和占用进行调试,数据结构的延续)
7.7.4函数数据结构的分期清偿效应
7.7.5数据函数的关闭和使用(有限集,流)
7.8语言翻译系统(选修)
7.8.1正规表达式在词法分析中的应用
7.8.2分析(具体和抽象语法分析,抽象语法分析树)
7.8.3表驱动和递归下降分析法中上下文无关文法的应用
7.8.4符号表管理
7.8.5通过走树生成代码
7.8.6优化技术
7.8.7特定体系结构的处理:
指令选择和寄存器分配
7.8.8翻译处理支撑工具的使用及其优点
7.8.9程序库和分别编译
7.8.10语法制导工具的构造
7.9类型系统(选修)
7.9.1具有操作集的值集的数据类型
7.9.2数据类型:
7.9.2.1基本数据类型
7.9.2.2构造和副构造类型
7.9.2.3代数类型
7.9.2.4递归类型
7.9.2.5向量(函数)类型
7.9.2.6参数类型数据类型和用户自定义数据类型
7.9.3数据类型的划分
7.9.4基本数据类型、结构数据类型和用户自定义数据类型
7.9.5类型检查模型
7.9.6用户自定义类型的语义模型:
7.9.6.1类型省略
7.9.6.2抽象数据类型
7.9.6.3类型等价
7.9.7参数的多态性
7.9.8子类型的多态性
7.9.9类型检查算法
7.10程序设计语言的语义(选修)
7.10.1非形式语义学
7.10.2形式语义学概述
7.10.3指称语义学
7.10.4公理化语义学
7.10.5操作语义学
7.11程序设计语言的设计(选修)
7.11.1程序设计语言的设计总则及目标
7.11.2设计目标
7.11.3类型机制
7.11.4数据结构模型
7.11.5控制结构模型
7.11.6抽象机制
8人机交互(HC)
8.1人机交互基础(核心)
8.1.1动机:
为什么关心人
8.1.2HCI的内容(工具、Web超媒体和通信)
8.1.3以人为本的开发和评估
8.1.4人的行为模型:
感知、行动和认知
8.1.5人的行为模型:
文化、交流和组织
8.1.6适应人群的多样性
8.1.7好的设计和设计者的原则;工程评价
8.1.8可用性测试介绍
8.2简单图形用户界面的创建(核心)
8.2.1图形用户界面(GUI)的原理
8.2.2GUI套件
8.3以人为本的软件评估(选修)
8.3.1设置评价目标
8.3.2不考虑用户的评价:
预演,击键模型(KLM),准则和标准
8.3.3考虑用户的评价:
可用性测试,采访,调查,实验
8.4以人为本的软件开发(选修)
8.4.1方法、特征和处理的概况
8.4.2功能性和可用性:
任务分析、对话、调查
8.4.3详细说明交互和演示
8.4.4建模的技术和工具:
8.4.4.1故事板
8.4.4.2继承和动态调度
8.4.4.3建模语言和GUI生成器
8.5图形用户界面的设计(选修)
8.5.1交互方式和交互技术的选择
8.5.2HCI常用界面工具
8.5.3HCI屏幕设计:
布局、颜色、字体、标签
8.5.4对人的疏忽大意进行处理
8.5.5高级屏幕设计:
可视化、演示性和隐喻性
8.5.6交互的多样性:
图形、声音等
8.5.7三维立体式交互和虚拟现实
8.6图形用户界面的编程(选修)
8.6.1UIMS,对话和层次分析
8.6.2配件类
8.6.3事件管理和用户交互
8.6.4几何管理
8.6.5GUI生成器和UI编程环境
8.6.6跨平台设计
8.7多媒体系统的人机交互(选修)
8.7.1信息分类和结构:
层次,超媒体
8.7.2信息检索和人的行为
8.7.2.1Web搜索
8.7.2.2数据库查询语言的可用性
8.7.2.3图形
8.7.2.4声音
8.7.3多媒体信息系统的HCI设计
8.7.4语音识别和自然语言处理
8.7.5信息设备和移动计算
8.8协作和通信的人机交互(选修)
8.8.1支持专用的群件:
资料准备,多人游戏
8.8.2异步通信:
email、告示牌
8.8.3同步通信:
聊天室、会议召开
8.8.4在线社区:
MUDs/MODs
8.8.5软件特征和智能化
9图形学和可视化计算(GV)
9.1图形学的基本技术(核心)
9.1.1各种层次上的图形软件
9.1.2使用图形API(应用编程接口)
9.1.3简单的彩色模型(RGB,HSB,CMYK)
9.1.4齐次坐标
9.1.5仿射变换(缩放、旋转、平移)
9.1.6取景变换
9.1.7裁剪
9.2图形系统(核心)
9.2.1光栅和向量图形系统
9.2.2视频显示设备
9.2.3物理输人设备和逻辑输人设备
9.2.4图形系统开发者所面临的一些问题
9.3图形通信(选修)
9.3.1色彩心理动力学及色彩问的相互作用
9.3.2色彩修正以弥补视觉效果的不足
9.3.3不同色彩的文化内涵
9.3.4使用伪彩色调色板以满足特殊观众的需要
9.3.5构造能深刻理解的视图
9.3.6对实际视频和硬拷贝进行图像修改
9.3.7使用表示色彩和其他可视数据中关键信息的图标符号
9.3.8在图像中使用表示上下文关系及背景信息的文字
9.3.9可视化用户对图像操作的信息反馈
9.4几何建模(选修)