【中级软件设计师】—计算机组成与体系结构考点总结篇(一)

简介: 【中级软件设计师】—计算机组成与体系结构考点总结篇(一)

1.数据的表示

1-1R进制的表示

1-2十进制转R进制使用短除法。例如:将94转化为二进制数

1-3:二进制转换八进制与十六进制数

三个二进制位对应一个八进制位

四个二进制位对应一个十六进制位

十六进制:0~9,A(10)-F(15)

1-4:原码、反码、补码、移码

机器数:各种数值在计算机中,是用二进制表示的,称为机器数。

码制:为了便于运算,带符号的机器数可采用原码,反码、补码和移码,称为码制。

原码:用尾数表示真值的绝对值,符号位0/1对应正、负,正数标志位为0,负数标志位为1

反码

  • 正数的原码、反码、补码相同,为原码本身。
  • 负数的反码:标志位不变,尾数取反

补码:正数的补码等于原码,负数的补码等于反码末位加一(要考虑进位)

将负数的补码转回原码:尾数取反,末位加一

移码:补码的基础上将符号位取反,注意:移码只能用于表示整数

本章知识点总结:

  1. 8位二进制数能表示的十进制数范围为-128到+127
  2. 如果数小于-128或大于127,则会溢出,溢出只能用两个字节,16位二进制数表示了
  3. 0的补码为00000000,-128的补码为10000000
  4. 计算机中有符号数用补码表示
  5. 原码首位为标志位,1表示负数,0表示正数
  6. 反码=原码的标志位不变,其他取反
  7. 补码=反码+1
  8. 正数的原码、反码、补码相同

数值的表示范围

若n=8,则原码和反码表示的范围为-127-127,补码表示的范围为:-128-127

1-5:浮点数的运算

r进制:

定点数:如纯小数0.1011和纯整数11110

浮点数:由阶码尾数两部分组成

阶码:常用补码移码表示的定点整数

尾数:常用原码补码表示的定点小数

阶码E反映浮点数的表示范围小数点的实际位置尾数M的数值部分的位数n反映浮点数的精度

浮点数尾数的规格化

规格化浮点数:规定尾数的最高数值必须是一个有效值。

左规:当浮点数运算的结果为非规格化时要进行规格化处理,将尾数算数左移一位,阶码减1

右规:当浮点数的结果尾数出现溢出(双符号位为01或10)时,将尾数算数右移一位,阶码加一

沙场练兵

规格化浮点数的特点:

浮点数的表示知识点总结:

2、计算机结构

3、计算机体系结构的分类—Flynn

Flynn分类法中主要有两个指标一个是指令流一个是数据流。指令流为机器执行的指令序列;数据流是由指令调用的数据序列。无论是指令流还是数据流,它们都分为两种类型:单、多。

3.1寻址方式

4、CISC和RISC

5、流水线

执行一条指令分为三个步骤:取指令、分析指令、执行指令

5.1流水线的计算

流水线的周期为执行时间最长的一段,三部分的时间分别为2ns,2ns,1ns.因此,流水线的周期为2ns

理论公式计算100条指令所需要的时间:(2+2+1)+(100-1)*2=203ns

实践公式计算100条指令所需的时间:(k+n-1)*△t =(3+100-1)*2=204ns(k表示段数,文章中是三段、n是指令条数,△t是流水线的周期)

注意:考试中首先用理论公式(80%),若理论公式没有可选答案则用实践公式(20%)

若按串行方式(就是按顺序方式执行):(3+2+4)*10=90△t

若按流水线方式执行:流水线周期为4△t,执行时间为:(3+2+4)+(10-1)*4=45

5.2、流水线吞吐率的计算

该题目的吞吐率是多少?

5.3、流水线的加速比

问:该流水线的加速比是多少?

首先计算不使用流水线执行的时间:(2+2+1)*100=500ns

使用流水线的时间:(2+2+1)+(100-1)+2ns=203ns

加速比S=500/203

5.4、流水线的效率比

5.5 层次化存储结构

5.6、Cache的概念

5.7 局部性原理

时间局部性:指如果程序中的某条指令一旦被执行,则不久的将来该指令可能再次被执行。

空间局部性:指一旦程序访问了某个存储单元,则在不久的将来,其附近的存储单元也最有可能被访问

5.8 随机存储器与只读存储器

主存可以分为随机存取存储器只读存储器

5.9 主存的编址

内存地址=末地址-首地址+1

1、内存地址数量 = C7FFFH - AC000H + 1 = C7FFFH + 1 - AC000H = C8000H - AC000H = 1C000H = 1 * 2 ^ 16 + 12 * 2 ^ 12 = 7 * 2 ^14 bit (7 * 2 ^14)

/ 2 ^ 10 = 7 * 2 ^ 4 = 7 * 16 = 112 K

2、由步骤1可知,共有 112K * 16 bit (112K * 16) / (28 * 16K) = 4,该芯片每个存储单元存储 4 位。

6.0 磁盘结构与参数

6.1 总线

一条总线同一时刻仅允许一个设备发送,但允许多个设备接收

6.2 系统可靠性分析—串联系统与并联系统

6.3 系统性能设计—性能指标

吞吐率:特指 Web 服务器单位时间内处理的请求数。

吞吐量,是指在一次性能测试过程中网络上传输的数据量的总和。

7.差错控制

7.1—CRC与海明校验码

7.2检验码—海明校验码

海明校验码的原理是:在有效信息位中加入几个校验位形成海明码,使码距比较均匀地拉大,并把海明码的每个二进制位分配到几个奇偶校验组中。

当某一位出错后,就会引起有关的几个校验位的值发生变化,这不但可以发现错误,还能指出错误的位置,为自动纠错提供了依据。


相关文章
|
1月前
|
人工智能 自然语言处理 JavaScript
Playwright MCP在UI回归测试中的实战:构建AI自主测试智能体
Playwright MCP结合AI智能体,革新UI回归测试:通过自然语言驱动浏览器操作,降低脚本编写门槛,提升测试效率与覆盖范围。借助快照解析、智能定位与Jira等工具集成,实现从需求描述到自动化执行的闭环,推动测试迈向智能化、民主化新阶段。
|
移动开发 小程序 安全
【个人小程序和企业小程序的区别】
【个人小程序和企业小程序的区别】
734 0
|
缓存 负载均衡 网络协议
面试:TCP、UDP如何解决丢包问题
TCP、UDP如何解决丢包问题。TCP:基于数据块传输/数据分片、对失序数据包重新排序以及去重、流量控制(滑动窗口)、拥塞控制、自主重传ARQ;UDP:程序执行后马上开始监听、控制报文大小、每个分割块的长度小于MTU
|
存储 JSON 安全
Token验证技术文档
【7月更文挑战第6天】Token验证是现代Web应用中常见的安全措施,用于确保用户身份的合法性和请求的安全性。它基于令牌(Token)的概念,通过在客户端和服务端之间传递一个安全的、有时限的字符串来验证用户身份,替代传统的基于会话的认证机制。本文档旨在介绍一种基本的Token验证流程,并提供一个简单的代码示例,使用JSON Web Tokens (JWT) 实现这一过程。
1619 1
|
XML Java 数据格式
Spring BeanFactory深度讲解
Spring `BeanFactory` 是 Spring 容器的基础,负责创建、配置和管理 Bean 实例,并提供对 Bean 生命周期的管理和控制。它通过读取配置文件或注解来实例化和管理 Bean,支持 XML、Java 配置和注解配置方式。与 `ApplicationContext` 相比,`BeanFactory` 更轻量级,采用延迟加载策略,适用于资源受限的环境。它实现了工厂模式,将对象的创建和管理分离,使应用程序更灵活、可扩展且易于维护。
235 0
|
机器学习/深度学习 算法 Python
探索XGBoost:参数调优与模型解释
探索XGBoost:参数调优与模型解释
847 2
【中级软件设计师】—(下午题)试题三精讲总结(四十二)
【中级软件设计师】—(下午题)试题三精讲总结(四十二)
|
设计模式 测试技术 数据库
【中级软件设计师】—数据库设计和UML考点总结篇(七)
【中级软件设计师】—数据库设计和UML考点总结篇(七)
|
机器学习/深度学习 JavaScript 前端开发
Mediapipe三维实时人体关键点检测与追踪(一)
Mediapipe三维实时人体关键点检测与追踪(一)
2765 0
|
消息中间件 存储 分布式计算
Spark学习---6、SparkStreaming(SparkStreaming概述、入门、Kafka数据源、DStream转换、输出、关闭)(二)
Spark学习---6、SparkStreaming(SparkStreaming概述、入门、Kafka数据源、DStream转换、输出、关闭)(二)