《软件设计师教程》知识点总结(更新中)

一、计算机系统知识

1.1 计算机系统的基础知识

1.1.1 计算机系统硬件基本组成

计算机的基本硬件系统:运算器、控制器、存储器、输入设备、输出设备;

1.1.2 中央处理单元(CPU)

中央处理单元:运算器、控制器等部件被集成在一起统称为中央处理单元(Center Processing Unit,CPU);

1、CPU的功能:
  1. 程序控制
  2. 操作控制
  3. 时间控制
  4. 数据处理
2、CPU的组成

CPU主要由运算器、控制器、寄存器组和内部总线等组件组成;

  1. 运算器

    运算器由算术逻辑单元(Arithmetic and Logic Unit,ALU)、累加寄存器数据缓冲寄存器状态条件寄存器等组成,是数据加工处理部件,用于完成各种算术和逻辑运算(只能完成计算),所有的操作由控制器发出控制信号指挥,故为执行组件

    功能:

    1. 执行所有的算术运算,如加、减、乘、除等基础运算及附加运算;
    2. 执行所有的逻辑运算并进行逻辑测试,如与、或、非、零值测试或两个值的比较等;

    各组成部件的功能:

    1. 算术逻辑单元(ALU)

      负责处理数据,实现对数据的算术运算和逻辑运算;

    2. 累加寄存器(AC)

      简称累加器,为算术逻辑单元(ALU)提供工作区,运算器中至少有一个累加器;

    3. 数据缓冲寄存器(DR)

      作为CPU和内存、外部设备之间数据传送的中转站,在操作速度上的缓冲;

      对内存存储器进行读/写操作时,用DR暂时存放读/写的一条指令或一个数据字,将不同时间段的读/写数据隔离;

    4. 状态条件寄存器(PSW)

      PSW保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,主要分为状态标志控制标志

      通常,一个算术操作产生一个运算结果,而一个逻辑操作产生一个判决;

  2. 控制器

    用于控制整个CPU的工作,决定了计算机运行过程的自动化(程序的正确执行、异常事件的处理);

    一般包括指令控制逻辑、时序控制逻辑、总线控制逻辑和中断控制逻辑等;

    指令控制逻辑要完成取指令、分析指令和执行指令的操作,过程:取指令=>指令译码=>按指令操作码执行=>形成下一条指令地址=>等步骤;

    1. 指令寄存器(IR)

      CPU执行一条指令时,先从内存储器取到缓冲寄存器(DR),在送入指令寄存器(IR)暂存,指令译码器(ID)通过指令寄存器(IR)中的内容产生各种微操作指令,由此控制其他组成组件工作,完成相关功能;

    2. 程序计数器(PC)

      具有寄存信息、计数两种功能,又称指令计数器;

      程序的执行分两种情况:顺序执行、转移执行;

    3. 地址寄存器(AR)

      保存当前CPU所访问的内存单元的地址;

      由于内存和CPU操作速度上的差异,所以地址寄存器要保存地址信息知道内存的读/写操作完成;

    4. 指令译码器(ID)

      指令包含:操作码、地址码;

      指令译码器对指令中的操作码字段进行分析解释,识别指令的操作,向操作控制器发出操作信号,控制各部件工作,完成所需功能;

    时序控制逻辑要为每条指令按时间顺序提供应有的控制信号;

    总线控制逻辑是为多个功能组件服务的信息通路的控制电路;

    中断控制逻辑用于控制各种中断请求,并根据优先级的高低对中断请求进行排队,逐个交给CPU;

  3. 寄存器组

    寄存器组可分为:专用寄存器(如运算器和控制器中的寄存器,作用固定)、通用寄存器(用途广泛);

3、多核CPU

1.1.3 数据表示

二进制计数制

原码、反码、补码、移码(小数无移码)

原码表示法中,最高位是符号位,0表示正号,1表示负号,其余的n-1位表示数值的绝对值;

+1-1+0.5-0.5+0-0
原码00000001100000010.10000001.10000000000000010000000
反码00000001111111100.10000001.01111110000000011111111
补码00000001111111110.10000001.10000000000000000000000
移码10000001011111111000000010000000
  1. 一个正数的原码、反码、补码相同;一个正数的移码除最高位与其原码、反码、补码最高位不同外,其他位都相同(即其原码最高位+1);
  2. 一个负数的原码除最高位与其绝对值的原码不同外,其他位都相同(即其绝对值的原码最高位+1);
  3. 一个负数的反码与其绝对值的原码、反码每一位都不相同,(即绝对值反码每一位取反);
  4. 一个负数的补码等于其反码末尾+1
  5. 除小数外,任何一个数的补码符号位取反即是相对应的移码

1.1.4 校验码

  1. 奇偶校验码
    1. 水平奇偶校验码
    2. 垂直奇偶校验码
    3. 水平垂直校验码
  2. 海明码
  3. 循环冗余校验码

二、程序设计语言基础知识

三、数据结构

四、操作系统知识

五、软件工程基础知识

六、结构化开发方法

七、面向对象技术

八、算法设计与分析

九、数据库技术基础

9.9.1 数据库与数据库系统

数据库系统(DataBase System,DBS)是一个采用了数据库技术,有组织地、动态地存储大量相关数据,方便多用户访问的计算机系统。

DBS由数据库、硬件、软件和人员组成。

  1. 数据库

    数据库(DataBase,DB)是统一管理的、长期存储在计算机内的、有组织的相关数据的集合。

    特点:数据间联系密切、冗余度小、独立性高、易拓展,并且可为各类用户共享。

  2. 硬件

  3. 软件

    数据库管理系统简称DBMS。

    主要功能包括:数据定义、数据操作、数据库运行管理、数据库的建立与维护。

  4. 人员

    主要有四类:系统分析员和数据库设计人员、应用程序员、最终用户、数据库管理员(Data Base Administrator,DBA)

9.1.2 数据库管理系统的功能

数据库管理系统主要实现对共享数据有效地组织、管理和存取,具有以下六个方面的功能:

  1. 数据定义
  2. 数据库操作
  3. 数据库运行管理
  4. 数据的组织、存储和管理
  5. 数据库的建立和维护
  6. 其他功能

9.1.3 数据库管理系统的特征及分类

  1. DBMS的特征
  2. DBMS的分类
    1. 关系型数据库系统
    2. 面向对象的数据库系统
    3. 对象关系数据库系统

9.1.4 数据库系统的体系结构

  1. 集中式数据库系统
  2. 客户端/服务器结构
  3. 并行数据库系统
  4. 分布式数据库系统

十、网络与信息安全基础知识

10.1 网络概述

10.1.1 计算机网络的概念

目前人们已公认的有关计算机网络的定义是:利用通信设备和线路将地理位置分散、功能独立的自主计算机系统或由计算机控制的外部设备连接起来,在网络操作系统的控制下,按照约定的通信协议进行信息交换,实现资源(硬件资源(CPU、大容量的磁盘、光盘以及打印机等)、软件资源(语言编译器、文本编辑器、各种软件工具和应用程序等))共享的系统。

1、计算机网络的发展(点、线、面、体)
  1. 具有通信功能的单机系统(终端-计算机网络)
  2. 具有通信功能的多机系统(计算机-计算机网络)
  3. 以共享资源为目的的计算机网络
  4. 以局域网及因特网为支撑环境的分布式计算机系统
2、计算机网络的功能
  1. 数据通信

  2. 资源共享

    提高系统资源的利用率,软件资源共享、硬件资源共享;

  3. 负载均衡

    多台计算机相互协作,均衡负载、共同完成任务,某台计算机任务过重时,可将任务分配给其余空闲的多台计算机;

  4. 高可靠性

    避免单机无后备的情况,某台计算机出现故障后,其任务可由其他计算机代为处理;

10.1.2 计算机网络的分类

  1. 局域网(Local Area Network,LAN)

    局域网指传输距离有限、传输速度较高、以共享网络资源为目的的网络系统;

    特点:

    1. 分布范围有限;(园区网、校园网)
    2. 有较高的通信带宽,数据传输率高;(1Mbps<= <=1000Mbps)
    3. 数据传输可靠,误码率低;(百万分之一到万分之一)
    4. 通常采用同轴电缆或双绞线作为传输介质,跨楼宇时使用光纤;
    5. 拓扑结构简单。简介,大多采用总线、星型和环形等,系统容易配置和管理;(网络上的计算机一般多采用多路控制访问技术或令牌技术访问信道)
    6. 网络的控制一般趋向于分布式,从而减少了对某个结点的依赖,避免并减少了一个结点故障对整个网络的影响;
    7. 通常,网络归单一组织所拥有和使用,不受任何公共网络管理机构
  2. 城域网

  3. 广域网

10.1.3 网络的拓扑结构

  1. 总线型结构
  2. 星型结构
  3. 环形结构
  4. 树形结构
  5. 分布式结构

10.1.4 ISO/OSI网络体系结构

十一、标准化和软件知识产权基础问题

十二、软件系统分析与设计

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师知识点集锦【软考】软件设计师
CSND软件设计师级课程涵盖了许多重要的知识点,以下是其一些关键的知识点: 1. 面向对象设计:软件设计的基础是面向对象的概念。了解面向对象的原则和概念,如封装、继承和多态等,能够帮助设计师构建可维护、可扩展的软件系统。 2. 设计模式:设计模式提供了一套经过验证的解决方案,可以在设计解决通用的问题。掌握常见的设计模式,如单例模式、工厂模式和观察者模式等,可以提高代码复用性和可读性。 3. UML建模:UML是一种常用的建模语言,能够帮助设计师以图形方式描述软件系统的结构和行为。掌握UML图的使用方法,如类图、序列图和状态图等,可以更好地理解和沟通系统设计。 4. 软件架构:软件架构定义了系统的组织结构和服务之间的关系。了解主流的架构模式,如MVC、MVP和MVVM等,能够帮助设计师制定良好的软件架构,提高系统的质量和可维护性。 5. 数据库设计:合理的数据库设计对于软件系统来说至关重要。学习数据库设计原则,如范式化、索引和关系建模等,可以帮助设计师设计出高效、可靠的数据库结构。 6. 设计原则和规范:软件设计应遵循一些重要的原则和规范,如迪米特法则、单一职责原则和开闭原则等。掌握这些原则和规范,能够指导设计师制定高质量的软件设计方案。 7. 设计文档和代码注释:良好的设计文档和代码注释能够提高代码的可读性和可维护性。学习如何编写规范的设计文档和注释,能够帮助设计师与团队成员更好地合作和交流。 除了上述的知识点之外,CSND软件设计师级课程还涵盖了其他一些重要的主题,如项目管理、性能优化和软件测试等。通过学习这些知识点软件设计师可以具备更全面的能力,更好地应对复杂的软件设计和开发任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我也想做全栈一霸!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值