File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 205205* 补充:两个互为相反数的数的补码可以通过互相取反加一得到。
206206* 补充:注意带符号整数用补码表示这种表述。
207207
208- ### 2.1.4 编码方式的关系与特点
208+ #### 2.1.4 编码方式的关系与特点
209209
210210!!! tip "编码转换规律"
211211
227227
228228![ 表示方式] ( https://eclipseyue-1323281044.cos.ap-nanjing.myqcloud.com/pic/jinzhi.png )
229229
230- ### 2.1.5 C语言中的数值类型
230+ #### 2.1.5 C语言中的数值类型
231231
232232!!! info "C语言整数类型"
233233
247247
248248### 2.2 运算方式和电路
249249
250+ #### 2.2.1 算术逻辑单元(ALU)
251+
252+ !!! abstract "ALU的功能"
253+ ALU是CPU的核心部件,负责执行算术运算和逻辑运算,是数据处理的核心。
254+
255+ ##### ALU的基本信号
256+
257+ !!! info "ALU的输入输出信号"
258+
259+ ** 输入信号:**
260+ - ** A, B** :两个操作数输入
261+ - ** Op_m** :操作模式选择信号
262+ - ** Cin** :进位输入
263+
264+ ** 输出信号:**
265+ - ** F** :运算结果
266+ - ** Cout** :进位输出
267+ - ** ZF** :零标志位(结果为0时置1)
268+ - ** OF** :溢出标志位(有符号数溢出时置1)
269+ - ** SF** :符号标志位(结果为负时置1)
270+ - ** CF** :进位标志位(无符号数溢出时置1)
271+
272+ #### 2.2.2 定点数运算
273+
274+ ##### 原码运算
275+
276+ !!! note "原码加法运算规则"
277+ 原码加法需要分四种情况讨论:
278+
279+ 1. ** 正数 + 正数** :直接相加,符号位为0
280+ 2. ** 负数 + 负数** :绝对值相加,符号位为1
281+ 3. ** 正数 + 负数** :绝对值相减,结果符号看绝对值大小
282+ 4. ** 负数 + 正数** :同情况3
283+
284+ ** 原码减法** :转换为加法运算(减数变为相反数后相加)
285+
286+ ##### 补码运算
287+
288+ !!! important "补码运算的优势"
289+ 补码运算可以将减法统一为加法,简化了运算电路的设计。
290+
291+ ** 补码转换规则:**
292+
293+ !!! tip "负数补码转换方法"
294+ ** 负数原码 → 补码:** 数值位取反加1
295+
296+ ** 负数补码 → 原码:** 找到最右边的1,该位和右边保持不变,左边各位取反
297+
298+ ##### 溢出检测
299+
300+ !!! warning "有符号数溢出判断"
301+
302+ ** 溢出条件:**
303+ - ** 正 + 正 → 负** :上溢出
304+ - ** 负 + 负 → 正** :下溢出
305+
306+ ** 检测方法:**
307+
308+ 1. ** 符号位判断法:**
309+ $$ V = A_s B_s \overline{S_s} + \overline{A_s} \overline{B_s} S_s $$
310+
311+ 2. ** 进位判断法:**
312+ $$ V = C_s \oplus C_{s-1} $$
313+ 其中$C_s$是符号位进位,$C_ {s-1}$是最高数值位进位
314+
315+ 3. ** 双符号位法:**
316+ $$ V = S_{s1} \oplus S_{s2} $$
317+ 使用两个符号位,异或结果为1表示溢出
318+
319+ !!! warning "无符号数溢出判断"
320+
321+ ** 加法溢出:** 最高位产生进位(CF = 1)
322+
323+ ** 减法溢出:** 最高位产生借位(CF = 0)
324+
325+ ** 判断方法:** 检查结果是否超出 $0 \sim 2^n - 1$ 范围
326+
327+ ![ ALU结构图1] ( https://eclipseyue-1323281044.cos.ap-nanjing.myqcloud.com/pic/ALU.png )
328+
329+ ![ ALU结构图2] ( https://eclipseyue-1323281044.cos.ap-nanjing.myqcloud.com/pic/ALU2.png )
330+
331+ #### 2.2.3 乘法和除法运算
332+
250333!!! todo "待补充内容"
251- 定点数运算、移位运算、ALU设计等相关内容
334+ - 无符号数乘法原理
335+ - 有符号数乘法(Booth算法)
336+ - 除法运算原理
337+ - 移位运算的实现
252338
253339### 2.3 浮点数的表示与计算
254340
Original file line number Diff line number Diff line change 22
33!!! abstract "课程概述"
44 本笔记涵盖操作系统的核心概念,包括进程管理、内存管理、文件系统等重要内容。
5- # 1.概述
5+
6+ ## 1. 操作系统概述
7+
8+ !!! abstract "操作系统的定义"
9+ 操作系统是管理计算机硬件和软件资源的计算机程序,为用户和应用程序提供服务。
10+
11+ ### 1.1 操作系统的功能
12+
13+ !!! info "操作系统的四大基本功能"
14+
15+ ** 1. 处理机管理**
16+ - 进程控制、进程同步、进程通信
17+ - CPU调度、时间片分配
18+
19+ ** 2. 存储器管理**
20+ - 内存分配与回收、地址映射
21+ - 虚拟存储管理
22+
23+ ** 3. 设备管理**
24+ - I/O控制、设备分配
25+ - 驱动程序管理
26+
27+ ** 4. 文件管理**
28+ - 文件系统、目录管理
29+ - 文件存取控制
30+
31+ ### 1.2 操作系统的特征
32+
33+ !!! tip "操作系统的基本特征"
34+
35+ ** 并发性(Concurrency)**
36+ - 多个程序在同一时间间隔内执行
37+ - 宏观并行,微观串行
38+
39+ ** 共享性(Sharing)**
40+ - 系统资源可被多个并发程序共同使用
41+ - 互斥共享和同时共享
42+
43+ ** 虚拟性(Virtuality)**
44+ - 通过时间复用和空间复用技术
45+ - 将物理实体变为若干逻辑实体
46+
47+ ** 异步性(Asynchronism)**
48+ - 程序执行走走停停,速度不可预知
49+ - 需要同步机制保证程序正确性
50+
651# 2.进程与线程
752
853## 2.1 进程与线程
You can’t perform that action at this time.
0 commit comments