软件设计师2022记录

一、计算机组成原理

1. CPU

  1. 运算器

    1.算术逻辑单元ALU:数据的算术运算和逻辑运算
    2.累加寄存器AC:通用寄存器,为ALU提供一个工作区,用在暂存数据和运算结果
    3.数据缓冲寄存器DR:写内存时,暂存指令数据
    4.状态条件寄存器PSW:存状态标志与控制标志

  2. 控制器

    ①程序计数器PC:存储下一条要执行指令的地址(存储指令地址) 注意:不是指令的地址码,而是指令的地址
    ②指令寄存器IR:存储即将执行的指令 注意:存储指令的地址码和操作数
    ③指令译码器ID:对指令中的操作码字段进行分析解释
    ④地址寄存器AR:存储数据地址

    ⑤时序部件:提供时序控制信号

重点 寄存器

  1. 地址寄存器:存储数据地址

  2. 通用寄存器: 运算时用于暂存操作数或地址

  3. 累加寄存器:暂时存放操作数和中间运算结果

透明的:数据缓冲寄存器、数据地址寄存器、指令寄存器

可见的程序计数器,程序状态字寄存器,通用寄存器

控制器有: 程序,指令,时序,地址
透明的: 数据,指令

可见的: 程序

2.基本单位和进制转换

  1. n进制—>10进制 按权相加
  2. 10进制—>n进制 短除法
  3. 二进制转八进制(三个数为一组,从左至右)/十六进制(四个数为一组,从左至右)

3.原、反、补、移码

在这里插入图片描述

4.浮点数

  1. 浮点数的表示数值范围

如果浮点数的阶码(包括1位阶符)用R位的移码表示,尾数(包括1位数符)用M位的补码表示,则浮点数表示的数值范围如下。
在这里插入图片描述
那说明这种题目选择的时候,负数正常数字,正数组合数字,并且指数都不是2的倍数

  1. 在这里插入图片描述

5.寻址

在这里插入图片描述

6.校验码

在这里插入图片描述

  1. 奇偶校验码:只能检错,不能纠错
  2. CRC校验码:可以检错,不能纠错
  3. 海明校验码:码距为3,可以纠错 2^r>=n+r+1
  4. r是校验码合数,n是信息位个数

7.CISC与RISC

在这里插入图片描述

8.流水线

在这里插入图片描述

在这里插入图片描述

9.存储器

书上P21有笔记

CPU—Cache—主存储器—联机磁盘存储器----磁盘存储器

  1. Cache----SRAM(静态随机存储器)
  2. 主存------DRAM(动态随机存储器)周期性刷新
  3. 闪存(U盘)-----以块为单位删除,信息断电不会丢失,可以代替ROM不能代替主存
  4. RAM-----读/写存储器和随机存储器
  5. ROM-----只读存储器
  6. SAM------顺序存储器
  7. DAM------直接存储器
  8. 相联存储器----按内容访问

10.Cache

  1. 由硬件自动完成Cache与主存之间的地址映射
  2. 高速缓存中的地址映像方法
    • 直接映像:主存的块与Caceh的块的对应关系是固定的。
      • 比如内存中每个区的第0块都只能对应Cache中第0块
    • 全相联映像:主存的块可以对应Cache中所有块
    • 级相联映像:内存块先分组,组是直接映像,组里面很多块,块是全相联映像
  3. cache命中率关键因素:程序的行为、cache的容量、组织方式、块的大小有关
    • cache容量越大,命中率越高,最后趋于稳定
    • 对于给定的Cache容量,当块大小增加时,命中率开始时处于上升趋势,后来反而会下降。

虚拟存储器由主存和辅存构成的

11.中断

  1. 中断向量:提供中断服务程序的入口地址
  2. 中断响应时间:发出中断请求开始,到进入中断服务程序
  3. 中断服务程序 就是 需要紧急处理的程序
  4. 存储现场:返回来执行源程序

在这里插入图片描述

12.输入输出(IO)控制方式

1、程序查询方式

  1. CPU和I/0(外设)只能串行工作,CPU需要一直轮询检查,长期处于忙等状态。CPU利用率低

  2. 一次只能读/写一个字

  3. 由CPU将数据放入内存

2、中断驱动方式

  1. I/O设备通过中断信号主动向CPU报告I/O操作己完成

  2. CPU和I/O(外设)可并行工作

  3. CPU利用率得到提升

  4. 一次只能读/写一个字

  5. 由CPU将数据放入内存

3、直接存储器存取方式(DMA)

  1. CPU和I/O(外设)可并行工作
  2. 仅在传送数据块的开始和结束时才需要CPU的干预
  3. 由外设直接将数据放入内存
  4. 一次读写的单位为“块”而不是字

若某计算机系统的I/O接口与主存采用统一编址,则输入输出操作是通过访存指令来完成的。
I/O接口单独编址是指通过设置单独的I/O地址空间,为接口中的有关寄存器或存储部件分配地址码,需要设置专门的I/o指令进行访问。这种编址方式的优点是不占用主存的地址空间,访问主存的指令和访问接口的指令不同,在程序中容易使用和辨认。

13.总线

分类:数据总线、地址总线、控制总线,数地控

以及13种总线,书上P36,可以去看看背背

在这里插入图片描述

  1. 内存大小和地址总线有关,4GB = 2^32 B,地址总线就是32位,字长就是 数据总线宽度

  2. 总线可以减少信息传输线的数量

  3. 带宽=(时钟频率/时钟周期)*总线带宽

14.安全性

1.信息系统安全属性

机密性、完整性、可用性、可控性与可审查性 五个属性

要有最小授权原则,能完成工作的最小权限

2.对称加密技术

  1. 加密强度不高
  2. 密钥分发困难
  3. 加密快解密快,适合大量明文数据

加密算法:DES / 3DES / IDEA / RC-5 / RC4 / AES

3.非对称加密技术

加密算法:RSA / ECC /DSA

  • 在非对称加密技术(公钥体系)中,公钥加密,私钥解密

甲发给乙明文,则用乙的公钥加密,这样乙只能用自己的私钥解密

4.信息摘要(保证内容未被改)

因为明文内容通过Hash算法单向生成摘要,接收方一比对摘要就可以判断是否修改

算法:

  • MD5—>128位

  • SHA—>160位

5.数字信封(对称与非对称组合使用)

发送方将原文用对称密钥加密传输,而将对称密钥用接收方公钥加密,接受方接收到电子信封,取出对称密钥,获得明文信息

6.数字签名

  • 在数字签名中,私钥加密,公钥解密

谁的数字签名用谁的私钥加密

这样用相对应他公钥解密证明是专属签名

私钥只有自己有,公钥满天飞,公钥由PGP证书认证,需要认证这个公钥是谁的公钥

7.认证技术

CA:权威机构

数字证书:用户向CA机构申请数字证书,将个人信息和自己的公钥发给CA机构,

CA机构发给用户数字证书,数字证书通过CA机构的私钥加密,别人只要使用CA机构的公钥解密,得到该用户的公钥

(可以知道这个数字证书被认证过,数字证书中的公钥也能得以保证,即认证了这个公钥是谁的公钥)

15.可靠性

串联:R=R1×R2×…×Rn

并联:R=1-(1-R1)×(1-R2)×…×(1-Rn)

16.磁盘结构

在这里插入图片描述

二、程序设计语言

  • 低级语言:汇编语言和机器语言

  • 高级语言:Java,c++,Python…

  • 脚本语言是动态语言(也是弱类型语言),PHP,JS,Python

    在这里插入图片描述

1.编译程序和解释程序

java既是编译也是解释型

  1. 编译程序,将源语言程序翻译成等价的目标语言程序,先编译,再执行
    • 编译程序不参与目标程序的执行
  2. 解释程序,一般运用于脚本语言,立即执行源程序,并得出结果,不生成目标程序
    • 解释程序参与源程序的执行
    • 解释,程序执行速度慢

2.编译程序和解释程序过程

在这里插入图片描述

符号表:不断收集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入符号表中。记录源程序中各个字符的必要信息,以辅助语义的正确性检查和代码生成。

  1. 词法分析:识别句子中的一个个单词,输入:源程序 输出:记号流(单词符号)

  2. 语法分析:分析句子的语法结构 输入:记号流 输出:语法树

    • 语法分析可以发现程序中所有语法错误
      • 比如 变量未声明,b = a -1;
      • 自顶向下语法分析:递归下降分析法和预测分析法,不是这两种那就属于自底向上
      • 自底向上语法分析:算符优先分析法和LR分析法
  3. 语义分析:分析句子的含义,检查是否包含静态语义错误

    • 静态语义:编译阶段检查比如被除数为0是语义错误

      • 静态语义方法:语法指导翻译

      • 静态语义错误:比如类型不匹配,int a = “123”;

    • 动态语义:运行时才能检查

      • 动态语义错误:比如被除数为0,int a = 1/0;
  4. 中间代码生成:进行初步的翻译

  5. 代码优化:对译文进行修饰

    • 常见的中间代码:后缀式、三地址码、三元式、四元式和树(图)等形式。
  6. 目标代码生成:写出最后的译文

    • 寄存器的分配工作处于目标代码生成阶段

在这里插入图片描述

3.程序设计语言的成分

  1. 数据具有类型的作用
    • 便于为数据合理分配存储单元
    • 便于对参与表达式计算的数据对象进行检查
    • 便于规定数据对象的取值范围及能够进行的运算

4.传值调用和引用调用

  1. 传值调用:将实参的值传递给形参,实参可以是变量、常量和表达式。不可以实现形参和实参间双向传递数据的效果
  2. 传引用(地址)调用:将实参的地址传递给形参,形参必须有地址,实参不能是常量(值),表达式。可以实现形参和实参间双向传递数据的效果,即改变形参的值同时也改变了实参的值。

5.正规式

在这里插入图片描述

*号表示循环(0到多次),|号表示或

正规式要能表达出相应文法,但不能多,范围不能更大

正规集可以用正规式描述,用有限自动机识别。

6.有限自动机

  1. 有限自动机是词法分析的一个工具,它能正确地识别正规集,识别一个字符后,转移一下

  2. 两个圆圈是终态,识别完后,一定在终态上

  3. 确定的有限自动机(DFA):对每一个状态来说识别字符后转移的状态是唯一的

  4. 不确定的有限自动机(NFA):对每一个状态来说识别字符后转移的状态是不确定的。比如字符为1,转移的路径有多条可以去选

7.上下文无关文法

上下文无关文法广泛的表示语言的语法规则

在这里插入图片描述

8.中缀、后缀表达式转换

规则:a?b(中缀) 变 ab?(后缀)

例子:中缀:1+2 后缀:1 2 +

  • 中缀表达式怎么变后缀表达式
  1. 先看优先级,按优先级符号后置
  2. 优先级相同,从右至左看
  • a×b/(c-d) 变为 abcd-/×
  1. a×b/cd-
  2. a×bcd-/
  3. abcd-/×
  • 后缀表达式怎么变中缀表达式
  1. 利用栈

  2. abcd-/× 从左至右放入栈

  3. 遇到符号,按栈的规则将数字提出来

    栈底 abcd 栈口

    1. -号 cd出来 c-d
    2. /号 b出来 b/(c-d)
    3. ×号 a出来 a×b/(c-d)

9.语法树中、后序遍历

中缀式:语法树中序遍历可以得出中缀式,左根右

后缀式:语法树后序遍历可以得出后缀式,左右根

五、知识产权

1.著作权

  1. 著作权中包括人身权和财产权

    1. 人身权:发表权,署名权,修改权和保护作品完整权。以外都是属于财产权

    2. 除了署名权,修改权和保护作品完整权,保护时间没有受限制,其他著作权时间都受限制

    3. 发表权时间受限制,终身及其死后50年(50年12月31日)

  2. 专利在哪个地方申请在哪个地方受保护

  3. 计算机软件著作权

    1. 主体:享有著作权的人。
    2. 客体:1.计算机程序(包括源程序和目标程序) 2.计算机软件的文档(软件文档
    3. 计算机软件著作权来自《中华人民共和国著作权法》和《计算机软件保护条例》
    4. 计算机软件著作权人身权:发表权和开发者身份权(署名权)。其他是著作财产权
    5. 根据《著作权法》和《计算机软件保护条例》的规定,计算机软件著作权的权利自软件开发完成之日起产生,保护期为50年。保护期满,除开发者身份权以外,其他权利终止

2.职务作品

  1. 本职工作或用了单位的东西,著作权都是单位,个人只享有署名权
  2. 本职工作,离职退休一年内,单位有专利权

3.委托作品

委托创作:有合同归委托方,没合同归受委托方

4.侵权判断

中国公民作品不论是否发表,都享有著作权

开发软件思想不受保护

著作权:法律法规,国家机关文件,时事新闻不受著作权保护

5.专利的申请和商标的注册

  1. 原则:专利申请人及其代理人在办理各种手续时都应当采用书面形式。一份专利申请文件只能就一项发明创造提出专利申请,即“一份申请一项发明”原则。两个或者两个以上的人分别就同样的发明创造申请专利的,专利权授给最先申请人。
  2. 专利,谁先申请,谁拥有
  3. 商标,谁先申请,谁拥有。如果同一天注册,谁先使用谁拥有

6.独家和独占

(1)独占许可使用。权利人通过书面合同授权,被授权方可以根据合同规定的方式、条件和时间确定独占性,权利人不得将软件使用权授予第三方,权利人自己不能使用该软件
(2)独家许可使用。权利人通过书面合同授权,被授权方可以根据合同规定的方式、条件和时间确定独占性,权利人不得将软件使用权授予第三方,权利人自己可以使用该软件
(3)普通许可使用。权利人通过书面合同授权,被授权方可以根据合同规定的方式、条件和时间确定独占性,权利人可以将软件使用权授予第三方,权利人自己可以使用该软件。
(4)**法定许可使用和强制许可使用。**在法律特定的条款下,不经软件著作权人许可,使用其软件,需要支付报酬。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值