软件设计师学习笔记(二)计算机系统知识(二)

一、指令系统

1、寻址方式

  1. 指令的基本概念
    一条指令就是机器语言的一个语句,它是一组有意义的二进制代码

指令的基本格式如下:

操作码字段地址码字段
  1. 寻址方式
    立即寻址方式
        特点:操作数直接在指令中,速度快,灵活性差
    直接寻址方式
        特点:指令中存放的是操作数的地址
    间接寻址方式
        特点:指令中存放的是操作数的地址的地址
    寄存器寻址方式
        特点:寄存器存放操作数
    寄存器间接寻址方式
        特点:寄存器内存放的是操作数的地址

2、CISC与RISC

  1. CISC与RISC是指令集发展的两种途径
指令系统类型指令寻址方式实现方式其它
CISC(复杂指令集计算机)数量多,使用频率差别大,可变长格式支持多种微程序控制技术(微码)研制周期长
RISC(精简指令集计算机)数量少,使用频率接近,定长格式,大部分为单周期指令,操作寄存器,只有Load/Store 操作内存支持方式少增加了通用寄存器;布线逻辑控制为主;适合采用流水线优化编译,有效支持高级语言
  1. CISC与RISC比较,分哪些维度?
    指令数量、指令使用频率,寻址方式,寄存器,流水线支持,高级语言支持

    CISC:复杂,指令数量多,频率差别大,多寻址
    RISC:精简,指令数量少,操作寄存器,单周期,少寻址,多通用寄存器,流水线

3、流水线技术

  1. 概念
    ①相关参数计算:流水线执行时间计算流水线吞吐率、流水线加速比、流水线效率(后两个只在高级考试中出现,不需要了解)
    ②流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术
    ③流水处理时空图在这里插入图片描述

  2. 流水线计算
    ①流水线周期 t :为执行时间最长的一段(即 取指、分析(指令译码、取操作数)、执行 这些步骤中时间最长的)

    ②执行时间公式(n:指令条数;t:周期;k:步骤有几段(段数))
    第1条指令执行时间+(指令条数-1)*流水线周期

    理论公式:(t1+t2+ ··· +tn)+(n-1)*t
    红色部分为第1条指令执行时间,即流水线建立时间

    实践公式:k*t+(n-1)*t
    默认用理论公式,若无答案再用实践公式

    ③吞吐率计算
    流水线的吞吐率(Though Put rate,TP)是指在单位时间内流水线所完成的任务数量或输出的结果数量。

    基本公式:TP=指令条数/流水线执行时间

    最大吞吐率:TPmax = limn->∞n / ((k+n-1)*t) = 1/t即流水线周期的倒数

二、存储系统

1、层次化存储结构

在这里插入图片描述
虚拟存储体系由主存-辅存两级存储器构成

局部性原理是层次化存储结构的支撑
时间局部性:刚被访问的内容,立即又被访问(循环体)
空间局部性:刚被访问的内容,临近的空间很快被访问(顺序结构)

2、存储器的分类

1、按位置分类

  1. 内存(主存):用来存储当前运行所需要的程序和数据,速度快,容量小
  2. 外存(辅存):用来存储当前不参与运行的数据,容量大但速度慢

2、按存取方式分类

  1. 按内容存取
    相联存储器(如Cache)
  2. 按地址存取
    ①随机存取存储器RAM(如内存)
    ②顺序存取存储器SAM(如磁带)
    ③直接存取存储器DAM(如磁盘)

3、按工作方式分类

  1. 随机存取存储器RAM(如内存DRAM)
  2. 只读存储器ROM(如BIOS)
    DRAM:动态随机存取存储器
    SRAM:静态随机存取存储器
    Cache:高速缓存
    EEPROM:电可擦可编程只读存储器

3、高速缓存Cache

1、概念

  1. 在计算机的存储系统体系中,Cache是访问速度最快的层次
    若有寄存器,则寄存器最快
  2. 使用Cache改善系统性能的依据是程序的局部性原理
    时间局部性
    空间局部性
  3. 如果以h代表对Cache的访问命中率,t1表示Cache的周期时间,t2表示主存储器周期时间,以读操作为例,使用 “Cache+主存储器” 的系统的平均周期为t3,则:
    t3 = h*t1 + (1 - h)*t2
    其中,(1-h)又称为失效率(未命中率)

2、映像

  1. 地址映像是将主存与Cache的存储空间划分为若干大小相同的页(或称为块)。
    例如,某机的主存容量为1GB,划分为2048页,每页512KB;Cache容量为8MB,划分为16页,每页512KB

  2. 直接相联映像:硬件电路较简单,但冲突率很高
    全相联映像:电路难于设计和实现,只适用于小容量的cache,冲突率较低
    组相联映像:直接相联与全相联的折中
    注:主存与Cache之间的地址映射由 硬件 直接完成

冲突率电路复杂度
直接相联映像简单
全相联映像复杂
组相联映像折中

3、主存编址计算

  1. 存储单元
    存储单元个数 = 最大地址 - 最小地址 + 1

  2. 编址内容
    按字编址:存储体的存储单元是字存储单元,即最小寻址单位是一个字

    按字节编址:存储体的存储单元是字节存储单元,即最小寻址单位是一个字节

  3. 总容量=存储单元个数 * 编址内容

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

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ؓ初尘

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

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

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

打赏作者

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

抵扣说明:

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

余额充值