• 第一次笔记:计算机硬件的工作原理 主存储器 运算器 控制器 计算机的工作过程 计算机系统的层次结构 三种级别的语言


    主存储器

    在这里插入图片描述
    主存储器分为三部分:存储体 + RAM + ROM

    从主存储器读取数据操作:CPU将地址发送给RAM,RAM根据地址在存储体中找到对应地址的数据,之后将数据传递给ROM,之后ROM将数据返回给CPU。

    从主存储器写入数据操作:CPU将地址和数据分别传递给主存储器中的RAM和ROM,之后将数据写入存储体对应的地址。

    存储体结构
    在这里插入图片描述

    运算器

    在这里插入图片描述
    ACC MQ X 都是存储数据的,ACC是累加器,MQ是乘商寄存器,X是通用寄存器。

    ALU是算术逻辑单元。

    控制器

    在这里插入图片描述
    CU是控制单元,是控制器的核心,加减乘除操作由他管理。

    IR是指令寄存器,存放当前执行的指令。

    PC是程序计数器。

    计算机的工作过程

    在这里插入图片描述
    高级语言会被转化成机器语言,存放到主存储器中。

    1. 执行第一条指令
      在这里插入图片描述
      最开始PC的值是0,PC将地址0传递给MAR,MAR之后会到存储体中找到地址是0的数据,之后将数据传递给MDR,这个数据本质上就是指令,然后MDR将这个指令传递给IR,此时IR中有了这个指令,之后IR将指令的操作码传递给CU,CU分析之后,知道了这是一个“取数”的指令,之后IR将指令的地址码传递给MAR,经过一系列操作,将数据传递给MDR,最后MDR将数据存储到ACC中。

    2. 执行第二条指令
      在这里插入图片描述
      区别在于:
      MDR得到的数据会存储到MQ中,然后将被乘数从ACC中转移到X中,之后经过ALU进行乘法操作,将MQ和X中的数据相乘,最后将乘积存储到ACC中。

    3. 执行第三条指令
      在这里插入图片描述
      加法指令:MDR中的数据相当于是加数,加数存储到X寄存器中,被加数存储在ACC中,之后两数进行加法运算。

    计算机系统的层次结构

    在这里插入图片描述
    java等高级语言会抓变成汇编语言,如果程序中调用了系统的库函数的话,会经过系统调用,之后会变成机器语言,机器语言会变成为微程序机器语言。

    三种级别的语言

    在这里插入图片描述

  • 相关阅读:
    数据类型(面向对象)
    java基础之面向对象多态性[24]
    Spring/SpringBoot的那些常用扩展点
    Docker:学习笔记【1】
    顺序结构程序设计(python)
    SpringBoot项目使用EasyPoi实现导入导出,就是这么的丝滑
    直方图,条形图,饼图
    布隆过滤器
    【Django | 开发】面试招聘信息网站(配置中间件记录响应耗时日志)
    湖北省组织申报国家火炬特色产业基地条件、流程梳理
  • 原文地址:https://blog.csdn.net/qq_52077949/article/details/125588995