• 计算机硬件基本组成和各硬件工作原理


    计算机硬件基本组成

    计算机硬件基本组成可分两大类
    1.早期冯若依曼机的结构
    2.现代计算机的结构

    在这里插入图片描述

    早期冯若依曼机的结构

    冯若依曼在研究EDVAC的时候,提出了存储程序的概念
    存储程序:指令以二进制代码的形式事先输入计算机的主存储器中

    计算机系统中,硬件和软件是等效的
    在这里插入图片描述

    冯若依曼机的特点

    1.计算机由运算器,存储器,控制器,输入设备,输出设备五大部件组成。
    2.指令和数据以同等地位存放于存储器中内,并可按地址寻访
    3.指令和数据均用二进制数表示
    4.指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数存储器中的位置
    5.指令在存储器内按顺序存放。通常,指令是顺序执行的,在特定的条件下,可根据运算结果或根据设定的条件改变执行顺序。
    6.机器以运算器为中心,输入输出设备与存储器之间的数据传送通过运算器完成。

    作用:
    输入设备:将信息转换成机器能够识别的形式
    输出设备:将结果转换成人们能够识别的形式
    主存储器:存放数据和程序
    运算器:算术运算和逻辑运算
    控制器:指挥各部件,使程序运行

    现代计算机的结构

    在这里插入图片描述

    现代计算机以存储器为中心

    在这里插入图片描述

    1.CPU = 控制器 + 运算器
    2.主机 = CPU + 主存储器
    3.I/O设备 = 辅助存储器 + 输入设备 + 输出设备
    I/O设备又可称为外部设备
    辅助存储器可以叫做外存

    由此可见,现代计算机可以认为由三大部分组成
    CPU,I/O设备,主存储器

    思维导图

    在这里插入图片描述

    各硬件工作原理

    主存储器

    在这里插入图片描述

    主存储器有三部分组成:存储体,MAR和MDR。
    存储体:存储体由许多存储单元组成,一个存储单元包含若干个存储元件,每个储存元件能够寄存一位二进制代码“0”或者“1”

    数据在存储体中按地址存储

    一个存储单元可以存储一串二进制代码,这一串二进制代码为一个存储字
    这串二进制代码的位数叫做存储字长
    一个存储字代表一个二进制数,也可代表一串字符
    存储字长可以为8位,16位,或32位。

    MDR(memory address register):存储数据寄存器

    MDR位数 = 存储字长
    例如:MDR = 16位,每个存储单元可以存放16bit

    MAR(memory address register) : 存储地址寄存器
    反应存储单元的个数

    例如:MAR = 4位, 存储单元的个数为 2 ^4。

    特别注意:
    1个字节(Byte) = 8bit
    1B = 1个字节 ----> 1B = 1Byte = 8bit
    1b = 1bit
    1个字(word) = 16bit

    在这里插入图片描述

    主存的工作方式:按存储单元的地址号来实现对存储字各位的存(写入),取(读出)

    在这里插入图片描述

    存储元:也叫做存储元件,存储基元

    运算器

    运算器最少包括3个寄存器(现代计算机内部往往没有寄存器组)和一个算术逻辑单元(ALU).
    ACC(accumulator) : 累加器,用于存放操作数和运算结果。
    MQ(Multiplier-Quotient Register):乘商寄存器,在进行乘除运算时,用于存放操作数或者运算结果
    X:通用的操作数寄存器,用于存放操作数
    ALU:算术逻辑单元,通过内部复杂的电路实现算术运算和逻辑运算。
    在这里插入图片描述

    控制器

    控制器由CU, IR 和 PC 构成。
    CU(control unit): 控制单元, 分析指令,给出控制信号
    IR(instruction register):指令寄存器,存放当前执行的指令
    PC(program counter):程序计数器, 存放下一条指令的地址,有自动加1的功能。

    在这里插入图片描述

    完成一条指令:主要有3个步骤
    1.取指令
    2.分析指令
    3.完成指令
    在这里插入图片描述

    I/O

    I/O子系统包括各种I/O设备及相应的接口。

    在这里插入图片描述

  • 相关阅读:
    经典文献阅读之--Translating Images into Maps(鸟瞰图分割)
    逍遥自在学C语言 | 位运算符<<的高级用法
    c语言每日一练(15)
    rust学习——插件rust-analyzer安装与配置
    唯一索引、普通索引
    【排序算法】选择排序
    Object.keys和Object.values
    【数据结构】图的存储结构及实现(邻接表和十字链表)
    Vue07/Vue自定义指令 局部注册 全局注册 自定义指令值传值
    hive on spark 代码方式实现
  • 原文地址:https://blog.csdn.net/m0_74228185/article/details/132915627