计算机系统 基础知识点汇总,超全!!!_计算机系统基础-程序员宅基地

技术标签: 计算机基础知识  物联网  计算机网络  

计算基础知识点合集来啦!!! 更多知识请关注我!!!
近期内容:

目录

1.1概述

1.1.1 计算机的发展历程

第一胎电子数字计算机 ENIAC 1946

发展阶段:
电子管计算机时代
晶体管计算机时代
集成电路计算机时代
大规模集成电路计算机时代

1.1.2 计算机体系结构

计算机系统结构

计算机硬件:指组成一台计算机的各种物理装置,硬件系统也被称为裸机,只能识别0-1代码,
系统软件: 是指控制和协调计算机及外部设备,支持应用软件开发和运行的软件

1.2 计算机硬件系统

1.2.1 中央处理器(central processing unit)

CPU包括两个部分:
控制器和运算器(逻辑算术单元)。都包含有寄存器或高速存储区域,用总线(一种电子线路连接)

通常运算器和控制器被合成在一块集成电路的芯片上,被称作CPU芯片

(1)控制器
操作:获取指令、分析指令、执行指令、存储结果

(2)运算器
执行算术运算和逻辑运算,并控制速度

(3)寄存器
提高计算机性能,是高速存储区域,可以在处理过程中临时存储数据

CPU中寄存器的数量和每个寄存器的大小(位数)没确定CPU的性能和速度
e.g.32位CPU指,寄存器是32位的,可以处理32位的数据

类型:指令寄存器、地址寄存器、存储寄存器、累加寄存器

(4)总线 (见1.2.5节

总线是CPU内部及在CPU和主板间传输信息的电子数据线路。
可以通过总线访问各种输入输出设备

1.2.2 计算机的基本工作原理

1.计算机指令格式

计算机指令 = 操作码+操作数(地址码)

计算机指令是能够被计算机识别的二进制代码

计算机操作码所占二进制位数为k,则最多有 2 k 2^k 2k条指令,
若有n条指令,则至少有操作码 [ l o g 1 ( n − 1 ) ] + 1 [log_1(n-1)]+1 [log1(n1)]+1 个二进制位

地址码用来描述该指令的操作对象,或直接给出操作数,或之处操作数的存储器地址或寄存器地址(即,寄存器名)

若计算机指令共占n个字节,则称该指令为n字节指令

2.计算机指令的寻址方式

有效地址 : 指令中操作数的真实地址
由寻址方式和形式地址共同来决定

寻址方式
确定本条指令的数据地址以及下一条将要执行的指令的地址,与硬件结构密切相关

分为两类:
(1)指令寻址
分为两类:

  • 顺序寻址
  • 跳跃寻址

(2)数据寻址
分为:

  • 立即寻址(所需操作数由指令的地址码部分直接给出)
  • 直接寻址(指令的地址码部分给出操作数在存储器中的地址)
  • 隐含寻址(操作数隐含在操作码或某个寄存器中)
  • 间接寻址、寄存器寻址、寄存器间接寻址等

3. 计算机指令系统

定义: 计算机的所有指令的集合

功能分类:
(1)数据传送指令
(2)程序控制指令
(3)数据处理指令
(4)输入/输出指令
(5)其他指令

4. 计算机执行指令的基本过程

步骤:

  • 取指令
    按照程序计数器地址,从内存储器中取出当前要执行的指令送到指令寄存器
  • 分析指令
    由译码器对指令中的操作码进行译码,将指令中的操作码转换成相应的控制信息,由指令中的指令码确定操作数存放的地址
  • 执行指令
    由控制电路发出一系列控制信息,由源地址码所指出的源操作数做该指令所要求的操作,并将操作结果放到由目的地址吗指出的地方
  • 修改程序计数器
    一条指令执行完后,根据程序的要求修改程序的计数器的值

5.指令执行的时序

机器周期 内存中读取一个指令字的最短时间
每个机器周期至少完成一个基本操作

指令周期 计算机完成一条指令所花费的时间

1.2.3 存储器

作用分类 :主存(通常采用半导体存储器,容量小 读写速度快、价格高 )、辅存、缓存、闪存 等

1.RAM存储器

(1)静态存储单元(static RAM, SRAM)
保存信息稳定、信息非破坏性读出
结构简单、可靠性强、速度较快
所用原件较多、占硅片面积大、功耗大、集成度不高

(2)动态存储单元(dynamic RAM, DRAM)
分类:三管式、单管式
靠电容存储电荷的原理来寄存信息
电荷自动消失,在2ms之内对存储单元进行再生或刷新
集成度更高、功耗更低

(3)闪速存储器
电可擦除非易失器件
抗震、节能、体积小、容量大、便宜

(4)高速缓冲存储器Cache
用速度高的SRAM元件组成
快表+快速存储器

5. 存储器的层次化结构

指标: 速度、容量、每位价格
- + - 容量越大,速度越慢,价格越低

1.2.4 数据的内部表示

1.进位计数制及其相互转换

基数(radix) :拥有的数字个数
: 每位数字的值

2.定点数的表示和运算

分类:无符号数、带符号数,其表示范围与机器位数相关

(1)无符号数
非负整数,机器的字长的全部位数均用来表示数值大小

(2)带符号数
符号位(机器数): 0为正 1为负

根据符号位和数值位的编码方法分:

  • 原码
    符号位+绝对值

  • 反码
    正数:反码=原码
    负数:反码=符号位+绝对值各位取反

  • 补码
    正数:补码=原码
    负数:补码=反码+1

    反码的反码 == 原码
    补码的补码 ==原码
    两数的补码之和==两数和的补码

  • 偏移码
    补码的符号位取反

运算:
(1)加减运算
(2)算数移位运算
带符号数一位,保持操作数符号不变
(3)逻辑移位运算
无符号数移位

3.浮点数的表示和运算

(1)浮点数的表示范围
指小数点的位置可浮动的数据
N = M ⋅ R E N=M\cdotp R^E N=MRE

N为浮点数,M为尾数,E为阶码 R为阶的基数(底)
在一台计算机中所有数据的R都是相同的

浮点数的机内表示:

M s + E + M Ms+E+M Ms+E+M

其中:
Ms是尾数的符号位1位 0正1负
E为阶码有n+1位有一位符号位表示正阶或负阶
M为尾数,有m位,
Ms和M组成一个定点小数

(2)IEEE 754 标准
单精度浮点数 (32位),E8位,M24位(内含符号数一位)
双精度浮点数 (64位),E11位,M53位(内含符号数一位)

1.2.5 总线和外设

1.总线

(1)总线的基本概念
总线 是连接计算机中各个部件的信息传输线,是各个部件共享的传输介质

按信息传送方式: 串行传输、并行传输

按功能和实现方式分类:

  • 片内总线
    芯片内部的总线
  • 系统总线
    计算机各部分的信息传输线
    包括:
    数据总线(双向总线,宽度与机器字长、存储字长有关)
    地址总线(单向总线,与存储地址、I/O地址有关)
    控制总线(部分出、部分如方式,控制所有部件)
  • 通信总线
    计算机之间或系统之间的通信
    依据传输方式分:串行通信总线、并行通信总线

(2)总线的组成及性能指标
结构分类
单总线结构、多总线结构(将I/O设备分离出来)

性能指标
总线宽度(数据总线的根数)、总线带宽(数据传输效率)、钟同步/异步 等

(3)总线仲裁
工作包括: 判优控制、通信控制
逻辑分为: 集中式、分布式

(4)总线操作

  • 读和写
  • 块传送
  • 写后读
  • 读后写
  • 广播
  • 广集

(5)总线标准
系统与各模块、模块与模块之间的一个互连的标准界面

2. 输入/输出系统

(1) 外部设备的分类
按作用分:

  • 输入/输出(input/output,I/O)设备
  • 辅助存储器
  • 终端设备
    组成: 输入设备+输出设备+终端控制器
    通过通信线路与主机相连
  • 过程控制设备
  • 脱机设备

(2)硬盘存储器
分类:固定磁头磁盘存储器、移动磁头磁盘存储器
性能指标:存储密度(道密度:半径方向磁道数,位密度:磁道单位长度能记录的二进制代码)、存储容量、存取时间、数据传输率(单位时间向主机传送的数据字节数)

(3)I/O接口
连接总线和设备

基本功能:

  • 实现设备选择
  • 实现数据缓冲以达到速度匹配
  • 实现数据串并格式转换
  • 实现电平转换
  • 传送控制命令
  • 反映设备状态

(4)I/O方式

  • 数据查询
  • 程序中断
  • DMA(直接内存存取)
  • 通道方式

1.3 操作系统

计算机资源: 计算机系统中所有的硬件和软件

1.3.1 操作系统概述

1. 操作系统的功能与任务

主要作用 :
(1)管理系统资源
(2)为用户提供资源共享的条件和环境,并对资源的使用进行合理调度
(3)提供输入/输出的方便环境,简化用户的输入/输出工作,提供良好的用户界面
(4)规定用户的接口,发现、处理或报告计算机操作过程中出现的各种错误

概括的说:操作系统是用以控制和管理系统资源、方便用户使用计算机的程序集合

功能与主要任务:
(1)处理机管理
(2)存储机管理
(3)设备管理
(4)文件管理
(5)用户接口

2.操作系统的发展过程

(1)手工操作
(2)批处理系统
(3)多道程序系统
(4)分时系统
(5)个人计算机操作系统

3.操作系统的分类

(1)多道批处理操作系统
多道:计算机内存中存入多个用户
批处理:外存内存入大量作业,作业的运行完全由系统控制
(2)分时操作系统
允许多个联机用户同时使用一台计算机系统进行计算
将时间划分成时间片,分给各个用户
多路性、交互性、独立性、及时性
(3)实时操作系统
系统能够接收数据并以足够快的速度予以处理和响应
可以控制所有任务协调一致进行
eg.三种典型:
过程控制系统、事务处理系统、信息查询系统
(4)网络操作系统
将计算机加入网络中
网络通信、资源管理、网络管理、网络服务、通信透明性
(5)分布式操作系统
由多台分散的计算机经网络互连而成的系统
(6)嵌入式操作系统
运行于嵌入式系统上的操作系统

1.3.2 进程管理

1.并发程序设计

并发程序的特点 :
(1)无封闭性
并发式程序的输出结果受各程序的相对速度有关(结果的不确定性)
(2)程序与执行过程不是一一对应的关系
共享的程序对应多个执行过程
(3)程序并发执行可以相互制约
不但可能有因果制约,也可能因为有某些资源共享从而间接制约

2.进程的基本概念

程序本身是一个静态的概念,不能刻画多道程序并发执行时的动态特性和并行特性。

进程
(1)是程序的执行过程
(2)包括程序和数据
(3)可能对应多个程序
(4)程序可能对应多个进程

3.进程的状态及其转化

运行、就绪、等待、创建、终止

4.进程控制块及其组织

PCB(process control block)是进程存在的标志
(1)进程名
(2)特征信息
(3)执行状态信息
(4)通信信息(该进程与其他进程之间的关系
(5)调度优先数
(6)现场信息
(7)系统栈
(8)进程映像信息
(9)资源占有信息
(10)族关系

5.进程调度

可抢占资源、不可抢占资源
调度算法:
先来先服务、时间片轮转、优先级调度

1.3.3存储管理

1.存储管理功能与地址重定位

(1)存储管理的功能:

  • 地址变换
  • 内存分配
  • 存储器的共享与保护
  • 存储器扩充

(2)地址重定位
重定位寄存器(relocation register)加入起始地址,将取出逻辑地址加上重定位寄存器(其内容是程序装入内存的起始地址)形成物理地址。
动态地址重定位:
不要求程序全部装入固定的内存空间,在内存中允许程序再次移动位置、而且可以部分地装入程序运行、便于多个程序运行同一副本。
存储器管理技术
基址寄存器BR 限长寄存器LR
实际内存地址D=BR + 指令中的有效地址
如果:BR≤D<BR+LR 则按地址D进行访问
如果 D<BR 或 D>=BR+LR 则地址越界

2.连续存储管理

1.固定区分配

  • 把内存划分成若干大小固定的分区,一个分区分给一个作业使用,直到作业完成
  • 简单、硬件支持少、容易产生内部碎片

2.可变区分配

  • 在作业调入内存时建立一个大小恰好与作业匹配的分区
  • 空闲区域是离散的、出现外部碎片

3.分页式存储管理

  • 作业空间被划分成页,实际内存空间划分成块。页的大小与块的大小相等。当某个作业被调入内存运行时,由重定位机构将作业中的页映射为到内存空间的块上。
  • 有效地址结构:页号+页内偏移量

建立程序逻辑页与内存的存储块之间的对应关系,借助动态地址重定位。

(1)分页式存储管理的地址重定位
页表:页面映像
PCB中存储起始地址与长度

(2)分页式存储保护

  1. 地址变换时:页号<页表长度 (否则视为越界访问)
  2. 增加存取控制与存储保护的信息

<优点
有效解决碎片问题、内存利用率高、内存回收与分配算法简单
<缺点
采用动态地址变换增加了硬件成本、降低了处理机速度
分段式存储及段页式存储

4.分段式存储管理及段页式存储管理

(1)分段式
每段分配连续的存储空间
短号+段内位移
<解决了程序与数据共享以及程序动态链接等问题

段页式
段号+段内页号+页内位移

5.虚拟存储器管理

只让当前用到的信息进入内存、其他尚且用到的信息留在外存
用于支持虚拟存储器的外存称为后备存储器

(1)请求页式存储管理
作业表JT、页表PMT、存储分块表MBT

(2)请求段式存储管理
最优算法
先进先出算法
最近最久未用算法

1.3.4.文件管理

1.文件及文件系统

文件:一组带标识(标识即为文件名)的、逻辑上有完整意义的信息项的序列。
文件系统:负责存取和管理文件信息的软件机构
文件的类型
用途(系统文件、库文件、用户文件
性质(普通文件、特殊文件、目录文件
保护级别(只读、读写、可执行、流文件
文件数据类型(源文件、目标文件、可执行文件
文件系统模型:层次模型

2.文件的组织结构

(1) 文件的逻辑结构
记录式文件 在逻辑上被看作是一组顺序记录的集合,一种有结构的流式文件组织,并且根据记录文件长度可分为定长文件和变长文件。
流式文件 又称无结构文件,是由一组相关信息组合成的有序字符流,直接按字节计算。
(2) 文件的物理结构
文件在外部存储介质上的存放形式,也叫文件的存储结构
分类:顺序结构、链接结构、索引结构

  • 顺序结构:逻辑上连续的文件信息存放在连续编号的物理块中,只需给出文件块号和文件长度
  • 链接结构:逻辑上连续的文件分散地存放在不同的物理块中,在各物理块中,在各物理块中设立指针
  • 索引结构:系统为每个文件建立索引表,表项指出存放该文件的各个物理块号,索引表在文件属性说明项中指出。

3.文件目录管理

(1) 文件目录概念
文件名与文件在外存空间中的物理地址的对应
目录:用于管理文件

文件控制块FCB :文件的文件目录项
包括: 文件存取控制、结构、使用、管理的信息

(2) 文件目录结构
【1】 单级目录
【2】 二级目录
【3】 多层次目录

(3) 文件空闲区的组织
【1】 空闲文件项和空闲区表
【2】 空闲块链
【3】 位示图
用若干字节构成一张表,表中每一个二进制位对应一个物理块
1–物理块已分配、 0 --物理块空闲
【4】 空闲块成组链接法

1.3.5 I/O设备管理

1.输入/输出软件中的层次结构
2.中断处理过程
3.设备驱动程序
4.与设备无关的I/O软件
5.用户层的I/O软件
6.设备的分配与回收

都看到这里啦,不点个赞嘛~

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_46486131/article/details/120390441

智能推荐

前端开发之vue-grid-layout的使用和实例-程序员宅基地

文章浏览阅读1.1w次,点赞7次,收藏34次。vue-grid-layout的使用、实例、遇到的问题和解决方案_vue-grid-layout

Power Apps-上传附件控件_powerapps点击按钮上传附件-程序员宅基地

文章浏览阅读218次。然后连接一个数据源,就会在下面自动产生一个添加附件的组件。把这个控件复制粘贴到页面里,就可以单独使用来上传了。插入一个“编辑”窗体。_powerapps点击按钮上传附件

C++ 面向对象(Object-Oriented)的特征 & 构造函数& 析构函数_"object(cnofd[\"ofdrender\"])十条"-程序员宅基地

文章浏览阅读264次。(1) Abstraction (抽象)(2) Polymorphism (多态)(3) Inheritance (继承)(4) Encapsulation (封装)_"object(cnofd[\"ofdrender\"])十条"

修改node_modules源码,并保存,使用patch-package打补丁,git提交代码后,所有人可以用到修改后的_修改 node_modules-程序员宅基地

文章浏览阅读133次。删除node_modules,重新npm install看是否成功。在 package.json 文件中的 scripts 中加入。修改你的第三方库的bug等。然后目录会多出一个目录文件。_修改 node_modules

【】kali--password:su的 Authentication failure问题,&sudo passwd root输入密码时Sorry, try again._password: su: authentication failure-程序员宅基地

文章浏览阅读883次。【代码】【】kali--password:su的 Authentication failure问题,&sudo passwd root输入密码时Sorry, try again._password: su: authentication failure

整理5个优秀的微信小程序开源项目_微信小程序开源模板-程序员宅基地

文章浏览阅读1w次,点赞13次,收藏97次。整理5个优秀的微信小程序开源项目。收集了微信小程序开发过程中会使用到的资料、问题以及第三方组件库。_微信小程序开源模板

随便推点

Centos7最简搭建NFS服务器_centos7 搭建nfs server-程序员宅基地

文章浏览阅读128次。Centos7最简搭建NFS服务器_centos7 搭建nfs server

Springboot整合Mybatis-Plus使用总结(mybatis 坑补充)_mybaitis-plus ruledataobjectattributemapper' and '-程序员宅基地

文章浏览阅读1.2k次,点赞2次,收藏3次。前言mybatis在持久层框架中还是比较火的,一般项目都是基于ssm。虽然mybatis可以直接在xml中通过SQL语句操作数据库,很是灵活。但正其操作都要通过SQL语句进行,就必须写大量的xml文件,很是麻烦。mybatis-plus就很好的解决了这个问题。..._mybaitis-plus ruledataobjectattributemapper' and 'com.picc.rule.management.d

EECE 1080C / Programming for ECESummer 2022 Laboratory 4: Global Functions Practice_eece1080c-程序员宅基地

文章浏览阅读325次。EECE 1080C / Programming for ECESummer 2022Laboratory 4: Global Functions PracticePlagiarism will not be tolerated:Topics covered:function creation and call statements (emphasis on global functions)Objective:To practice program development b_eece1080c

洛谷p4777 【模板】扩展中国剩余定理-程序员宅基地

文章浏览阅读53次。被同机房早就1年前就学过的东西我现在才学,wtcl。设要求的数为\(x\)。设当前处理到第\(k\)个同余式,设\(M = LCM ^ {k - 1} _ {i - 1}\) ,前\(k - 1\)个的通解就是\(x + i * M\)。那么其实第\(k\)个来说,其实就是求一个\(y\)使得\(x + y * M ≡ a_k(mod b_k)\)转化一下就是\(y * M ...

android 退出应用没有走ondestory方法,[Android基础论]为何Activity退出之后,系统没有调用onDestroy方法?...-程序员宅基地

文章浏览阅读1.3k次。首先,问题是如何出现的?晚上复查代码,发现一个activity没有调用自己的ondestroy方法我表示非常的费解,于是我检查了下代码。发现再finish代码之后接了如下代码finish();System.exit(0);//这就是罪魁祸首为什么这样写会出现问题System.exit(0);////看一下函数的原型public static void exit (int code)//Added ..._android 手动杀死app,activity不执行ondestroy

SylixOS快问快答_select函数 导致堆栈溢出 sylixos-程序员宅基地

文章浏览阅读894次。Q: SylixOS 版权是什么形式, 是否分为<开发版税>和<运行时版税>.A: SylixOS 是开源并免费的操作系统, 支持 BSD/GPL 协议(GPL 版本暂未确定). 没有任何的运行时版税. 您可以用她来做任何 您喜欢做的项目. 也可以修改 SylixOS 的源代码, 不需要支付任何费用. 当然笔者希望您可以将使用 SylixOS 开发的项目 (不需要开源)或对 SylixOS 源码的修改及时告知笔者.需要指出: SylixOS 本身仅是笔者用来提升自己水平而开发的_select函数 导致堆栈溢出 sylixos

推荐文章

热门文章

相关标签