【汇编】计算机的组成

文章目录


前言

计算机是现代社会不可或缺的工具,它的强大功能离不开其复杂而精密的组成结构。本文将深入探讨计算机的组成,从硬件层面解析计算机是如何执行任务的,以便读者更好地理解这一神奇的技术。


一、计算机的基本组成

计算机的基本组成由硬件和软件两大部分构成。硬件包括中央处理器(CPU)、内存、输入设备、输出设备、存储设备等,而软件则包括操作系统、应用程序等。

1.1 中央处理器(CPU)

中央处理器是计算机的大脑,负责执行各种指令。它包含算术逻辑单元(ALU)、控制单元(CU)和寄存器等核心组件,通过时钟信号按照程序顺序执行指令。

1.2 内存

内存是计算机用来存储数据和程序的地方。与硬盘等长期存储设备不同,内存的访问速度非常快,但是一旦计算机关闭,内存中的数据就会丢失。

cpu与我们的内存是通过总线进行通信的:

那我们的计算机就可以抽象成下面这样:

CPU 是计算机的核心部件,它控制整个计

算机的运作并进行运算。要想让一个CPU

工作,就必须向它提供指令和数据

指令和数据在存储器(内存)中存放。

离开了内存,性能再好的CPU也无法工作。

指令和数据存储的位置

计算机中的数据和指令,存储在内存或者磁盘上

:数据和指令,都是二进制信息。

:问题:二进制信息1000100111011000是数据,还是指令?

; 1000100111011000 ─> 89D8H (数据)

; 1000100111011000 ─> MOV AX,BX (程序)

由我们的这个cpu去决定

:数据如何表示?

; 1000100111011000B (二进制)

; 89D8H (十六进制)

; 104730O(八进制)

; 35288D(十进制)

:数据量:B、KB、MB、GB、TB...

计算机中的存储单元

:存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号;

:例如:

一个存储器有128个存储单元,

编号从0~127,

如右图示:

:实际

内存空间很"大"

8086有20条数据线,

寻址空间220

,为1MB

计算机中的总线

在计算机中,总线就像是一条交通要道,连接着不同的硬件部件,让它们能够相互沟通和协作。你可以把总线想象成城市里的道路系统,不同的车辆(硬件设备)通过这些道路来往,从而实现信息的传递和交流。

总线负责传送数据和控制信号,让中央处理器(CPU)、内存、硬盘、显卡等各种硬件能够有效地协同工作。就像车辆在道路上行驶一样,数据和指令可以在总线上传输,让各个部件知道什么时候进行工作,什么时候停下来等等。

总线的重要性就好比城市的交通系统,如果没有良好的总线,不同的硬件就无法有效地协同工作,整个计算机就无法正常运转。所以,总线在计算机中扮演着连接和协调硬件的关键角色。

地址总线

那么地址总线就是去指定我们的存储单元的。

• CPU是通过地址总线来指

定存储单元的。

• 地址总线宽度,决定了

可寻址的存储单元大小。

• N根地址总线(宽度为

N),对应寻址空间2^N。

数据总线

• CPU与内存或其它器件之间的数据传送是通过

数据总线来进行的。

• 数据总线的宽度决定了CPU和外界的数据传送

速度。

• 例:向内存中写入数据89D8H时的数据传送

控制总线

• CPU通过控制总线对外部

器件进行控制。

• 控制总线是一些不同控制

线的集合

• 控制总线宽度决定了CPU

对外部器件的控制能力。

1.3 输入设备和输出设备

输入设备包括键盘、鼠标等,用于向计算机输入数据。输出设备如显示器、打印机则用于展示计算机处理的结果。

1.4 存储设备

存储设备用于长期保存数据,包括硬盘、固态硬盘(SSD)、光盘等。与内存不同,这些设备可以在计算机关闭后保留数据。

二、计算机工作原理

计算机的工作原理可简化为取指令-执行指令的循环。首先,计算机从存储器中取出指令,然后由中央处理器执行。执行的结果可能涉及对内存、寄存器和其他组件的操作,最终可能通过输出设备反馈给用户。

三、计算机的层次结构

计算机的组成可以分为多个层次,从底层到高层分别是物理层、逻辑层、微体系结构、指令集体系结构和操作系统层。每一层都有其特定的功能和任务,通过这些层次的交互,计算机完成各种任务。


总结

计算机的组成是一门复杂而精密的学科,涉及硬件和软件的多个层次。了解计算机的基本组成和工作原理有助于更好地使用和理解这一现代科技的奇迹。计算机科学的发展离不开对计算机组成的深入研究,而这也为未来计算机技术的进步提供了坚实的基础。通过对计算机组成的深入了解,我们能够更好地掌握计算机技术,推动科技的不断创新和发展。

相关推荐
唐诺21 分钟前
几种广泛使用的 C++ 编译器
c++·编译器
XH华29 分钟前
初识C语言之二维数组(下)
c语言·算法
冷眼看人间恩怨1 小时前
【Qt笔记】QDockWidget控件详解
c++·笔记·qt·qdockwidget
红龙创客1 小时前
某狐畅游24校招-C++开发岗笔试(单选题)
开发语言·c++
析木不会编程1 小时前
【小白51单片机专用教程】protues仿真独立按键控制LED
单片机·嵌入式硬件·51单片机
Lenyiin2 小时前
第146场双周赛:统计符合条件长度为3的子数组数目、统计异或值为给定值的路径数目、判断网格图能否被切割成块、唯一中间众数子序列 Ⅰ
c++·算法·leetcode·周赛·lenyiin
yuanbenshidiaos3 小时前
c++---------数据类型
java·jvm·c++
十年一梦实验室4 小时前
【C++】sophus : sim_details.hpp 实现了矩阵函数 W、其导数,以及其逆 (十七)
开发语言·c++·线性代数·矩阵
taoyong0014 小时前
代码随想录算法训练营第十一天-239.滑动窗口最大值
c++·算法
这是我584 小时前
C++打小怪游戏
c++·其他·游戏·visual studio·小怪·大型·怪物