计算机组成原理
1、什么是计算机?
计算机俗称电脑,就相当于一种人造人, 电脑二字蕴含着人类的对计算机的终极期望,希望一通电就能够像人脑一样去工作
2、为何要有计算机?
为了造出一种机器来取代人去工作,计算机就相当于人类的奴隶
3、计算机的核心组成
3.1 五大组成部分
计算机由控制器、运算器、存储器、输入/输出设备5大部分组成。
-
控制器:是计算机的指挥系统,负责控制所有其他硬件的运行
-
运算器:负责数学运算&逻辑运算。cpu = 控制器 + 运算器,cpu相当于大脑
-
存储器:是计算机的记忆设备,分为内存和外存
内存/主存 RAM:基于电信号来存储数据 ,类比于人类大脑的短期记忆功能
- 优点:存取速度都快
- 缺点:没有办法持久存储,一旦断电数据就全部丢失
外存:机械械磁盘基于磁信号来存储数据,相当于笔记本子
优点:可以持久保存数据
缺点:存储速度都慢
- 输入设备:键盘、鼠标
- 输出设备:显示器、音响、打印机
4、程序在计算机中怎么运行
在运行程序之前:程序最先是先存放于硬盘中的(程序安装:本质就是把一堆代码文件放到硬盘中)
程序开始运行分两个阶段
- 加载阶段/启动阶段: 把程序的指令或数据从硬盘读入内存
- 执行阶段:cpu从内存中取出指令来运行
硬盘、内存里存的东西长什么样子?
- 内存中:电信号
- 硬盘中:磁信号/半导体闪存
如何提升程序的启动速度?
5、计算机组成详解
5.1 处理器详解
cpu内部的指令集
-
2核4线程:真2核,假4核
-
x86:指的是cpu的指令集是复杂指令集
-
64位:cpu一次性能够从内存中取出多少位二进制数。64位cpu代表,cpu一次性从内存中取出64位二进制数,也就是64位的cpu认为64位二进制数才是一条完整的指令。补充:一个二进制数又称之为一个bit,比特位
-
64位的cpu可以 运行64位、32位的程序;32位的cpu只能运行32位的程序
软包:nginx-1:1.20.1-14.el9_2.1.x86_64 (软件的版本与cpu的兼容性*****)
5.2 存储器详解
1、CMOS是什么
与内存一样断电数据就丢,但特点是耗电量非常低,由主板上的电池负责供电
2、单位换算
1B= 8bit
1KB=2(10)B=1024B; 括号中的数字为2的指数(即多少次方)
1MB=2(10)KB=1024KB=2(20)B;
1GB=2(10)MB=1024MB=2(30)B。
1TB=2(10) GB=1024GB=2(40)B
1PB=2(10) TB=1024TB=2(50)B
1EB=2(10) PB=1024PB=2(60)B
1ZB=2(10) EB=1024EB=2(70)B
1YB=2(10) ZB=1024ZB=2(80)B
3、计算机的存取单位:扇区
虽然计算机上存放的都是一个个的bit位,但是计算机存取硬盘的单位都是一个扇区,一个扇区512个字节
4、机械磁盘寻道时间
机械磁盘找到数据需要花费的时间:
- 平均寻道时间: 机械手臂上的磁头找到存储数据的那一圈磁道所花费的时间 ---》5ms
- 平均延迟时间: 磁盘转半圈的速度 ---》4ms
5.3 虚拟内存
在硬盘上分出一个空间作内存,称之为swap分区;swap分区做虚拟内存是一种保命措施,而不是提效措施。
什么时候用?
一旦物理内存不够用了,就可以把物理内存中一些数据交换到swap分区上。整个过程计算机的速度被降低,但是保证不崩溃。
6、什么是编程语言
编程语言与英语、法语、汉语一样,都是一种事物与另外一种事物沟通的工具
你 --------英语-----------------英国人
你 --------汉语-----------------中国人
你 --------编程语言-------------计算机
print --工具转换--> 010101010
6.1 什么是编程?什么是程序
编程就是把你想让计算机做的事情的步骤,用编程语言给翻译下来,写入一系列文件中。这一系列文件就称之为程序,计算机本身并不会运行,计算机的运行都是受程序的控制。
程序示例:原始逻辑
银行行长------------------------------------------------------------------------------小员工
要求用户输入账号
要求用户输入密码
判断 用户输入的账号 == "正确的账号" 并且 用户输入的密码 == "正确的密码"
做后续的xxxx
否则:
提示用户重新输入账号密码
程序示例:编程逻辑
银行行长------------------------------------------------------------------------------计算机
用编程语言把上面的步骤给翻译一下
6.2 程序的分类
细说的话程序可以分为两大类:
- 应用程序:给用户使用/应用的程序
- 操作系统:操作系统是一个协调管理控制计算机硬件资源与应用软件的一个控制程序
注意:
- 只有操作系统才能控制计算机硬件
- 应用程序但凡要操作硬件都要给操作系统发请求
6.3 计算机体系的三层结构
进程分为用户态进程和内核态进程,用户态进程就是我们熟悉的应用程序;内核态进程则是用于管理操控计算机硬件的操作系统进程。用户态进程无法直接控制计算机硬件,而是由操作系统提供系统调用接口,用户态进程调用该接口,从而请求内核帮忙管理硬件。
-
应用程序:用户使用的游戏、浏览器等应用
-
操作系统(文件):linux, windows, 安卓、苹果系统等
-
计算机硬件:cpu、内存、硬盘

浙公网安备 33010602011771号