复试 -- 计算机组成原理

本文详细介绍了计算机系统组成,包括冯诺依曼机的特点、现代计算机结构、存储器相关概念和存储器的组织结构,强调了CPU、主存储器和I/O设备三大部分。讨论了存储器的类型、地址、数据传输和性能指标,并深入探讨了数据表示、运算和浮点数的IEEE754标准。此外,文章还涵盖了存储系统、指令系统、中央处理器的工作原理、总线和I/O系统控制方式,如程序查询、中断和DMA方式。
摘要由CSDN通过智能技术生成

一、概述

计算机系统的组成

硬件系统和软件系统共同构成了一个完整的计算机系统。

冯诺依曼机的特点

1)计算机由运算器、存储器、控制器、输入设备和输出设备五大部分组成;
2)指令和数据存储在存储器中,并可以按地址访问;
3)指令和数据均以二进制表示;
4)指令由操作码和地址码构成,操作码指明操作的性质,地址码表示操作数在存储器中的位置;
5)指令在存储器内按顺序存放,通常按自动的顺序取出执行;
6)机器以运算器为中心,I/O设备与存储器交换数据也要通过运算器。(因此,后来有了以存储器为中心的计算机结构)

现代计算机的组成框图

由于运算器和控制器在逻辑关系和电路结构上联系十分紧密,通常将它们合起来统称为中央处理器,简称CPU,把输入输出设备简称为I/O设备,这样现代计算机可以认为由三大部分组成:CPU与主存储器可以称为主机,I/O设备称为外部设备,结构图如下

关于存储器相关概念

存储器的功能:

存储器是计算机系统中的记忆设备,用来存放程序(指令)和数据(二进制代码形式存放)。

存储器中最小单位就是存储元,可以存储一个二进制代码(0或1),即1个 bit

什么是存储单元、存储字、存储字长、存储体?
存储单元:存储一个存储字并具有特定存储地址的存储单位;
存储字:一个存储单元中存放的所有的二进制数据,按照某个地址访问某个存储单元获取的二进制数据。
存储字长:存储字中二进制数据的位数,即按照某个地址访问某个存储单元获取的二进制数据的位数;
存储体:由多个存储单元构成的存储器件。

什么是机器字长,指令字长和存储字长?
机器字长:CPU一次能够处理的二进制数据的位数。
存储字长:一个存储单元存储二进制代码的长度。
指令字长:一个指令字中包含二进制代码的位数。

主存储器中,什么是MAR,什么是MDR,存储器的最大容量由什么决定?
1)MAR:存储地址寄存器,保存需要访问的存储单元地址。反映存储单元的个数。
2)MDR:存储数据寄存器,缓存读出/写入存储单元的数据。反映存储字长。
3)存储器的最大容量由MAR寄存器的位数和MDR寄存器的位数决定。

CPU如何区分当前读取的是指令还是数据?

根据时间判断,当前工作时间是在取指阶段,从内存中读取出来的一定是指令,当前工作时间是在执行阶段,从内存中读取出来的一定是数据。

一条指令在CPU的执行过程

几乎所有的冯·诺伊曼型计算机的CPU,其工作都可以分为5个阶段:

取指令 --> 指令译码 --> 执行指令 --> 访存取数 --> 结果写回

1.取指令阶段
    取指令(Instruction Fetch,IF)阶段是将一条指令从主存中取到指令寄存器的过程。
    程序计数器PC中的数值,用来指示当前指令在主存中的位置。当一条指令被取出后,PC中的数值将根据指令字长度而自动递增。
    //PC -> AR -> Memory
    //Memory -> IR
2.指令译码阶段
    取出指令后,计算机立即进入指令译码(Instruction Decode,ID)阶段。
    在指令译码阶段,指令译码器按照预定的指令格式,对取回的指令进行拆分和解释,识别区分出不同的指令类别以及各种获取操作数的方法。
    //                        { 1.Ad
    //Memory -> IR -> ID ->   { 2.PC变化 
    //                        { 3.CU(Control Unit)
3.访存取数阶段
    根据指令需要,有可能要访问主存,读取操作数,这样就进入了访存取数(Memory,MEM)阶段。
    此阶段的任务是:根据指令地址码,得到操作数在主存中的地址,并从主存中读取该操作数用于运算。
    //Ad -> AR -> AD -> Memory
4.执行指令阶段
    执行指令(Execute,EX)阶段,此阶段的任务是完成指令所规定的各种操作,具体实现指令的功能。为此,CPU的不同部分被连接起来,以执行所需的操作。
    //Memory -> DR -> ALU 
5.结果写回阶段
    结果写回(Writeback,WB)阶段把执行指令阶段的运行结果数据“写回”到内存中。
    //DR -> Memory
6.循环阶段
    在指令执行完毕、结果数据写回之后,若无意外事件(如结果溢出等)发生,计算机就接着从程序计数器PC中取得下一条指令地址,开始新一轮的循环,下一个指令周期将顺序取出下一条指令。
    //重复 1~5
    //遇hlt(holt on)停止

性能指标

主频 CPU工作主时钟的频率,机器主频Rc

CPI 执行一条指令所需时钟周期数

MIPS 每秒执行多少百万条指令

FLOPS 每秒执行多少次浮点运算

时钟周期 节拍脉冲,CPU中最小的时间单位

二、数据的表示和运算

数制与编码

数值

BCD码

8421码:本质就是十六进制

	加法修正:

		大于(1010)_2的时候需要加6修正
		(1010)_2到(1111)_2为无效码

字符和字符串

  • ASCII码:

    有7位,用一个字节可以表示(最高位不用,为0)

  • 字符串的存放(大端,小端)

大端模式:是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;(符合人的正常思维)

一个字节一个字节的倒着放。(注:一个字节=2位16进制=8位2进制)

小端模式:是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。

常用校验码

  • 奇偶校验码

      奇校验码:整个校验码(有效位和信息位)中“1”的个数为奇数
    
      偶校验码:整个校验码(有效位和信息位)中“1”的个数为偶数
    
      优缺点:只能检错,不能纠错
    
  • 海明(汉明)校验码

      分组多个校验位
    
      优缺点:能发现2位错误,纠正一位错误
    <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值