计算机组成原理
目录
❤ 控制器
❤ 运算器
❤ 控制器+运算器(计算机的中央处理器CPU)
❤ 存储器
内存(主存)
外存
内存和外村的区别
❤ 输入设备
❤ 输出设备
❤ 适配器
❤ 总线
❤ 启动计算机的流程
❤ 机械硬盘
❤ 固态硬盘
python从小白到总裁完整教程目录:https://blog.csdn.net/weixin_67859959/article/details/129328397?spm=1001.2014.3001.5501
计算机分为五大组成部分,分别为:控制器、运算器、存储器、输入设备和输出设备。其中控制器+运算器是计算机的中央处理器(CPU),相当于人类的大脑。
❤ 控制器
控制器CU(Controller Unit)是计算机的指挥系统。是计算机的指挥系统,控制器一般由指令寄存器、指令译码器、时序电路和控制电路组成
控制器的基本任务:按照一定的顺序一条接着一条取指令、指令译码、执行指令。取指周期和执行周期
控制器完全可以区分开哪些是指令字,哪些是数据字。一般来讲,取指周期中从内存读出的信息流是指令流,它流向控制器;而在执行器周期中从内存读出的信息流是数据流,它由内存流向运算器
❤ 运算器
运算器也称为算术逻辑单元ALU(Arithmetic Logic Unit)。它的功能是完成算术运算和逻辑运算。算术运算是指加、减、乘、除及它们的复合运算。而逻辑运算是指“与”、“或”、“非”等逻辑比较和逻辑判断等操作。在计算机中,任何复杂运算都转化为基本的算术与逻辑运算,然后在运算器中完成
- 在计算机中参与运算的数是二进制的
- 运算器的长度一般是8、16、32和64位
❤ 控制器+运算器(计算机的中央处理器CPU)
中央处理器(CPU)是计算机中负责读取指令,对指令译码并执行指令的核心部件;其主要包括两个部分,即控制器、运算器,其中还包括高速缓冲存储器及实现它们之间联系的数据、控制的总线
- 多核CPU:多个CPU,电脑可以同时干多件事,如4核CPU的电脑可以同时干四件事
- X86-64位:X86是CPU的一种型号,64表示CPU每次能取64位二进制数。X86-32表示CPU每次取32位二进制数。CPU具有向下兼容性,即64位电脑能下载32位的软件,而32位的软件下载64位的软件会丢失数据
❤ 存储器
存储器是计算机的记忆装置,它的主要功能是存放程序和数据。程序是计算机操作的依据,数据是计算机操作的对象。
- 存储数据和程序(指令)
- 容量(存储单元、存储单元地址、容量单位)
- 分类内存(ROM、RAM)、外存
- ROM存储器:ROM只读存储器(不可写)在工厂中就被编程完毕,然后再也不能修改。它一般存放BIOS(Basic input output system)程序,该程序一般用于启动计算机,或用于处理底层设备的控制
- CMOS存储器:CMOS存储器由一块电脑内置的电池驱动供电,它一般用来保持当前时间和日期的更新,也就是说,即使计算机没有充电,时间也会持续更新;同时它也可以存储启动磁盘的路径。(装机的时候一般会告诉计算机操作系统在计算机中的位置,如C:/)
存储器单位:
内存(主存)
内存指的就是主板上的存储部件,CPU直接与之沟通,并用其存储数据的部件,存放当前正在使用的(即执行中的)数据和程序,它的物理实质就是一组或多组具备数据输入输出和数据存储功能的集成电路,内存只用于暂时存放程序和数据,一旦关闭电源或发生断电,其中的程序和数据就会丢失
特点:
内存处理速度快、存储容量小、断电后信息丢失
外存
外存包括软盘、硬盘和光盘,存放在其中的数据靠磁来维持,因此可永久保存数据
特点:
外存处理速度慢、存储容量大、信息永久保存
内存和外村的区别
内存用于存放当前正在运行的程序和正在使用的数据,CPU可以直接对它进行访问
外存用于存放当前暂不使用的或需要永久性保存的程序、数据和文件,在需要重用时才成批地调入,调出内存
❤ 输入设备
把人们所熟悉的某种信息形式变换为机器内部所能接收和识别的二进制信息形式
常用的输入设备有键盘、鼠标、光笔、扫描仪、数字化仪、条形码阅读器等
❤ 输出设备
把计算机处理的结果变换为人或其他机器设备所能接收和识别的信息形式
常用的输出设备有显示器、打印机、绘图仪等
注意:由于外存储器即是一种输入设备,也是一种输出设备,因此外存储器也被称为IO设备,其中I为Input(输入);O为Output(输出)
❤ 适配器
它使得被连接的外围设备通过系统总线与主机进行联系,以便使主机和外围设备并行协调地工作
❤ 总线
构成计算机系统的骨架,是多个系统部件之间进行数据传送的公共通路
总之,现代电子也是人们常说的计算机硬件计算机是由运算器、存储器、控制器、适配器、总线和输入/输出设备组成的。这也是人们常说的计算机硬件
❤ 启动计算机的流程
- 计算机通电
- BIOS运行,读取CMOS里面记录的启动项,去启动设备(硬盘)
- 从硬盘上读取第一个扇区的内容(MBR主引导记录512字节,前446是引导信息,告诉你操作系统代码的位子,后64是分区信息,最后两位为标志位)
- 读入bootloader启动转载模块(类似地图兵,前面开路的),然后启动操作系统
- 操作系统将驱动程序(传导节点)加载到内存。操作系统全面接管计算机
❤ 机械硬盘
- 机械手臂:读取数据
- 磁道:存取数据
- 扇区:划分磁道,一般划分的单位为512KB
- 平均寻道时间:由于工业水平的限制,一般为5ms
7200r/min
120r/s
1/120=0.0083s=0.83ms
(0+0.83)/2=4.15ms
平均机械硬盘寻找数据的时间=平均寻道时间+平均延迟时间=5+4.15=9.15ms
❤ 固态硬盘
常见的固态硬盘(HDD)运行主要是靠机械驱动头,包括马达、盘片、磁头摇臂等必需的机械部件,它必须在快速旋转的磁盘上移动至访问位置,至少95%的时间都消耗在机械部件的动作上。
而SSD固态硬盘却不同机械构造,无需移动的部件,主要由主控与闪存芯片组成的SSD可以以更快速度和准确性访问驱动器到任何位置。传统机械硬盘必须得依靠主轴主机、磁头和磁头臂来找到位置,而SSD用集成的电路代替了物理旋转磁盘,访问数据的时间及延迟远远超过了机械硬盘。SSD有如此的“神速”,完全得益于内部的组成部件:主控--闪存--固件算法。SSD通过这套组成部件,让数据以电荷的方式存储在每个NAND存储单元内。
总结:固态硬盘是基于固态电子(SSD,断电数据也会保留)和算法实现数据存储的
相关文章:

计算机组成原理
目录 ❤ 控制器 ❤ 运算器 ❤ 控制器运算器(计算机的中央处理器CPU) ❤ 存储器 内存(主存) 外存 内存和外村的区别 ❤ 输入设备 ❤ 输出设备 ❤ 适配器 ❤ 总线 ❤ 启动计算机的流程 ❤ 机械硬盘 ❤ 固态硬盘 python从小白到总裁完整教程目录:https://b…...
1. 命名规范
1. 命名规范 成绩10开启时间2021年09月17日 星期五 18:00折扣0.8折扣时间2021年11月6日 星期六 00:00允许迟交否关闭时间2021年11月21日 星期日 00:00 家有家法,行有行规。在家有家的规矩,入行有行的规矩。我们计算机一行就有一个命名的规矩,…...

论文投稿指南——中文核心期刊推荐(新闻事业)
【前言】 🚀 想发论文怎么办?手把手教你论文如何投稿!那么,首先要搞懂投稿目标——论文期刊 🎄 在期刊论文的分布中,存在一种普遍现象:即对于某一特定的学科或专业来说,少数期刊所含…...
【Linux】工具(4)——make/Makefile
本期博客我们的任务就是搞懂自动化构建工具——make/Makefile一、什么是make/Makefile📌make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make&…...

【企业服务器LNMP环境搭建】nginx安装
1、介绍(官方网址:nginx news ) 1.1 常见用法 1) web服务器软件 httpd http协议 同类的web服务器软件:apache nginx(俄罗斯) IIS(微软 fastcgi) lighttpd(德国) 2)代理服务器 反向代理 3)邮箱代理服务器 IMAP POP3 SMTP 4)负载均…...
Linux 配置规范 操作系统 _S3A3G3
目录 1.检查使用IP协议远程维护的设备是否配置SSH协议,禁用telnet协议 2.检查账户认证失败次数限制...

基于信息间隙决策理论的碳捕集电厂调度(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

【C语言进阶:指针的进阶】回调函数
本章重点内容: 字符指针指针数组数组指针数组传参和指针传参函数指针函数指针数组指向函数指针数组的指针回调函数指针和数组面试题的解析什么是回调函数: 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作…...
C++模板的使用
在平时的工作和学习过程中,经常会用到泛型,这里对泛型和模板进行一下梳理,以便理解和使用。 模板关键字 template。为什么要使用模板? 假如设计一个两个参数的函数,用来求两个对象的乘积,在实践中我们可能需要定义n多个函数 int multipli…...
三天Golang快速入门—面向对象
面向对象Golang接口的定义go中类空接口空接口作为函数的参数切片实现空接口map的值实现空接口类型断言值接收者和指针接收者值接收者指针接收者接口嵌套Golang接口的定义 接口interface是一种抽象的类型。接口定义了一个对象的行为规范,只定义规范不实现࿰…...

开发手册——一、编程规约_6.并发处理
这篇文章主要梳理了在java的实际开发过程中的编程规范问题。本篇文章主要借鉴于《阿里巴巴java开发手册终极版》 下面我们一起来看一下吧。 1. 【强制】获取单例对象需要保证线程安全,其中的方法也要保证线程安全。 说明:资源驱动类、工具类、单例工厂…...

ACM---大一第三周周赛(Floyd算法+并查集算法学习周)
🚀write in front🚀 📝个人主页:认真写博客的夏目浅石.CSDN 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝 📣系列专栏:ACM周训练题目合集.CSDN 💬总结:…...

spring整合mybatis和Junit
该项目使用spring纯注解方式开发,用配置类取代spring的配置文件 一、导入依赖 整合Junit需要导入spring-test 整合mybatis需要导入spring-jdbc、mybatis-spring <dependencies><!-- https://mvnrepository.com/artifact/org.springframework/spring-cont…...
Spring Boot 3.0系列【7】核心特性篇之JSON
有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot版本3.0.3 源码地址:https://gitee.com/pearl-organization/study-spring-boot3 文章目录 前言JSON什么是JSON常用JSON 库GsonFastJsonJacksonJackson 还是 FastjsonSpring Boot 中的 JSON1. 自动配置 Jackson2. @…...

【数据结构初阶】二叉树顺序结构:堆的实现
前言 前边077带着大家学习了树与二叉树的相关概念,这篇文章我们来实现一个二叉树的顺序结构。 二叉树的顺序结构 普通的二叉树是不适合用数组来存储的,因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结构存储。现实中我们通常把堆(一种二叉…...

C/C++:动态内存管理
目录 一. C/C内存分布 二. C/C动态内存管理 2.1 C语言动态内存管理 2.2 C动态内存管理 2.2.1 new/delete操作符 2.2.2 operator new与operator delete函数 2.3 new/delete的实现原理 2.4 定位new(placement - new) 2.5 new/delete和malloc/free的…...

黑猫带你学eMMC协议第28篇:eMMC的开漏和推挽模式(push-pull open drain)
本文依据eMMC JEDEC5.1及个人工作经验整理而成,如有错误请留言。 文章为个人辛苦整理,付费内容,已加入原创侵权保护,禁止私自转载。 文章所在专栏:《黑猫带你学:eMMC协议详解》 1 什么是开漏和推挽 1.1 推挽电路是什么 关于推挽和开漏电路,更多介绍详见我的另一篇文章…...

simulink PID控制
系列文章目录 文章目录系列文章目录前言一、非线性系统线性化原理二、反馈控制开环控制反馈or闭环控制PID ControllerPID微调案例总结前言 将非线性系统近似线性化PIDblock与微调 提示:以下是本篇文章正文内容,下面案例可供参考 一、非线性系统线性化 …...
如何在for循环内执行异步操作
var定义的i是全局的,每次遍历都会覆盖,最后i的值为10,所以输出10次10 for (var i 0; i < 10; i) {setTimeout(function () {console.log(i) // 输出10遍10}, 1000 i * 100)}setTimeOut 第三个函数 for (var i 0; i < 10; i) {setT…...

性能测试——LoadRunner: Controller的使用
Controller Controller是用来创建测试环境,执行在VUG中编写的测试脚本 可以直接点击Controller的快捷方式打开,也可以在VUG中打开 这里将虚拟用户数设置为3,比较适合自己的电脑性能 整个controller分为下面几个模块 这里先设置左下角的目标计划 设置初始化:双击…...

【Python】 -- 趣味代码 - 小恐龙游戏
文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...

CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...

【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...