https://toutiao.com/group/6740439861578170894/?app=explore_article×tamp=1569421378&req_id=2019092522225701001404813907542961&group_id=6740439861578170894 计算机基础方面的知识,对于一些非科班出身的同学来讲,一直是他们心中的痛,而对于科班出身的同学,很多同学在工作之后,也意识到自身所学知识的不足与欠缺,想回头补补基础知识。关于计算机基础的课程很多,内容繁杂,但无论是相关书籍还是大学课程,都有点脱离工作。特别地,计算机基础知识体系庞杂,想要从零学习或者复习都耗时耗力。 有鉴于此,本系列文章将带你更快的补足编程必备基础知识,涵盖计算机领域三大基础知识:计算机组成原理、操作系统、计算机网络,这些都是大学计算机课程里面最重要的内容。文章对这些内容做了提炼和总结,摒弃了作为程序员不需要掌握的知识。 目的是:
本篇是计算机组成原理之CPU的控制器和运算器
控制器控制器是CPU的组成部分,用于协调和控制计算机的运行。 控制器的主要部件 下面逐一简单介绍。 程序计数器(Program Counter) 简称PC,用来存储从内存提取的下一条指令的地址。当CPU执行一条指令时,首先需要根据PC中存放的指令地址,将指令由内存取到指令寄存器中,此过程称为“取指令”。与此同时,PC中的地址或自动加1或由转移指针给出下一条指令的地址,此后经过分析指令,执行指令,完成第一条指令的执行,而后根据PC取出第二条指令的地址,如此循环,执行每一条指令,保证程序能够连续地执行下去。 时序发生器 用于发送时序脉冲,CPU依据不同的时序脉冲有节奏地进行工作,类似于CPU的节拍器。 指令编译器 用于翻译指令及控制传输指令包含的数据。 指令寄存器 用于缓存从内存或高速缓存里取出的指令,CPU执行指令时,就可以从指令寄存器中取出相关指令来进行执行。 主存地址寄存器 保存当前CPU正要访问的内存单元的地址,通过总线跟主存通信。 主存数据寄存器 保存当前CPU正要读或写的主存数据,通过总线与主存通信。 通用寄存器 用于暂时存放或传送数据或指令。 运算器运算器是用来进行数据运算加工的。 运算器的主要部件 数据缓冲器 分为输入缓冲和输出缓冲,输入缓冲暂时存放外设送过来的数据,输出缓冲暂时存放送往外设的数据。 ALU 全称为算数逻辑单元,是运算器的主要部件,能完成常见的位运算(左移、右移、与、或、非等)和算术运算(加减乘除等)。 状态字寄存器 存放运算状态(条件码、进位、溢出、结果正负等)和运算控制信息。 通用寄存器 暂时存放或传送数据或指令,保存ALU的运算中间结果。 |
|
来自: 山峰云绕 > 《计算机科学(体系结构原理等)》