面试常见问题——计算机组成原理(一)

面试常见问题——计算机组成原理(一)

目录:

  1. Cache和寄存器、虚拟存储器的区别
  2. 计算机组成有哪些
  3. CISC和RISC
  4. 数据寻址方式
  5. 指令流水线
  6. 中断处理流程
  7. DMA和中断的区别

1、Cache和寄存器、虚拟存储器的区别

  • 定义:
    • Cache定义:
      • 利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的、容量较小的临时存储器中,可用SRAM实现,使CPU的访存操作大多针对Cache进行,从而大大提高程序的执行速度。
      • 引入目的:解决CPU和主存之间运算速度的差异。
    • 寄存器定义:
      • 寄存器是中央处理器内的组成部分。寄存器是有限存储容量的高速存储部件,它们可用来暂存指令、数据和位址。在控制器中,包含的寄存器有指令寄存器(IR)、程序计数器(PC)、指令译码器(ID)等。在运算器中,包含的寄存器主要有累加寄存器(ACC)、暂存寄存器、程序状态字寄存器(PSW)。 
    • 虚拟存储器定义:
      • 将主存或辅存的地址空间统一编址,从逻辑上对内存容量加以扩存。
      • 引入目的:解决主存不足的问题。
      • 依据:程序访问的局部性原理
      • 通常采用相联存储器,可按内容、按地址访问。
      • 实现技术:
        • 请求分页存储管理
        • 请求分段存储管理
        • 请求段页式存储管理
  • 存储器分层体系结构中,存储器速度由快到慢依次为寄存器、Cache、主存、辅存。
  • 虚拟存储器和Cache的对比:
    • 相同点:
      • 都把数据划分为块,并作为基本的传输单位。
      • 都有地址的映射、替换算法、更新策略等问题。
        • Cache替换算法:
          • RAND(随机算法):随机地确定替换的Cache块
          • FIFO(先进先出):选择最早调入的存储行进行替换
          • LRU(最近最少使用):选择最近最久未被访问的存储行进行替换
          • LFU(最不经常使用):将一段时间内被访问次数最少的存储行进行替换
        • 虚拟存储器替换算法:
          • OPT(最佳页面替换算法,OPTimal replacement):选择以后不再使用的页面进行替换(目前无法实现)
          • FIFO(先进先出):选择最早进入内存的页面进行替换。可能出现Belady异常,即所分配的物理块数增大而缺页数也增大
          • LRU(最近最少使用):选择最近最久未使用的页面进行替换
          • CLOCK(时钟置换算法,也称为最近未用算法Not Recently Used,NRU):选择最近未使用的页面进行替换
          • 改进型CLOCK:除了使用位,增加修改位,置换顺序如下:
            • 未访问,未修改
            • 未访问,已修改
            • 已访问,未修改
            • 已访问,已修改
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值