计组面试题—什么是存储程序原理?它对计算机设计有何重要意义?

371 阅读2分钟

Author : Cyan_RA9
Source : 【卡码笔记】网站
Question : 什么是存储程序原理?它对计算机设计有何重要意义?

【简要回答】

“存储程序”的概念:

  • 存储程序原理是指将程序指令和数据存储在同一存储器中,并由CPU按顺序读取和执行。

“存储程序”对计算机设计的意义:

  1. 通用性:计算机可以执行任意程序,只需将程序加载到存储器中。
  2. 灵活性:程序可以像数据一样被修改和存储。
  3. 简化设计:统一了指令和数据的存储方式,简化了计算机硬件设计。

【详细回答】

  • “存储程序”原理:也叫“存储程序”工作方式,即将程序和数据以同等地位放入存储器中,CPU根据指令周期的不同阶段来区分指令和数据。程序预先存入存储器中,计算机在工作中从程序首地址取出第一条指令并加以执行,以后就按照该程序的规定顺序执行其他指令,直至程序结束执行。每条指令由操作码和地址码组成,操作码表示指令操作的性质及功能,地址码包含了操作过程中所需的地址信息。
  • 存储程序原理对计算机设计的意义
    1. 通用性
      • 计算机可以执行任意程序,只需将程序加载到存储器中。
      • eg: 同一台计算机可以运行操作系统、浏览器、游戏等不同程序。
    2. 灵活性
      • 程序可以像数据一样被修改和存储。
      • eg: 程序可以在运行时动态加载和修改。
    3. 简化设计
      • 统一了指令和数据的存储方式,简化了计算机硬件设计。
      • eg: CPU只需通过同一总线访问存储器,无需区分指令和数据。

【知识拓展】

  • 现代计算机主要是基于冯·诺依曼体系结构设计的,早在1945年,数学家约翰·冯·诺依曼在研究EDVAC(Electronic Discrete Variable Automatic Computer)时,便提出了“存储程序”的概念,以此概念为基础的各类计算机统称为“冯·诺依曼计算机”。
  • 存储程序原理的局限性
    1)冯·诺伊曼瓶颈:由于指令和数据共享同一总线,CPU在同一时间内只能访问指令或数据,导致性能瓶颈。
    2)安全性问题:指令和数据存储在同一存储器中,可能导致代码注入等安全问题。
  • 现代改进
    1)哈佛体系结构:将指令存储器和数据存储器分开,支持并行访问,提高了性能。
    2)缓存技术:通过缓存减少CPU访问存储器的延迟,缓解冯·诺伊曼瓶颈。