CPU体系结构(组成部分)
在准备网络工程师考试,里面有些知识点是比较常考的。自己写这篇博客呢,当作是笔记吧,自己看一看也分享给大家一起学习。
这部分的内容就是讲CPU里面的组成结构以及各部分的功能。
CPU的构成:CPU主要由运算器、控制器、寄存器组和内部总线构成。
运算器:由算术逻辑单元ALU、通用寄存器、数据暂存器等组成。程序状态字寄存器接受从控制器送来的命令并执行相应的动作,主要负责对数据的加工和处理。
- 算术逻辑单元ALU:用于进行各种算术逻辑运算(如与、或、非等)、算术运算(如加减乘除等)
- 通用寄存器:用来存放操作数、中间结果和各种地址信息的一系列存储单元。常见的通用寄存器如下:
a) 数据寄存器:
AX,累加寄存器,算数运算的主要寄存器;
BX,基址寄存器;
CX,计数寄存器,串操作、循环控制的计数器;
DX,数据寄存器。
b) 地址指针寄存器:
SI:源变址寄存器;
DI:目的变址寄存器;
SP:堆栈寄存器;
BP:基址指针寄存器
c) 累加寄存器:AC,又称为累加寄存器。当运算器的逻辑单元执行算术运算或者逻辑运算的时候,为ALU提供一个工作区。
3.数据暂存器:用来暂存从主存储器读出的数据,这个数据不能存放在通用寄存器中,否则会破坏其原有数据。
4.程序状态字寄存器:用于保留与算术逻辑运算指令或测试指令的结果对应的各种状态信息。
控制器:由程序计数器PC、指令寄存器IR、地址寄存器AR、数据寄存器DR、指令译码器等。
1. 程序计数器 (PC):用于指出下条指令在主存中的存放地址,CPU根据PC的内容去主存处取得指令,由于程序中的指令是按照顺序执行的,所以PC必须有自动增加的功能, 也就是指向下一条指令的地址。
2. 指令寄存器 (IR):用于保存当前正在执行的这条指令的代码,所以指令寄存器的位数取决于指令字长。
3. 地址寄存器 (AR):用于存放CPU当前访问的内存单元地址。
4. 数据寄存器DR:用于暂存从内存储器中读出或写入的指令或数据。
5. 指令译码器:用于对获取的指令进行译码,产生该指令操作所需要的一些列微操作信号,以控制计算机各部件完成该指令。
CPU体系结构(组成部分)的更多相关文章
- 四大CPU体系结构:ARM、X86/Atom、MIPS、PowerPC
补充介绍一下RISC:RISC(reduced instruction set computer,精简指令集计算机)是一种执行较少类型计算机指令的微处理器,起源于80年代的MIPS主机(即RISC机) ...
- CPU体系结构
http://blog.csdn.net/liuxc0116/article/details/17004313 1.算术逻辑单元ALU(Arithmetic Logic Unit)ALU是运算器的核心 ...
- ARM是CPU体系结构
https://zhidao.baidu.com/question/680620766286548532.html ARM是一种使用精简指令(RISC)的CPU,有别于英特尔的复杂指令(CISC) x ...
- 四大CPU体系结构ARM、X86/Atom、MIPS、PowerPC
http://blog.csdn.net/wangjianno2/article/details/52140936 RISC(reduced instruction set computer,精简指令 ...
- 【基础知识】Intel CPU体系结构|x86是什么意思
看了<计算机系统结构>.<深入理解计算机系统>.<大话处理器>等经典书籍,也在google上搜了一大堆资料,前前后后.断断续续的折腾了一个多月,终于想通了,现在把自 ...
- Linux0.11内核剖析--内核体系结构
一个完整可用的操作系统主要由 4 部分组成:硬件.操作系统内核.操作系统服务和用户应用程序,如下图所示: 用户应用程序是指那些字处理程序. Internet 浏览器程序或用户自行编制的各种应用程序: ...
- Intel 80x86 Linux Kernel Interrupt(中断)、Interrupt Priority、Interrupt nesting、Prohibit Things Whthin CPU In The Interrupt Off State
目录 . 引言 . Linux 中断的概念 . 中断处理流程 . Linux 中断相关的源代码分析 . Linux 硬件中断 . Linux 软中断 . 中断优先级 . CPU在关中断状态下编程要注意 ...
- ARM体系结构和汇编指令
第一节 可编程器件的编程原理 1. 可编程器件的特点 1 . CPU在固定频率的时钟控制下节奏运行 2 . CPU可以通过总线读取外部存储设备中的二进制指令集,然后解码执行 3 . 这些可以被CPU解 ...
- 转SISD、MIMD、SIMD、MISD计算机的体系结构的Flynn分类法
1. 计算平台介绍 Flynn于1972年提出了计算平台的Flynn分类法,主要根据指令流和数据流来分类,共分为四种类型的计算平台,如下图所示: 单指令流单数据流机器(SISD) SISD机器是一种传 ...
随机推荐
- sqlserver查询是否阻塞
查询当前正在执行的语句 SELECT der.[session_id],der.[blocking_session_id], sp.lastwaittype,sp.hostname,sp.progra ...
- 访问rabbitmq-server失败
测试项目正常运行突然访问不了,各项目启动失败,查看日志发现是RabbitMQ拒绝连接. 重启后依然失败,看var/log/rabbitmq/startup_err 发现什么错误信息也没有,后查看磁盘空 ...
- python 小数据池 深浅拷贝 集合
1.小数据池: 1.1代码块: 一个文件,一个函数,一个类,一个模块,终端中每一行 1.1.1 数字: -5 ~ 256 1.1.2 字符串: 乘法时总长度不能超过20 1.1.3 布尔值: 内容相同 ...
- day35作业
1. 查询所有大于60分的学生的姓名和学号 (DISTINCT: 去重) -- 2.查询每个老师教授的课程数量 和 老师信息 -- 3. 查询学生的信息以及学生所在的班级信息 -- 4.学生中男生的个 ...
- Jmeter之命令行生成HTML报告
其实每次使用jemter.bat文件启动JMeter时,命令行窗口都会提示我们不要使用GUI窗口进行测试,除非是进行调试脚本 使用命令行生成结果也很测试报告也很简单 jmeter -n -t [jmx ...
- itest(爱测试) 4.1.1 发布,开源BUG 跟踪管理 & 敏捷测试管理软件
v4.1.1下载地址 :itest下载 itest 简介:查看简介 itest 开源敏捷测试管理,testOps 践行者.可按测试包分配测试用例执行,也可建测试迭代(含任务,测试包,BUG)来组织测试 ...
- oracle 循环插入数据
参考链接:oracle 行转列 pivot函数基本用法 --建表 --drop table SalesList; create table SalesList( keHu varchar2(20), ...
- 基于 lstm 的股票收盘价预测 -- python
开始导入 MinMaxScaler 时会报错 “from . import _arpack ImportError: DLL load failed: 找不到指定的程序.” (把sklearn更新下) ...
- CF613B Skills
CF613B Skills 洛谷评测传送门 题目描述 Lesha plays the recently published new version of the legendary game hack ...
- CF707D Persistent Bookcase
CF707D Persistent Bookcase 洛谷评测传送门 题目描述 Recently in school Alina has learned what are the persistent ...