1.2计算机系统层次结构

本节包含:1)计算机系统的组成、2)计算机硬件、3)计算机软件、4)计算机系统的层次结构、5)计算机系统的工作原理

1. 存储器

存储器分为主存储器(内存储器)+辅助存储器(外存储器)
主存储器的组成:地址寄存器MAR存放访存地址,经过地址译码器后找到所选的存储单元;数据寄存器MDR暂存要从存储器中读或写的信息,时序控制逻辑用于产生存储器操作所需的各种时序信号

  1. MAR地址寄存器:存放访存地址,经过地址译码后找到所选的存储单元。用于寻址,其位数对应存储单元个数,即与地址码长度相同
  2. MDR数据寄存器:用于暂存要从存储器(MAR所指示的存储单元)中读或写的信息,位数与存储字长相同

2. 控制器

  1. PC程序计数器:用来存放当前欲执行指令的地址,可自动+1形成下条指令的地址,与MAR之间有一条直接通路
  2. IR指令寄存器:用来存放当前的指令,其内容来自主存的MDR,指令中的操作码OP(IR)送至CU,用以分析指令并发出各种微操作命令序列;地址码Ad(IR)送往MAR,用以取操作数
  3. CU控制单元:分析指令,发出控制信号
注意:PC和IR的区别:一个是存放指令地址,一个是存放指令
一个完整的加法操作:

(PC) -> MAR(取指令)
(MDR) -> IR
OP(IR) -> CU(分析指令)
Ad(IR) -> MAR(取原材料)
(MDR) -> X
(ACC)+(X) -> ACC(加法)
(PC)+1 -> PC(一般顺序存放要自增)

2. 运算器

运算器是计算机的执行部件,用于进行算术运算和逻辑运算。运算器的核心是算数逻辑单元ALU。运算器包含若干通用寄存器,用于暂存操作数和中间结果,下面的1、2、3三个寄存器是必须具备的

  1. ACC累加器
  2. MQ乘商寄存器
  3. X操作数寄存器
  4. IX变址寄存器
  5. BR基址寄存器
  6. PSW程序状态寄存器:用于存放ALU运算得到的一些标志信息或处理机的状态信息,如结果是否溢出、有无产生进位或错位、结果是否为负等

3. 计算机系统层次

  1. M0微程序机器(微指令系统):直接和机器接触,由硬件直接执行微指令
  2. M1传统机器(用机器语言的机器):用微程序解释机器指令
  3. M2虚拟机器(操作系统机器、混合层):用机器语言解释操作系统,距离硬件最近的一层软件。由操作系统程序(由指令和广义指令组成)实现
  4. M3虚拟机器(汇编语言机器):用汇编语言翻译成机器语言程序,编写汇编语言源程序
  5. M4虚拟机器(高级语言机器):用编译程序翻译成汇编语言程序,面向用户,是为用户编写应用程序而设置的。该层由各种高级语言编译程序支持和执行

虚拟机:软件实现的机器,只对该层的观察者存在,对于某层的观察者来说,只能通过该层的语言了解和使用计算机,而不必关心下层是如何工作的

在计算机多层次结构中,上下层是可以分割的,且上层是下层的功能实现。上层在下层的基础上实现了更加丰富的内容,仅有下层没有上层是可以的(即上下层并不是相互依存、不可分割的)

4. 计算机硬件和软件的关系

  1. 硬件和软件互相依存
    硬件是软件工作的物质基础,软件的正常工作是硬件发挥作用的唯一途径
  2. 硬件和软件无严格界限
    在许多情况下,计算机的某些功能既可以由硬件实现,也可以由软件实现。因此,硬件与软件在一定意义上没有严格的界面
  3. 硬件和软件协同发展
    计算机软件岁技术的发展而发展,而软件的不断发展与完善又促进硬件的更新,两者交织发展,缺一不可

5. 题目杂记

  1. 早期的冯诺依曼机以运算器为中心,且是单处理机;多指令多数据流方式是多处理机。冯诺依曼机最根本的特征是采用“存储程序”原理,基本工作方式是控制流驱动方式。
  2. 控制流驱动:由指令去控制数据的存读,如冯诺依曼机;
    数据流驱动:用数据驱动
  3. 冯诺依曼机:存储程序(事先编好程序数据、启动后无需人干预、按规定顺序执行、过程:从主存取指令->对指令译码->计算下条指令地址->取操作数并执行->将结果送回存储器);程序的功能都通过中央处理器执行指令实现;指令和数据存在存储器中(区分依据是指令周期的不同阶段);
    指令周期分为4个部分:1)取指周期(取出的是指令);2)间接寻址周期(找到有效地址);3)执行周期(取出的是数据);4)中断周期(检查有没有中断信号)
  4. 相联存储器既可以按地址寻址也可以按内容选择地址。基本原理:把存储单元所存内容的某一部分作为检索项(即关键字项)去检索该存储器,并将存储器中与该检索项符合的存储单元内容进行读出或写入。所以它是按内容或地址进行寻址的,价格较为昂贵。一般用来制作TLB、相联Cache等;
    冯诺依曼机(存储程序)按地址访问并顺序执行指令
  5. 软件和硬件具有逻辑上的等效性,硬件实现具有更高的执行速度,软件实现具有更好的灵活性。执行频繁、硬件实现代价不是很高的功能通常由硬件实现
  6. 地址译码器是主存的构成部分,不属于CPU。通用寄存器、地址寄存器、指令寄存器IR都包含在CPU中
  7. 速度:寄存器在CPU内部,速度最快;Cache采用高速的SRAM制作,速度中等;内存常用DRAM制作,速度最慢
  8. 8位计算机表示:计算机字长为8位,一次可以处理8位的数据
    计算机系统以16位来表示地址:该机器有2^16=65536个地址空间
  9. 文本处理属于应用软件;操作系统属于大型系统软件;编译程序属于系统软件
    编译程序属于语言处理程序;连接程序属于服务性程序;数据库管理系统属于系统程序
  10. 编译程序:编译和运行是分开的,但在一个交互环境中,并不需要将这两个阶段代码隔开。编译程序编译时间长,但运行速度快
    解释程序:不需要在运行前把源程序翻译成目标代码,也可以实现在某台机器上运行程序并产生结果,解释程序运行速度慢
    区别:解释程序将源程序作为输入,解释一句就提交给计算机执行一句,并不形成目标程序;而编译程序把源程序作为输入,产生出机器语言的目标程序,然后再让计算机执行这个目标程序,得到结果。即:编译程序生成目标代码,解释程序不生成。因此,编译程序产生目标代码的执行速度比解释程序的执行速度快(若遇到循环,解释程序要不断地重复解释,而编译程序只需执行一次)
  11. 机器语言是计算机唯一可以直接执行的语言;
    汇编语言用助记符编写,以便记忆;
    正则语言是编译原理中符合正则文法的语言
  12. 编译:由高级语言转化为汇编语言的过程
    编译程序:属于翻译程序,将高级语言源程序一次全部翻译成目标程序,只要源程序不变,就无需重新翻译。
    汇编:把汇编语言源程序翻译成机器语言程序的过程
    汇编程序:属于翻译程序,把汇编语言源程序翻译为机器语言程序
    编译程序和汇编程序的区别:若源语言是诸如C++、Java等“高级语言”,而目标语言是诸如汇编语言或机器语言之类的“低级语言”,则这样的一个翻译程序称为编译程序。若源语言是汇编语言,目标语言是机器语言,则这样的一个翻译程序称为汇编程序
    解释程序:只有当程序执行时才将源程序翻译成机器语言,并一次只翻译一行语句,边翻译边执行
    翻译程序:将高级语言源程序转换成机器语言程序(目标代码)的软件。包括两种:编译程序+解释程序,即上述所说的都属于翻译程序
  13. 实际软件的运行情况能全面代表计算机性能
  14. 向后兼容:指时间上向后兼容,即新机器兼容使用以前机器的指令系统。系列机的基本特性是指令系统向后兼容
  15. 运算器和控制器中都含有寄存器,CPU由运算器和控制器两个部件组成;
    存储器是一个独立的部件
  16. 硬件能直接执行的只能是机器语言(二进制编码),别的都不行
  • 8
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值