计算机组成原理(全)零基础入门到精通,收藏这篇就够了

计算机组成原理(非常详细),从零基础入门到精通,看完这一篇就够了_计算机组成原理知识点(1) 2.在高级语言编程中所定义的 unsigned/short/int/long/float/double型数据是怎么表示的?什么称为无符号整数的“溢出”?unsigned型数据就是无符号整数,不考虑符号位。直接用全部二进制位对数值进行编码得到的就是无符号数,一般都用补码表示。int型数据就是定点整数,一般用补码表示。int型数据的位数与运行平台和编译器有关,一般是32位或16位。 阅读详情
AI摘要

该博客是计算机组成原理的零基础入门教程,涵盖计算机系统结构、硬件指标、总线、存储系统、输入输出系统等内容,还介绍了数据表示和运算、指令系统、中央处理器等知识,最后提及计算机就业前景和网络安全学习资源包。

第一章 概述

计算机发展史***:

  • 第一代:电子管计算机(1946-1958)
  • 第二代:晶体管计算机(1958-1964)
  • 第三代:中小规模集成电路计算机(1964-1971)
  • 第四代:大、超大规模集成电路计算机(1971年以后)
1.1 计算机系统结构
    **第一台电子数字计算机:**1946年美国宾夕法尼亚大学的**ENIAC**

    **冯诺依曼(普林斯顿)结构**:  **以运算器为中心** 。最根本特征是采用**存储程序**原理。

原理图:

    **现代计算机**: 以存储器为中心。

原理图:

计算机系统的层次结构图:

翻译程序:

    **编译程序:** 将源程序的全部语句一次全部翻译成机器语言程序,而后在执行。

    **解释程序:** 将源程序的一条语句翻译成对应机器语言的一条语句并立即执行, 接着翻译源程序的下一条语句, 重复执行的语句也会被重新翻译。

从C语言源程序到可执行文件:

    **兼容:** 指的是软硬件兼容(时间上向后兼容) 
1.2 计算机硬件指标
    **机器字长:** CPU总线的宽度\=运算器的位数\=通用寄存器的宽度\=数据总线宽度

    **存储字长:** MDR位数

    **数据字长:** 数据总线一次能传送信息的位数

    **指令字长:** 一般为存储字长的整数倍, 若为2倍, 需要2次访存取一条指令。与IR寄存器有关

    **存储容量:** 存储单元个数(2\*MAR位数次方) x 存储字长(MDR)

    **CPU主频(时钟频率):** 1/CPU时钟周期, 单位Hz。**不会影响CPI,** 但可以加快指令执行速度

    **CPI:** 执行一条指令所需时钟周期数

    **执行一条指令耗时:** CPI x CPU时钟周期

    **CPU执行时间:** (指令条数 x CPI ) / 主频

    **IPS:** 每秒执行多少条指令, 主频/平均CPI

    **FLOPS:** 每秒执行多少浮点运算 (K > M > G > T > P > E > Z, 换算:10^3)

时钟周期图:

博客参考: 计算机组成原理(唐朔飞)第三版

第二章 总线

2.1 总线概念及性能指标
    **传输周期(总线周期****):** 一次总线操作所需时间, 包含申请阶段, 寻址阶段, 传输阶段等

    **总线时钟周期:** 即机器时钟周期

    **总线的工作频率:**  总线周期的倒数

    **总线的时钟频率:**  时钟周期的倒数

    **总线宽度:** 数据总线的根数

    **总线带宽:** 总线宽度 x 总线工作频率

    **主设备:** 发出总线请求且获得总线控制权的设备

    **从设备:** 指被主设备访问的设备

    **片内总线:** CPU内部各寄存器之间及ALU的连接。

系统总线:

    **数据总线:** **双向传输**总线, 位数与机器字长、存储字长有关。

    **地址总线:** 指明CPU访问的存储单元或I/O端口的地址, **单向传输**, 位数与存储单元有关。

    **控制总线:** 用来发出各种控制信号的传输线, **单向传输**。

    **猝发传送:** 传输一次首地址和一组数据

    **I/O总线与通信总线:** CPU和主存通过**I/O总线**与主机相连, I/O接口通过**通信总线**(电缆)与外设相连。
2.2 总线结构

1) 单总线结构

特点:

    1) 结构简单, 成本低, 易于接入新的设备。

    2) 带宽低, 负载重, 多个部件只能争用唯一的总线。

单总线图:

2) 双总线结构

特点:

    1) 将较低速的I/O设备从单总线上分离出来

    2) 需要增加通道等硬件设备 

双总线结构图:

3) 三总线结构

特点:

    1) 提高了I/O设备的性能, 提高系统吞吐量

    2) 系统工作效率较低

三总线结构图:

4) 多总线结构

多层PCI总线图:

2.3 总线通信控制
    主要解决通信双方获知传输开始和传输结束, 及通信双方协调配合。有**同步通信**、**异步通信**、**半同步通信**、**分离式通信**四种方式。

总线周期的四个阶段:

    **1) 申请分配阶段:** 可细分为**传输请求**, **总线仲裁**两个阶段

    **2) 寻址阶段:** 发出本次要访问从模块的地址及有关命令

    **3) 传输阶段:** 主从模块进行数据交换

    **4) 结束阶段:** 主模块有关信息从系统总线上撤除, 让出总线使用权

1) 同步通信

    通信双方由统一时标控制数据传送, 时标通常由CPU的总线控制部件发出。

示例图:

    **特点:** 规定明确, 统一, 模块间的配合简单一致, 但必须按最慢速度的部件来设计公共时钟, 影响总线工作效率。 

2) 异步通信

    采用**应答方式**(握手方式), 主模块发出请求信号, 从模块反馈响应。**较同步方式慢**,  根据应答方式可分以下三种类型
    **不互锁方式:** 主模块发出请求信号, 不必等接受到从模块的回答信号, 而是经过一段时间, 便撤销请求信号, 从模块收到请求信号后, 发出回答信号, 经过一段时间撤销回答信号

    **半互锁方式:** 主模块必须接受到模块回答信号再撤销请求信号, 从模块不等主模块撤销请求信号, 而是经过一段时间撤销回答信号。

    **全互锁方式:** 主模块必须等从模块回答再撤销, 从模块必须等主模块撤销请求信号, 才撤销回答信号。 

原理图:

3) 半同步通信

    通过增加一条**WAIT**线**,** 保留了**同步通信**的基本特点, 又像**异步通信**, 允许不同速度的模块和谐工作。与同步通信相比, 无需将周期设置为速度最慢的设备, 较慢的从设备可以通过WAIT信号增加等待周期。

原理图:

4) 分离式通信

    当从设备按照命令进行读数据的必要准备时, 总线属于空闲状态。为优化这一点, 将一个传输周期分解为两个子周期, 第一个子周期,主模块使用总线发送地址和命令后, 释放总线使用权; 第二个子周期由从设备准备好数据后申请使用总线使用权。
    **特点:** 各模块欲占用总线必须提出申请, 各模块准备数据过程不占用总线, 总线被占用时都在有效工作, 但这种控制比较复杂, 普通微信计算机很少采用。

第三章 存储系统

3.1 主存储器概念及性能指标

主存的技术指标:

    **存储容量:** 存储单元个数(MAR) x 存储字长(MDR位数) ( 单位: b ) 。

    **存储器带宽:** 即**数据传输率=数据宽度/存储周期,** 单位时间内存储器存取的信息量 。

    **存储时间:** 启动一次存储操作(读/写)到完成该操作所需的全部时间。

    **存取周期:** 存储器进行连续两次独立的存储器操作所需最小间隔时间, 通常存取周期大于存取时间。

存储周期图:

按存取方式分类:

    **1) 串行访问存储器: 顺序存取器(磁带), 直接存取器(磁盘、光盘)**。

    **2) 随机存储器(Random Access Memory):** 存储器的任何一个存储单元的内容都可以**随机存取**, 分**静态RAM**(触发器原理)和**动态RAM**(电容充放电原理), 存取时间与存储单元物理位置无关。

    **3) 只读存储器(Read Only Memory):** 存储的内容**只能读**, 而不能重新写入的存储器, 通常存放固定不变的程序。

存储器的层次结构图:

    **备注:** 主存和cache之间的数据调动是由**硬件**自动完成的, 主存与辅存之间的数据调动是**硬件和操作系统**共同完成的。
3.1.1 RAM与ROM
    **静态RAM:** 基于触发器工作原理存储信息, 电源掉电时, 原存信息丢失, 属**易失性存储器**。

    **动态RAM:** 基于电容存储电荷的原理来寄存信息。属**易失性存储器**。电容上的电荷一般只能维持1-2ms, 因此必须在2ms内对所有存储单元恢复一次原状态, 即刷新。同CPU采用**异步方式**交换数据, SDRAM同CPU采用**同步方式**。**行缓冲器通常用SRAM**实现。

静态RAM与动态RAM的比较:

只读存储器:

    **掩模ROM:** 不可重写

    **PROM:** 可以实现**一次性编程**的只读存储器, 依靠熔丝断和未断来区别所存信息是 "0" 或 "1" 。

    **EPROM:** 一种**可擦除可编程**只读存储器。可进行多次重写

    **Flash Memory:** 闪速存储器, 如U盘, 看进行多次快速擦除重写, 但**写比读慢**

    **SSD:** 固态硬盘, 集成度高, 功耗低, 价格贵
3.1.2 译码驱动方式

线选法:

    **特点:** 一根字选择线直接连接一个存储单元, 只适用容量不大的存储芯片

行列译码器:

    **特点:** 对比线选法, 可以减少地址线, 如32\*32根地址线可以连接1024个存储单元。

3/8 译码器:

对比图:

芯片引脚题注意事项:

    1) 数据线

    2) 地址线, DRAM采用地址复用技术, 地址线减半。

    3) 读写控制线1根 或 2根

    4) 片选线1根 或 行通选和列通选共两根(复用技术, DRAM采用)
3.1.3 动态RAM刷新
    刷新的过程实质上是将原存信息**先读出**, 再由刷新放大器形成原信息**重新写入**的过程。一般取2ms为**刷新周期**或称**再生周期**。通常有三种方式刷新: **集中刷新**, **分散刷新**, **异步刷新**。

1) 集中刷新

    集中刷新是在规定的一个刷新周期内, 对全部存储单元集中一段时间逐行进行刷新, 刷新过程必须停止读/写操作。不能进行读/写操作的这段时间称为访存 **"死区"**。

集中刷新时间分配示意图:

2) 分散刷新

    分散刷新是指对每行存储单元的刷新分散到每个存取周期内完成, 存取周期分读/写周期+刷新周期。这样不存在 **"死区"** , 但存取周期变长, 系统速度下降。

分散刷新时间分配示意图:

3) 异步刷新

    异步刷新是前两种方式的结合, 既可以缩短 **"死区"** , 又充分利用最大刷新间隔2ms的特点。

异步刷新时间分配示意图:

3.2 存储器与CPU的连接

位扩展示意图:

字扩展示意图:

字、位扩展示意图:

3.3 提高访存速度的措施
3.3.1 单体多字系统
    根据**程序和数据**在存储体内是**连续存放**的, 因此CPU也是连续访存取出信息的。通过增大存储器的带宽, 在一个周期内, 从同一地址取出多条指令, 可以提高系统速度。但遇到转移指令, 或操作数不能连续存放, 则效果不明显。

原理图:

3.3.2 多体并行系统
    采用多体模块组成的存储器。每个模块都有独立的读写控制电路等, 可并行工作。

高位交叉, 顺序编址示意图:

低位交叉编址的四体存储器:

3.4 高速缓冲存储器
    Cache全由硬件实现, 是**硬件**存储器。**TLB缺失可以由软or硬件**完成。页**面缺失由软件处理**。**TLB采用全相联方式**

Cache - 主存存储空间的基本结构图:

Cache的基本结构原理图:

3.2.1 直接映射
   主存在Cache的位置=**主存块号%Cache总快数**。每个主存块只能固定某个对应的缓存块, 使缓存的存储空间得不到充分利用。

示意图:

直接映射的地址结构:

3.2.2 全相联映射
    允许主存映射到Cache中的任何一块位置上, 标记位数增多, 命中率最好。 需要**每个Cache行都设置一个比较器**。

示意图:

3.2.3 组相联映射
    直接映射和全相联映射的一种折中。所属**分组=主存块号%分组数**。**r路需要r个比较器。**

2路组相联示意图:

组相联映射地址结构:

3.2.4 Cache的写策略

写命中时:

    **全写法****:** 写操作时数据既写入Cache又写入主存, 但增加了访存次数。

    **回写法****:** 即写操作时只把数据写入Cache而不写入主存, 当**Cache数据被替换出去时才写回主存**。可设置一个脏位, 表示被修改过才需写回主存。多次写操作只需一次写入内存, 但增加了Cache的复杂性。

写不命中时:

    **写分配法****:** 加载主存中的块到Cache中, 而后更新这个Cache块, 一般配合回写法。

    **非写分配法:** 只写入主存, 不进行调块。通常配合全写法使用 。

备注:

    **多级Cache:**  现代计算机中, 各级Cache之间使用写非分配法+全写法, Cache和主存中使用写回法+分配法。

    **分离Cache结构:** 分离**指令Cache**和**数据Cache,** 充分利用指令和数据的不同局部性来优化性能。减少指令流水线的冲突。指令Cache比数据Cache的空间局部性更好

多级Cache:

3.2.5 Cache替换算法
    **1) 随机算法:** 不需要算法位

    **2) 先进先出算法:** 不需要算法位

    **3) 近期最少使用算法(LRU): 2路时有一位LRU位, 4路时用2位LRU位。新装入**的行计数器置为0, 其余全+1; **命中时**, 命中行清零, 比其低的计数器+1; **未命中时**且无空闲行, 则淘汰最高的行。

    **4) 最不经常使用算法:(LFU):** 为每个Cache块设置一个计数器, Cache满后, 替换计数器值最小的。曾经被经常访问的主存块在未来不一定会用到, 实际运行效果不好。

计算cache大小:

第四章 输入输出系统

4.1 I/O接口 (设备控制器)
    即I/O控制器, 是主机和外设之间的交接界面, 协调主机与外设之间的数据传输。

示例图:

I/O接口的功能:

    1) 进行地址译码和设备选择

    2) 实现主机和外设通信联络控制

    3) 实现数据缓冲

    4) 信号格式的转换

    5) 传送控制命令和状态信息

I/O接口图:

    **端口:** 接口电路中可以进行读写的存储器, 若干端口加上相应的控制逻辑才可以组成接口

接口与端口区别图:

4.2 中断系统
    **中断请求:** 中断系统需对每个中断源设置中断请求标记触发器INTR, 当状态为"1"时, 表示中断源有请求。通过INTR线发出的是**可屏蔽中断**, 通过NMI线发出的是**不可屏蔽中断**。

示例图:

    **中断响应判优:** 通常通过硬件排队器实现, **响应优先级**在硬件线路上是固定的, **处理优先级**可以利用中断屏蔽技术动态调整。具体优先级如下:

    1) 不可屏蔽中断 > 内部异常 > 可屏蔽中断

    2) 内部异常中, 在关中断模式下也会被响应。硬件故障 > 软件中断

    3) DMA中断请求 > I/O设备传送的中断请求

    4) I/O 传送类中断里, 高速设备 > 低速设备

    5) 输入设备 > 输出设备, 实时设备 > 普通设备

示例图:

中断屏蔽技术 (优先级: D>A>C>B) 图:

    **中断响应:** 由硬件直接实现, 称为**中断隐指令**, 并不是一条具体的指令, 本质是硬件一系列自动操作, 操作如下:

    **1) 关中断**

    **2) 保存断点:** 如**PC, PSW的内容**。(保存到栈中), 异常的断点是当前指令的地址, 中断的断点是下一条指令的地址。

    3) **引出中断服务程序:** 识别中断源, 将对应服务程序入口地址送入程序计数器PC中。有硬件向量法和软件查询法。

硬件向量法****示意图:

    **中断向量:** 中断服务程序的入口地址

    **中断向量表:** 系统中全部中断向量集中存放到存储器的某个区域 

中断服务程序处理过程:

    1) 保护现场和屏蔽字: **保存通用寄存器和状态寄存器的内容**。(保存到堆中)

    2) 开中断(可多重中断)

    3) 执行中断服务程序

    4) 关中断(可多重中断)

    5) 恢复现场和屏蔽字

    6) 开中断

    7)中断返回: 中断服务程序的最后一条指令通常是一条中断返回指令(**特权指令**)。

示意图:

中断响应条件:

    1) 中断源有中断请求

    2) CPU允许中断, 即开中断 (异常和不可屏蔽中断不受此限制)

    3) 对于外中断, CPU在**每条指令执行阶段结束**前向接口发出中断查询信号。 (异常不受此限制)

中断与异常:

    **中断:** 来自CPU外部, 与CPU执行指令无关的事件引起的中断。分为可屏蔽中断与不可屏蔽中断。**中断不和任何指令相关联, 异常与指令相关**。

    **异常:** 分为硬件故障和程序性异常, 程序性异常也称软件中断, 可分为故障, 自陷, 终止。

            **1) 故障:** 执行结束前被检测到的异常事件

            **2) 自陷:** 预先安排的一种 "异常" 事件, **故障与自陷属于软件中断。**

            **3) 终止:** 发生了使计算机无法继续执行的硬件故障, 如控制器出错, 存储器校验错。**终止与外中断属于硬件中断**。

   **备注:** 所有异常和中断都是硬件检测发现的

广义的中断类型:

    **中断响应时间:** 一条指令执行结束。
4.3 DMA方式

DMA控制器图:

DMA传送图:

DMA接口基本组成原理图:

    **AR:** 主存地址寄存器, 用于存放主存中需要交换数据的首地址, 每交换一次数据, AR+1

    **WC:** 字计数器, 记录传送数据的总字数, 通常使用补码形式, 计数器为0时, 表示数据传送完成。

    **BR:** 数据缓存寄存器, 用于暂存每次传送的数据。

    **DAR:** 设备地址寄存器, 存放I/O设备的设备码或表示设备信息存储区的寻址信息。如磁盘数据所在的区号、盘面号和柱面号。

    **DREQ:** I/O设备向DMA接口提出申请。

    **HRQ:** 向CPU发出总线使用权的请求信号。

    **HLDA:** CPU发出的响应信号。

    **DACK:** 通知I/O设备。

DMA方式与程序中断方式的比较:

DMA方式程序中断方式
传输方式靠硬件传送由程序来传送
保护现场不需要中断现行程序需要保护现场
响应任意一个机器周期结束时(DMA请求)指令执行结束才响应
软硬件仅靠硬件控制传输数据软硬结合
优先级DMA方式 >> 中断方式
    **备注:** CPU会在每个存储周期(总线周期) 结束后检查是否有DMA请求。DMA请求与DMA中断不同。**DMA请求是外设向DMA发送**

DMA的传送方式

    **1) 停止CPU访问主存:** 由DMA接口向CPU发一个停止信号, 让出总线使用权。这种方式控制简单, 缺点是CPU基本处于不工作状态或保持原状态。

示意图:

    **2) 周期挪用:** DMA与CPU同时访问主存时, CPU总是将总线占有权让给DMA (I/O不立即访问主存可以丢失数据) , 一般为一个存取周期,  DMA的这种占有成为**周期挪用**或**周期窃取**。每挪用一个主存周期都需要申请、建立和归还总线控制权。CPU正在访存时, 存取周期结束后让出总线。

示意图:

    **3) DMA与CPU交替访问:** 适用于CPU的工作周期比主存存取周期长的情况 (如: CPU工作周期是1.2us, 主存周期小于0.6us) 。 这种情况不需要总线使用权的申请、建立和归还。

示意图:

第五章 数据的表示和运算

大小端存储方式:

边界对齐存储方式:

    **边界对齐特点:** 浪费了一些存储空间, 但提高指令和取数的速度。

    **边界不对齐特点:** 可以充分利用存储空间, 但可能需要多次访存, 影响了指令执行效率。

原理图:

5.1 计算机中的数值
    有符号数与无符号数 (即没有符号的数) 不同, 区分正负;最高位用"0"表示正, "1" 表示负号。 
    **机器数:** 把符号"数字化"的数称为机器数。

    **真值:** 带 "+" 或 "-" 符号的数称为真值。

    **原码:** 符号位"0"表示正数, "1"表示负数。数值位即真值的绝对值。 

    **反码:** 通常用来作为原码求补码, 或补码求原码的中间过渡。正数反码是其正数本身。

    **补码:** 可以将减法操作化作加法操作。正数的补码是其本身, 负数的补码可以看作对其原码**除符号位外, 每位求反, 末位加1。特别地, \[x\]补 经过符号位和数值位按位取反+1 得到\[-x\]补。**

    **移码:** 针对补码无法直接比较大小而引出的一种表示法, 即对补码加上一个![2^{n}](https://latex.youkuaiyun.com/eq?2%5E%7Bn%7D) , 即将最高位符号位取反。 

    **除0:** 故障

    **长字节转短字节:** 截断高位

    **短字节转长字节:** 符号扩展 

各类机器数真值范围图:

移码与补码对照图:

备注:

    1) 十进制小数不一定都能用二进制表示。

    2) 原码, 反码的表示在数轴上对称, 存在+0和-0;而补码, 移码的0是唯一的。

    3) 移码和补码的符号位相反, 数值位相同

    4) 负数的补码中, 数值部分越大, 真值越大(更靠近0), 多表示一个最小负数

    5) 移码保持数据原有大小顺序, 移码大则真值大

    6) 补码符号位可以参与运算
5.2 定点数的运算
在计算机中, 小数点不用专门的器件表示, 而是按约定的方式标出, 即**定点表示法**和**浮点表示法**。
    **定点表示法:** 小数点位于数符和第一数值之间时, 机器内的数为**纯小数**; 当小数点位于数值位之后时, 机器内的数为**纯整数**。

定点数示意图:

5.2.1 移位运算
    通过移位运算与加减法运算可实现乘除运算。

算术移位规则:

    **逻辑移位:** 左移, 右移都补0 
5.2.2 加减法运算
    现代计算机中都采用补码做加减法运算。符号位一起参与运算。

基本公式:

溢出判断:

方法一示意图:

     **方法二:** 采用一位符号位, 根据**数据位进位C1与符号位进Cs位异或**判断, 不同为溢出 

示意图:

    **方法三: 采用双**符号位, 符号位不同为溢出。(模4补码, 更容易检查加减法溢出问题)
5.2.3 乘法运算
    **溢出判断:** 无符号n位 x n位, 仅当前n位为0不溢出, 有符号时, 前n+1位为全1或全0不溢出。

原码乘法步骤:

    **1) 符号位与数值位分开求, 符号位采用异或**

    1) 由乘数末位值确定被乘数是否与原部分积相加, 然后右移一位, 形成新的部分积, 同时乘数也右移一位, 空出最高位放部分积的最低位。**重复n次**

示例图:

补码乘法示例图: 符号位参与运算, 进行n+1累加, n次右移

5.2.4 除法运算
    **恢复余数法**: 相减后, 当余数为负时, 需要加上除数, 将其恢复成原来的余数。

原码恢复余数法示例图:

    **加减交替法:** 可以认为是恢复余数法的一种改进算法。设余数为R, 除数为y, 则:

            1) R>0时, 上商"1", 再2R-y;

            2) R<0时, 上商"0", 先R+y, 再左移一位-y, 即2(R+y)-y=2R+y。

            3) 商符由两个操作数的符号异或而得, 第n+1步余数为负时, 需要加上|y|得到正确余数

原码加减交替法示意图:

补码除法原理图:

原码除法与补码除法对比图:

5.3 浮点数的运算
    **浮点表示:** 小数点位置可以浮动的数。位数相同时,表示数值的范围比定点数大。将尾数最高位为1的浮点数称为规格化数, 此时精度最高。尾数是小数, 其位数n反映了浮点数的精度。

浮点数形式示意图:

规格化:

    **原码表示的尾数规格化:** 尾数最高位数值必须是1

    **补码表示的尾数规格化:** 尾数最高数值位必须和尾数符号位相反

IEEE 754 标准:

最大最小值的绝对值:

全0全1阶码情况:

浮点数加减运算步骤:

    1) 对阶: 小阶向大阶看齐

    2) 尾数加减

    3) 规格化

    4) 舍入 (**最简单**的是处理方法是 **截断法**)

    5) 判断溢出: 阶码溢出才算溢出

C语言中的类型转化:

    **int 转化 float :** 可能会精度缺失

    **float转化int:** 可能会溢出或精度缺失
5.4 算术逻辑单元

逻辑门电路图:

一位全加器:

并行进位加法器:

带标志的加法器:

    **OF:** 有符号数的加减运算是否发生了溢出, OF=1时, 说明有溢出。(次高进位异或最高位的进位) 

    **SF:** 有符号数加减运算结果的正负性。SF=0时表示运算结果为正 (最高位生成)

    **ZF:** 加减运算结果是否为0, ZF=1表示运算结果为0 

    **CF:** 无符号数加减法运算是否发生了溢出, CF=1时说明发生了溢出 (Sub异或Cout最高位产生的进位)

多路选择器: 有k个输入, 控制信号的位数 m\geq \left \lceil log_{2}^{k} \right \rceil bit

三态门图:

ALU框图:

补码加减运算部件: Sub控制端为1时表示做减法, 实现 X+Y(取反)+1 = [X]补+[-Y]补

第六章 指令系统

6.1 指令概述
6.1.1指令集体系结构
    机器语言由一条条语句构成, 习惯把每一条机器语言的语句称为**机器指令**, 将全部的机器指令的集合称为机器的**指令系统**。
    **指令集体系结构(ISA):** 包括**指令格式,** **数据类型及格式**, **操作数的存放方式**, **程序可访问的寄存器个数**, 位数和编号, **存储空间大小**和**编址方式**, **寻址方式**, 指令执行过程的控制方式等。 

    **80-20规律:** 典型程序中80%的语句仅仅使用处理机中的20%的指令, 这些指令都属于简单指令。  
    **RISC:** 精简指令系统计算机 (Reduced Instruction Set Computer), 指令按边界对齐。

    **CISC:** 复杂指令系统计算机 (Complex Instruction Set Computer), 大多能实现软件兼容, 即高档机包含了低档机的全部指令。

RISC与CISC比较图:

6.1.2 指令格式

指令的一般格式图:

按地址码数目分类:

    **四地址指令:**该指令完成(A1)OP(A2) -->A3的操作, 4个地址各占6位, 直接寻址范围为![2^{6}](https://latex.youkuaiyun.com/eq?2%5E%7B6%7D)\=64。共需访问4次存储器(取指令一次, 取两个操作数两次, 存放结果一次)。

    **三地址指令:** 该指令完成(A1)OP(A2)-->A3的操作, 程序中大多数指令是按顺序执行的, 后续指令的地址隐含在程序计数器PC中。3个地址字段各占8位, 寻址范围为![2^{8}](https://latex.youkuaiyun.com/eq?2%5E%7B8%7D)\=256, 需要访问4次存储器。

    **二地址指令:** 该指令完成(A1)OP(A2)-->A1 的操作, A1即代表原操作数, 也代表存放本次运算的结果地址。共需要4次访问存储器; 若为(A1)OP(A2)-->ACC, 只需要两次访存。直接寻址范围为![2^{12}](https://latex.youkuaiyun.com/eq?2%5E%7B12%7D)\=4K。

    **一地址指令**: 可完成(ACC)OP(A1)-->ACC的操作, 只需两次访存, 直接寻址范围为![2^{24}](https://latex.youkuaiyun.com/eq?2%5E%7B24%7D)\=16M。

    **零地址指令:** 无地址码部分, 如空操作, 停机, 中断返回等指令, 或是操作数的地址隐含在堆栈指针SP中。

示意图:

按操作码长度分类:

    **1) 定长操作码:** 适用于字长较长的计算机以及RISC, 指令译码时间短。

    **2) 不定长操作码**: 在字长较短的微型计算机中广泛使用, 会增加指令译码和分析的难度。

不定长操作码图:

操作类型:

    **1) 数据传送:** 寄存器与存储单元, 存储单元与存储单元,, 寄存器与存储单元,之间的传送。

    **2) 算术逻辑操作:** 算术运算(加,减,乘,除等)与逻辑运算(与,或,非,异或等)。

    **3) 移位:** 左移, 右移。

    **4) 转移:** 无条件转移, 条件转移, 调用与返回, 陷阱与陷阱指令。

    **5) 输入输出:**与I/O设备交互。

    **6) 其他:** 停机指令, 开中断指令等。
6.2 指令的寻址方式
6.2.1 指令寻址
    分为顺序寻址与跳跃寻址, **顺序寻址**可以通过**PC**自动加**"1个指令字长",** 形成下一条指令的地址; **跳跃寻址**通过转移类指令实现。

指令寻址方式示意图:

6.2.2 数据寻址

数据寻址方式种类多, 在指令中需设一字段表明是哪一种寻址方式。

一地址指令的格式图:

    **1) 立即寻址**: 操作数本身设在指令字内, 即形式地址就是数据本身, 数据采用补码形式存放。

    **2) 直接寻址:** 指令字中的形式地址A就是操作数的真实地址。

    **3) 隐含寻址:** 不明显给出操作数的地址, 操作数的地址隐含在操作码或某个寄存器中。

    **4) 间接寻址:** 形式地址是操作数的有效地址所在的存储单元地址。与直接寻址相比, 扩大了操作数的寻址范围, 但**多次间接寻址时, 可用存储字首位来标记**是否还需要继续访存寻址。

    **5) 寄存器寻址:** 地址码字段直接给出了寄存器的编号, 无需访存, 减少执行时间。

    **6) 寄存器间接寻址:** 比间接寻址少访存一次。

    **7) 基址寻址:** 需要设有寄存器BR, 可以扩大操作数的寻址范围。**面向操作系统**, 有**利于多道程序设计, 便于编制浮动程序**, 可由用户指定具体寄存器为基址寄存器。

    **8) 变址寻址:** 与基址寻址极为相似, **面向用户**, 有效地址等于指令字的形式地址+变址寄存器IX, 处理数组问题时, 只需改变寄存器IX内容, 无需多条指令, **适合编制循环程序**。

    **9) 相对寻址:** 有效地址是程序计数器PC+形式地址。 位移量可正可负, 由补码表示, **便于程序浮动, 广泛用于转移指令**。

    **直接转移指令:** 转移目标地址直接放在指令中

    **间接转移指令:** 转移目标地址存放在寄存器或内存单元中 

    **相对转移指令:** 如上图所示

    **10) 堆栈寻址:** 要求计算机中设有堆栈, 操作数只能从栈顶中存或取, 堆栈寻址可视为一种隐含寻址, 操作数的地址总是被隐含在**SP指针**中。**硬堆栈(寄存器组)**不访存, **软堆栈**访存1次。

对比图:

6.3 程序的机器级代码表示

x86架构CPU中的寄存器图:

AT&T格式与Inter格式对比图:

算术运算指令:

逻辑运算指令:

选择语句的机器级表示:

循环语句的机器级表示:

loop指令实现循环:

函数调用的机器级表示:

函数调用时:

1) 如图情况, 保存call下第一条mov的地址

2) 将ebp的内容入栈(+1个单位再入栈) 并 使ebp指向栈顶esp

函数返回时:

    **1) mov将栈顶指针esp指向栈底指针ebp**

    **2) pop将esp(此时esp=ebp)中的内容放入esp中, esp减"一个单位"**

函数的传参与函数的局部变量:

函数的返回值:

备注:

    **push xxx :** 先让esp减4, 再将xxx压入栈中

    **pop xxx:** 将栈顶元素出栈写入xxx中, 在让esp加4 

第七章 中央处理器

7.1 CPU的功能及结构
    **汇编程序员可见的寄存器:** PSW、通用寄存器组(含基址/变址)、PC、ACC、SR(移位寄存器)

CPU基本结构图:

7.2.1 通路数据
    **1) CPU内部单总线方式:** ALU需要配合暂存器使用。单周期处理器不能采用单总线方式

示意图:

    **2) CPU内部多总线方式:** 同时在多个总线上传送不同的数据

    **3) 专用数据通路方式:** 性能较高, 但硬件量大

    **组合逻辑元件:**  输出仅取决于当前的输入, 组合电路不含存储信号的记忆单元, 如三八译码器, 多路选择器, 三态门。

    **时序逻辑元件:** 时序电路包含存储信号的记忆单元, 如各类寄存器和存储器, 如PC, PSW等
7.2.2 多处理器
    **单指令流单数据流(SISD)结构:** 一个处理器和一个存储器, 一段时间内仅执行一条指令, 可采用指令流水线方式, 多模块交叉方式组织存储器

示意图:

    **单指令流多数据流(SIMD)结构:** 通常由一个指令控制部件, **多个处理单元**组成, 一个指令流同时对多个数据进行处理, 称为数据级并行技术, 使用for循环**最有效**, case或switch语句**效率最低**。向量处理器是SIMD的变体。

示意图:

向量处理器:

    **多指令流单数据流(MISD)结构:** 实际不存在

    **多指令流多数据流(MIMD)结构:** 指同时执行多条指令分别处理多个不同数据, 分为**多计算机系统**和共享式存储**多处理器系统(SMP)**。

多计算机系统示意图:

多核处理器示意图:

硬件多线程的三种实现方式:

    **多核处理器:** 将多个处理单元集(多个执行核心)成到单个CPU, 每个处理单元称为一个核。属于共享内存的对称多处理器。

    **对称多处理器(SMP):** 多个处理器共享单一的地址空间。分为UMA和NUMA两种类型。一般采用偶数路CPU, 也称共享内存多处理器。

    **同时多线程SMT:** 在一个单处理器或单核中设置了两套线程状态部件 

    **统一存储访问UMA多处理器:** 处理器对所有存储单元的访问时间是大致相同的, 需要解决Cache一致性问题

    **非统一存储访问NUMA多处理器:** 主存被分割给了不同处理器
7.2 指令周期
    CPU从主存中每取出并执行一条指令所需的全部时间。 **指令周期的不同阶段区分**是指令还是数据。
    **机器周期:** 即CPU周期, 一个机器周期包含若干时钟周期, 一般为**访存时间**

    **时钟周期:** 也称节拍, T周期, CPU时钟周期, CPU操作的基本单位

    **存取周期:** 存储器进行连续两次独立的存储器操作所需最小间隔时间

各周期关系示意图:

不同指令的指令周期:

指令流程图:

取指周期数据流:

间址周期数据流:

中断周期数据流:

指令执行方案:

    **单指令周期:** 对所有指令选用相同的执行时间来完成, 指令之间串行执行

    **多指令周期:** 对不同类型指令选用不同个数的时钟周期, 指令之间串行执行

    **流水线方案**
7.3 控制器

CU的输入信号来源图:

7.3.1 硬布线控制器 (组合逻辑设计)
    **略**
7.3.2 微程序控制器
    将一条**机器指令**编写成一个**微程序**, 每一个微程序包含若干条**微指令**, 每**一条微指令**对应一个或**几个微操作命令**。然后把这些微程序存到一个控制存储器中。

微指令格式:

    **水平型微指令:** 一条微指令能定义多个可并行的微命令; 微程序短, 执行速度快; 缺点是微指令长, 造成控存容量极大。

    **垂直型微指令:** 一条微指令只能定义一个微命令; 微指令短, 简单, 规整, 便于编写微程序;  缺点是微程序长, 执行速度慢, 效率低。

    **混合型微指令:** 在垂直型的基础上增加一些不太复杂的并行操作。

微指令格式图:

    **微周期:** 执行一条微指令所需的时间, 通常为一个时钟周期

微程序控制单元的基本框图:

    **CMDR:** 微指令寄存器, 又称uIR, 存放微指令

    **CMAR:** 微地址寄存器, 又称uPC, 存放微指令地址

    **CM:** 控制存储器, 用ROM实现

工作过程:

    **1) 取指令**: 取指微程序入口地址一般为CM的0号单元, 为公共操作, 机器开始运行时, 自动将取指微程序入口地址送入CMAR。

    **2) 译指:** 由机器指令的操作码字段通过微地址形成部件产生该机器指令所对应的微程序入口地址, 并送入CMAR。

    3) 从CM中逐条取出对应的微指令并**执行**

    4) 执行完对应一条机器指令的一个微程序后, 回到取指微程序的入口地址, 重复 (1)。

微指令的编码方式:

    **1) 直接编码**: 每一位代表一个微操作命令。

直接编码方式图:

    **2) 字段直接编码方式:** 将微指令的操作控制字段分成若干段, 互斥的微操作命令存放在一个字段内(每个小段**要考虑留出一个状态表示不操作**)。执行速度稍微减慢。

字段直接编码图:

    **3) 字段间接编码**: 又称隐式编码, 可进一步缩短微指令字长, 但削弱了微指令并行控制能力, 故通常作为字段直接编码方式的一种辅助手段。

示意图:

微指令序列地址的形成

    1) 直接由微指令的**下地址字段**指出 (**断定法**)

    2) 根据机器指令的**操作码**形成

    3) **增量计数器**: 即(CMAR) --> CMAR

    4) 根据各种**标志**决定微指令分支转移的地址

    5) 由硬件产生**微程序入口地址**: 响应中断时

    6) 通过测试网络

后续微指令地址形成方式的原理图:

微程序控制单元的设计步骤:

    **1) 写出对应机器指令的微操作命令及节拍安排**

如取指周期的微操作命令及节拍安排示意图:

    **2) 确定微指令格式:** 确定微指令的**编码方式**, 以确定微指令的操作**控制字段位数**, 根据CM中存的**微指令总数**, 确定微指令的**顺序控制字段的位数**, 最后可确定微指令字长。

    **3) 编写微指令码点:** 根据操作字段每一位代表的微操作命令, 编写每一条微指令的码点。
7.4 指令流水线
    **时间并行:** 流水线技术, 将一个任务分解成几个不同的子阶段, 每个子阶段在不同功能部件上并行。

    **空间并行:** 硬件资源的重复, 如超标量处理机。

流水线对指令集的要求:

    1) 指令长度尽量一致

    2) **采用LOAD/STORE访存**, 其他指令不能访存

    3) 数据和指令在存储器中**按边界对齐**存放

指令的串行执行:

指令的六级流水:

五段式指令流水线图:

    **备注:** 无条件转移指令修改PC值发生在五段流水线的**第三**阶段。条件转移指令修改PC值发生在五段流水线的**第四**阶段。
7.4.1流水线性能指标
    **1) 吞吐率:** 指单位时间内流水线所完成的任务数量, 或是输出结果的数量。

理想的流水线时空图:

    **2) 加速比:** 同样的任务量, 不使用流水线与使用流水线所用的时间之比

理想状态下的流水线图:

     **3) 效率:** 流水线的设备利用率, 完成n个任务占用的时空区有效面积与总面积之比

示意图:

7.4.2 影响流水线性能的因素

1) 结构冒险: 不同指令争用同一功能部件产生资源冲突, 如访存冲突 (互斥)。

    **解决方法:**

            1) 后一相关暂停一周期;

            2) 资源重复配置

2) 数据冒险: 读写先后顺序不同, 影响计算结果 (同步)。

    写后读(RAW): 读在写之前, 发生数据冒险。

    **解决方法:**

            1) 通过硬件或软件来延后冲突的相关指令的执行; 一般延后到M(访存段)之后

            2) **数据旁路技术:** 直接把前一条指令的ALU计算结果作为自己的输入数据(**EX**阶段)

            3) **编译优化:** 调整指令顺序

3) 控制冒险: 由转移指令引起, 使流水线的连续流动被破坏 。

    **解决方法:**

            **1) 静态预测:** 总是预测条件不满足

            **2) 动态预测:** 根据程序执行的历史情况, 进行动态预测调整, 准确率较高

            3) 预取转移成功和不成功两个控制流方向的目标指令

            4) 加快和提前形成条件码
7.4.3 流水线中的多发技术
    **超标量技术**: 指在每个时钟周期内可**同时并发**多条独立指令, 即以并行操作方式将两条或两条以上指令编译执行。**需要配置多个功能部件**。CPI<1

超标量流水图:

    **超流水线技术:**  将一些流水寄存器插入流水线段中, 好比流水线再分段。**通过提高主频方式, CPI=1。**

超流水线图:

    **超长指令字技术**: 由编译程序挖掘指令间潜在的并行性, 将多条能并行操作的指令组成一条具有多个操作码字段的超长指令字。**需要多个处理部件**

超长指令字图:

7.5 控制方式
    控制不同微操作序列所采用的时序控制方式称为 **CU** 的控制方式。

7.5.1 同步控制方式

     任何一条指令或微操作的执行都是事先确定的, 并且受统一基准时标的时序信号所控制的方式。
    **1) 采用定长的机器周期:** 一律以最长的微操作序列和最繁的微操作作为标准, 会造成时间上的浪费。

    **2) 采用不定长的机器周期:** 把大多数微操作安排在一个较短的机器周期内完成, 对于复杂微操作, 采用延长机器周期或增加节拍的办法来解决 

延长机器周期示意图:

    **3) 采用中央控制和局部控制相结合的方法:** 将机器的大部分指令安排在统一的, 较短的机器周期内完成, 称为中央控制, 将少数操作复杂的指令中的某些操作 (如: 乘除法和浮点运算) 采用局部控制方式来完成。

示意图:

7.5.2 异步控制方式

    不存在基准时标信号, 没有固定的周期节拍和严格的时钟同步, 由专门的应答线路控制, 即执行部件完成操作后发回 "回答" 信号,再开始新的微操作, 需要采用各种应答电路, 较同步控制方式复杂。

7.5.3 联合控制方式

    同步控制和异步控制相结合, 对各种不同指令的微操作实行大部分统一, 小部分区别对待的办法。

7.5.4 人工控制方式

    为了调机和软件开发的需要, 在机器面板或内部设置一些开关或按键, 来达到人工控制的目的。

注: 以上部分图片来源王道计算机组成原理教材

计算机就业前景

网络安全行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…
在这里插入图片描述

黑客/网络安全学习包

资料目录

  1. 成长路线图&学习规划

  2. 配套视频教程

  3. SRC&黑客文籍

  4. 护网行动资料

  5. 黑客必读书单

  6. 面试题合集

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

1.成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

2.视频教程

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

3.SRC&黑客文籍

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

黑客资料由于是敏感资源,这里不能直接展示哦!

4.护网行动资料

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

5.黑客必读书单

**

**

6.面试题合集

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。

更多内容为防止和谐,可以扫描获取~

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

python入门教程(非常详细),从零基础入门到精通,看完这一篇就够了 本文罗列了了python零基础入门到精通的详细教程,内容均以知识目录的形式展开。 01.python由来与发展介绍 02.项目开发流程01.markdown基本语法 02.Typora简介与安装 03.Windows上gitee+Typora设置图床 04.macOS上gitee+Typora设置图床01.计算机组成原理01.编程语言介绍 02.python是解释型的强类型动态语言01.python的两层意思 02.Windows安装Python解释器 03.linux安装Python解释器 04.pip软 阅读详情

相关推荐

文字及图解详细介绍计算机组成原理

计算机组成原理:文字及图解详细介绍计算机组成原理。

计算机组成原理(第1章---计算机系统概述)

计算机系统层次结构 计算机系统的基本组成 计算机软硬件的基本组成和关系 计算机系统的工作原理 计算机性能指标

杜小白Blog 1136

计算机组成原理各章节重点总结

计算机组成原理各章节重点总结,确保考试顺利

计算机组成原理目录

计算机组成原理目录

FuckerGod的博客 3022

pcle接口详解&用途说明

它原来的名称为“3GIO”,由英特尔在2001年提出。pcel x16插槽 用途用于显卡、RAID阵列卡,向下兼容PCIE x1/x4/x8/x16。(PCIE x16插槽长89mm,有164根针脚,靠主板外侧端有一卡口,将16x分为前后两组,短插槽有22根针脚,主要用于供电,长插槽142根,主要用于数据传输,具有16通道所带来的高带宽)PCI-E x8插槽插槽用途:全长56mm,有98根针脚,与PCI-E x16比较,主要是数据针脚减少至76根,短的供电针脚仍然是22针脚。

qq_43289307的博客 1万+

飞腾Ubantu22.04.3安装OpenNebula测试

因OpenneBula官方镜像源只有AMD架构的镜像包不存在ARM的镜像包,借此用源码编译进行测试。

坚持就是胜利的博客 1009

计算机组成原理(全)

计算机组成原理, 系统总线, 存储系统, ROM, RAM, 存储器, Cache, 组相连映射, DMA, 原码, 补码, 指令系统, 指令寻址, 机器指令, 中央处理器, 指令周期, 控制器, 指令流水线

s6664的博客 3万+

快速上手CH340N电路设计(CH340N USB转串口模块 USB Type-C接口 CH340系列芯片讲解)

一、上模块 二、功能分析 l 芯片:CH340N l 输入接口:USB、TYPE-C l 输出接口:TTL(5V\3.3V\GND\TX\RX) l 指示灯:电源、TX、RX 三、CH340x芯片 l CH340 是一个 USB 总线的转接芯片,实现 USB 转串口 l 全速 USB 设备接口,兼容 USB V2.0 l 硬件全双工串口,内置收发缓冲区,支持通讯波特率 50bps~2Mbps l 支持常用的 MODEM 联络信号 RTS、DTR、DCD、RI、DS...

东小东博客 5万+

计算机组成原理-第一章

计算机组成原理第一章概述一、计算机系统概述1. 定义2.分类3.计算机系统的抽象层次二、计算机系统的组成1.计算机系统的硬件组成1.1冯.诺依曼计算机(重点)1.2现代计算机结构1.3哈佛结构1.4各个组成部件的功能2.计算机系统的工作过程1.基本的计算机系统模型2.工作过程3.指令执行过程示例三、计算机硬件的性能指标1.字长2.存储容量3.运算速度4.计算机性能评测方法四、计算机的发展 计算机组成原理的相关笔记是我根据老师上课所讲,以及课后查找资料所写 一、计算机系统概述 1. 定义 计算机是由硬件和软件

梦想也许遥不可及,但重要的是追梦的过程,用博客记录自己的成长,记录自己一步一步向上攀登的印记 2560

2021-3-20组会 无监督训练下的音频分离 (音源分离) Unsupervised Audio Source Separation Using Generative Priors

0. 说明 一片具体论文的综述

ruclion的专栏 1349

酒店前台pms管理系统

对于酒店经营者来说,选择一款优秀的管理系统,是提升运营效率、优化客人体验的关键。PMS酒店管理系统凭借其强大的房态管理、实时数据监控、OTA直联、无人值守等功能,已经成为许多酒店提升管理水平的得力助手。无论是大中型酒店,还是小型民宿,PMS系统都能根据不同需求提供量身定制的解决方案,帮助酒店实现精细化管理、提高运营效率。如果你也在为酒店管理中的繁琐琐事而困扰,不妨尝试一下PMS酒店管理系统,感受科技带来的便利与高效,让你的酒店运营更上一层楼!

2409_89897808的博客 2482

《计算机组成原理》第一章:计算机系统概论【知识点总结】

1.计算机系统简介 1.1 计算机的软硬件概念 计算机系统就是由软件和硬件组成的,其中连接的纽带就是操作系统OS。 硬件: 运算器ALU 控制器CU 存储器 输入设备 输出设备 软件: 系统软件 应用软件 1.2 2.计算机的基本组成 3.计算机硬件的主要技术指标 ...

东瓜blog 4347

STM32F103模拟SSI时序解析:实现高精度绝对式编码器位置读取

本文详细解析了如何在STM32F103微控制器上通过软件模拟SSI协议时序,实现高精度绝对式编码器的位置读取。文章从项目驱动出发,深入剖析了SSI通信原理、硬件电平转换连接、核心软件模拟代码实现及关键时序参数调试方法,并提供了使用示波器进行波形对齐与优化的实战指南,为成本敏感型工业控制与机器人项目提供了高性价比的解决方案。

weixin_29196315的博客 141

计算机组成原理推荐书籍,零基础入门到精通,收藏这篇就够了

由此可见,网络安全行业作为新兴赛道,尚在快速发展阶段,从业人员薪资水平提升较快,也显示出网络安全行业相对更重视人才留存。而且网络安全是一个新兴行业,人才需求量远大于供给,因此在薪资福利上具有很大的优势,但对于初学者而言,很多人依然担心前景问题,那么网络安全就业前景如何?因此,在职业发展上,网络安全专业除了就业岗位众多之外,由于专业技术性较强,在工作单位将处于技术核心骨干地位,职业发展空间很大。从目前市场情况来讲,网络安全的就业前景是非常不错的,2022年的统计数据,网络安全专业的缺口已经增长到140万人。

Javachichi的博客 1166

PostgreSQL 在 Windows操作系统 无管理员权限情况下的部署详解

但是因为使用默认5432端口,我们修改了端口,所以连接报错,需要修改local连接信息,右键-属性修改相应信息即可,方式同上。(也别太任意吧,个人习惯工具放在不包含中文及特殊字符的目录,另外目录名尽量简短,避免不必要的麻烦)图中我解压到了自己的tools\postgresql18。1)如果想修改默认的5432端口,找到初始化目录中的(上面的tools\postgresql18\。此处替换成你的实际目录\tools\postgresql18\pgsql\pgAdmin 4\runtime。

dong_zhi2328的博客 1116

第6篇:ESP32连接无源喇叭播放音乐《涛声依旧》

相邻两个音之间的倍数是2^(1/12),约等于1.0594630943592952645618252949463)。这样一来,高八度的do频率是低八度do的两倍。我们把频率440赫兹作为中央C ,C调的歌就是把频率440赫兹当作do,乐谱中写作:1=C。一个八度分成12份,八个八度的十二平均音率对应的频率如下(从33Hz到7902Hz)。相邻的两个音之间的差一个半音,12345671之间的间隔分别是“全全半全全全半”。D调的歌就是把从440后面第二个音494赫兹当作do,乐谱中写作1=D。

Txwtech 1421

计算机组成原理知识点梳理,零基础入门到精通,收藏这篇就够了

1、冯诺伊曼原理的基本思想及存储程序的概念2、中央处理器、主机、外设的概念3、计算机的硬件组成4、总线的特点和总线的分类(计算机的三总线)5、计算机系统的组成(硬件系统+软件系统)6、硬件和软件的关系(对程序设计人员来说硬件和软件在逻辑上是等价的)7、固件的概念8、 实际机器和虚拟机器9、 计算的的主要性能指标有哪些(注意机器字长的概念)1、掌握各种数制之间的转换(二、八、十六、十进制)2、会求补码、原码(给定机器字长,位数不够时记得补足位数;注意 0 的补码和原码)

Libra1313的博客 2268

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

计算机组成原理(非常详细)零基础入门到精通,收藏这篇就够了

由此可见,网络安全行业作为新兴赛道,尚在快速发展阶段,从业人员薪资水平提升较快,也显示出网络安全行业相对更重视人才留存。而且网络安全是一个新兴行业,人才需求量远大于供给,因此在薪资福利上具有很大的优势,但对于初学者而言,很多人依然担心前景问题,那么网络安全就业前景如何?因此,在职业发展上,网络安全专业除了就业岗位众多之外,由于专业技术性较强,在工作单位将处于技术核心骨干地位,职业发展空间很大。从目前市场情况来讲,网络安全的就业前景是非常不错的,2022年的统计数据,网络安全专业的缺口已经增长到140万人。

leah126的博客 3309

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

计算机组成原理知识点汇总(非常详细)零基础入门到精通,收藏这篇就够了

1946年世界上第一台电子数字计算机(Electronic Numerical Integrator And Computer, ENIAC)1)。特点:逻辑元件采用电子管;使用机器语言进行编程;主存储器用延迟线或磁鼓存储信息,容量极小;体积庞大,成本高;运算速度较低,一般只有几千次到几万次每秒。2)。特点:逻辑元件采用晶体管;运算速度提高到几万次到几十万次每秒;主存储器使用磁芯存储器;计算机软件也得到了发展,开始出现了高级语言及其编译程序,有了操作系统雏形。3)。特点:逻辑元件采用中小规模集成电路。

A1_3_9_7的博客 1582

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

计算机组成原理:最详细笔记,零基础入门到精通,收藏这篇就够了

恭喜各位,我把本文内容制作成了md格式和word格式,方便考研学子使用。如需下载请点击md格式下载或word格式下载个人觉得:《计算机组成原理》这门课,应该设置为大学公共必修课(起码理工科)!学这门课之前,小编在学习ARM架构,结果越看越迷糊,就果断转入这门课程的学习!《王道计算机组成原理》学习笔记总目录+思维导图;2019 王道考研 计算机组成原理;

Javachichi的博客 1199

计算机学习路线,零基础入门到精通,收藏这篇就够了

众所周知,网络安全与我们息息相关,无论是企业还是个人都应该重视网络安全。而且网络安全是一个新兴行业,人才需求量远大于供给,因此在薪资福利上具有很大的优势,但对于初学者而言,很多人依然担心前景问题,那么网络安全就业前景如何?本文为大家介绍一下。

Libra1313的博客 1594

DDos攻击使用指南,零基础入门到精通,收藏这篇就够了

sudo -i2.输入进入DDos目录有的人在这里可能会遇到无法进入的问题首先我们检查文字大小写有没有问题如果无误那应该是没有配置好文件只需输入即可clone,一般能解决掉问题当然问题有问多种,我在进行实操的时候它却提示无法克隆我在网上找了许多解决方法,最终成功的是将“https”更换为“git”,也就是说这样便可以完成配置。3.继续输入chmod +x ddos-attack.py设置权限这条命令输入后并没有提示,所以大家确保输入正确就可以了。

dzqxwzoe的博客 1199

计算机组成原理知识点汇总(非常详细)零基础入门到精通,收藏这篇就够了!

计算机发展经历了四代革新:从1946年第一台电子管计算机ENIAC开始,历经晶体管、集成电路到超大规模集成电路时代。冯·诺伊曼结构奠定了现代计算机基础,包含运算器、控制器、存储器等核心部件。摩尔定律揭示了硬件性能的指数级增长。计算机系统由硬件(CPU、存储器等)和软件(系统软件、应用软件)组成,支持机器语言、汇编语言和高级语言三级编程体系。存储系统采用分层结构平衡速度与成本,通道技术提升了I/O并行能力。现代计算机通过指令驱动实现自动化运算,硬件与软件协同完成复杂任务。

Spontaneous_0的博客 3047

25年挖漏洞必备工具,零基础入门到精通,收藏这篇就够

本文推荐了4款实用的网络安全扩展工具:PwnFox(Firefox/Burp扩展,支持Burp套件联动测试)、多合一红队扩展(集成XSS/SQLi等渗透测试工具)、Hunter(联系人信息搜集工具)和Temp Mail(临时邮箱服务)。同时概述了漏洞挖掘所需的基础知识体系,包括计算机基础、编程语言、漏洞类型分析、工具使用等,并强调SRC漏洞挖掘需注重信息收集、逻辑漏洞分析及合规性。文末提供了网络安全学习路线和资源包,涵盖渗透测试、操作系统、网络协议等核心技能,适合零基础人员系统化学习,学成后可从事安全服务、

chengxuyuanyy的博客 1289
上一篇: 计算机网络基础(理论知识全)零基础入门到精通,收藏这篇就够了
下一篇: 软件测试工具大全,零基础入门到精通,收藏这篇就够了
程序员_大白
博客等级 码龄5年 1万+粉丝 4001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值