前言

本次计算机组成原理学习主要分为两块

1、计算机组成原理学习(一)

主要对计算计结构和微处理器(CPU)功能原理进行学习

2、计算机组成原理学习(二)

主要对CPU,操作系统,汇编、编程语言之间的运行原理进行学习

通过计算机编程语言的基本数据类型设计的知识学习,如果你还想深度了解一下编程语言如何通过编译器在计算机中运行,那么请接着看下面的内容:

一、冯诺依曼结构

冯诺依曼结构

冯·诺依曼结构组成

运算器、控制器、存储器(一个)、输入设备和输出设备

冯·诺依曼结构体系结构上主要特点有:

1、以运算单元为中心

2、采用存储程序原理

3、存储器是按地址访问、线性编址的空间

4、控制流由指令流产生

5、指令由操作码和地址码组成

6、数据以二进制编码

冯·诺依曼结构提出后的贡献就是存储程序概念的提出,并且得到了实现,因为指令和数据都是二进制码,指令和操作数的地址又密切关联,所以基于当时的电子电路结构水平,选择这种结构是必然的。

缺点就是这种指令和数据共享同一总线的结构,而且必须按照顺序执行,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。

完整执行一条指令结果流程如下:

冯诺依曼指令运行

目前大多数的计算机运行都遵守冯诺依曼结构。

二、哈佛结构

哈佛结构

哈佛结构组成

运算器、控制器、指令存储器(一个)、数据存储器(一个)、输入设备和输出设备

个人认为哈佛结构特点继承了冯诺依曼结构的特点。

哈佛结构是将程序指令存储和数据存储分开的处理器结构,两条总线数据宽度可以不一致。

完整执行一条指令结果流程如下:

哈佛指令运行

注意

1、一些51单片机,还有部分DSP芯片是哈佛结构模式,所以它们只能执行较少的任务。

2、随着科技的发展,目前的计算机基本上混用两种结构模式,多核心多处理器高级处理芯片大多外围采用冯诺依曼结构,局部采用哈佛结构.

3、哈佛结构与冯诺依曼最大的区别在于存储器分切割应用上,因为哈佛结构将存储器分为指令和数据两种,从而CPU与存储器之间有两条总线。

二、CPU

在上面中,我们已经简单的了解了CPU与存储器之间的通信,接下来我尽可能把自己的一些认知加进去,一起共同深度学习CPU的工作原理

1、CPU功能

现在市面上的CPU都有下图的四大功能

CPU功能

注意:

现在新的CPU都有多个核心以及多级内部复杂的缓存设计,这样的设计可以同时取到多条指令执行,从而体现并行处理的目的,即便是这样程序指令的顺序执行一直是一条严谨的规则。

2、CPU的组成

为了实现上面的功能,CPU一般有运算器,控制器,寄存器三大组成部分,其内部可以分的更细,如下图所示:

CPU的组成

他们之间的逻辑处理如下图所示:

CPU主要组成部分逻辑结构图

尽管我们熟悉了CPU的运作流程,但是必须要对以下几个概念要熟悉掌握

指令周期

1、指令周期:执行一条指令所需要的时间,一般由若干个[机器周期]组成,是从取指令、分析指令到执行完所需的全部时间。指令周期的长短与指令的复杂程度有关。

2、CPU周期:又称机器周期,机器内部各种操作大致可归属为对CPU内部的操作和对主存的操作两大类,由于CPU内部操作速度较快,CPU访问一次内存所花的时间较长,因此用从内存读取一条指令字的最短时间来定义,这个基准时间就是CPU周期(机器周期)。一指令周期常常用若干个CPU周期数来表示。

3、时钟周期:也称为振荡周期,定义为时钟频率的倒数。时钟周期是计算机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作。时钟周期是一个时间的量。时钟周期表示了SDRAM所能运行的最高频率。更小的时钟周期就意味着更高的工作频率。一个CPU周期包含有若干个时钟周期。

时序产生器

CPU中一个类似"作息时间"的东西,使计算机可以准确、迅速、有条不紊地工作。机器一旦被启动,即CPU开始取指令并执行指令时,操作控制器就利用定时脉冲的顺序和不同的脉冲间隔,提供计算机各部分工作时所需的各种微操作定时控制信号,有条理、有节奏地指挥机器的动作,规定在这个脉冲到来时做什么,在那个脉冲到来时又做什么,给计算机各部分提供工作所需的时间标志。

注意:

1、一条指令分为两部分:操作码+地址码。

2、执行一条指令的顺序是:CPU先把该指令从主存读取到数据寄存器中,然后再传送至指令寄存器。

3、执行任何给定的指令:首先必须对操作码进行测试,目的是识别所要求的操作,而指令译码器(Instruction Decoder,ID)就是完成这项工作的。

4、执行指令时:CPU能自动递增PC的内容,使其始终保持将要执行的下一条指令的主存地址,为取下一条指令做好准备。

5、一个CPU至少要有一个累加寄存器

6、这里的数据缓冲寄存器就是数据寄存器

7、微操作:控制器在实现一条指令的功能时,总是把每一条指令分解成一系列时间上先后有序的最基本、最简单、不可再分的操作控制动作,这种最基本、最简单、不可再分的操作称为微操作

8、数据通路:通常把许多寄存器之间传输信息的通路称为数据通路(Data Path),它控制信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传送到哪个寄存器。

怎么学计算机组成原理,计算机组成原理学习(一)相关推荐

  1. 计算机组成原理课程学什么,计算机组成原理课程的学习概要和学习方法

    计算机组成原理的基本要求是使学生掌握计算机常用的逻辑器件.部件的原理.参数及使用方法,学懂简单.完备的单台计算机的基本组成原理,学习计算机设计中的入门性知识,掌握维护.使用计算机的技能.学习本课程时应 ...

  2. 计算机基础和组成原理——学习资料

    计算机科学/专业导论 网易云课堂: 计算机专业导论 中国大学MOOC: 计算思维导论 计算机专业导论 计算机组成原理 网易云课堂: 计算机组成原理 中国大学MOOC: 哈工大计算机组成原理 计算机组成 ...

  3. 改进建议 计算机组成原理,“计算机组成原理”教学方法的探讨及教学质量的改进...

    摘 要:计算机组成原理是计算机专业的一门主干核心课程,课程的任务是使学生掌握计算机组成部件的工作原理.逻辑实现.设计方法,建立CPU级和硬件系统级的整体概念,培养学生对计算机硬件系统的分析.开发与设计 ...

  4. 计算机二级考试主要学什么,计算机二级考试需要学习什么内容

    计算机二级考试每年报考人数都在增加,那么计算机二级需要学习什么内容呢?下面是小编整理的相关内容,希望对大家有所帮助! 计算机二级考试需要学习以下内容 报考计算机二级的同学需要学习下列科目中的任何一科即 ...

  5. 计算机组成原理——计算机基本组成

    文章目录 其他文章 计算机的基本硬件组成 CPU 内存 主板 I/O 设备 显卡 冯若依曼和哈佛 冯·诺依曼体系结构概述 冯·诺依曼体系工作原理(CPU工作原理) 哈佛结构 哈佛结构和冯诺依曼结构区别 ...

  6. java计算机毕业设计计算机组成原理教学网站源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计计算机组成原理教学网站源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计计算机组成原理教学网站源码+mysql数据库+系统+lw文档+部署 本源码技术栈: 项目 ...

  7. JAVA计算机毕业设计计算机组成原理教学演示软件部署+源码+数据库+系统+lw文档

    JAVA计算机毕业设计计算机组成原理教学演示软件部署+源码+数据库+系统+lw文档 JAVA计算机毕业设计计算机组成原理教学演示软件部署+源码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S ...

  8. java计算机毕业设计计算机组成原理教学演示软件源程序+mysql+系统+lw文档+远程调试

    java计算机毕业设计计算机组成原理教学演示软件源程序+mysql+系统+lw文档+远程调试 java计算机毕业设计计算机组成原理教学演示软件源程序+mysql+系统+lw文档+远程调试 本源码技术栈 ...

  9. 合工大计算机组成原理ppt,合工大 计算机组成原理 计算机组成原理提纲.pdf

    合工大 计算机组成原理 计算机组成原理提纲 计算机组成原理计算机组成原理 合肥工业大学 计算机与信息学院 陈陈 田田 2013.12.12 提 纲 11 考试形式和试卷结构考试形式和试卷结构 2 考查 ...

  10. 女生学电气or计算机,8个女生可以学习的工科专业,高三毕业生了解一下,值得报考...

    原标题:8个女生可以学习的工科专业,高三毕业生了解一下,值得报考 学有方法,考有技巧,优学优考策略致力于学与考的最优结合,助力学子考入理想大学! 一般来说,工科专业比较适合男生,但是呢一些工科专业只要 ...

最新文章

  1. 我妈今年 70 岁,受不了Windows蓝屏,用了 21 年的 Linux!YYDS!
  2. RESTful_基础知识
  3. 历时八年 HTML5标准终于制定完成
  4. boost::python::back_reference相关的测试程序
  5. lt、le、eq、ne、ge、gt的含义
  6. 深入互联网广告中的出价模式(上)— 基础出价模式
  7. Android—Gson原理解析
  8. linux-shell命令之cat【输出档案内容】
  9. 【2021.02.09更新】数学常用基本公式
  10. 智能小车二十《摄像头和路由器装上小车》
  11. PureFTP安装配置
  12. 用mongols轻松打造websocket应用
  13. 哗啦啦收银机系统服务器异常,解决哗啦啦收银系统数据库备份问题(示例代码)...
  14. Mac 上使用windows软件--wineskin
  15. 易语言大漠插件模块制作窗口获取窗口句柄类
  16. Java程序员不得不会的124道面试题(含答案)
  17. drozer安全测试
  18. 如何在excel中完成 双纵坐标 柱状图的绘制 (柱子重叠的解决方法)
  19. 【新知实验室】体验腾讯云音视频
  20. 如何编写外挂 制作外挂 外挂教程

热门文章

  1. python讲师金角大王_python学习day01(金角大王老师)
  2. 荧光显微镜中的彩色效应
  3. 回形取数 蓝桥杯(C++)
  4. English语法_介词搭配
  5. WhiteHoleV0.7界面预览
  6. JSP怎么给手机发短信对接验证码短信接口DEMO示例
  7. 实木地板起翘原因及解决措施
  8. 捷配PCB优品上线,到底有什么与众不同?
  9. You have an error in your SQL syntax问题解决方法
  10. git报错Please move or remove them before you can merge