408筆記完整考點篇
資料結構
時間復雜度
線性表:
具有隨機存盤特性,查找時間復雜度為O(1)
單鏈表-尾插法??
堆疊及其應用
根據限定條件判斷合法性;最小容量;運算式求值*;中綴運算式轉化為后綴運算式程序*
應用:數制轉換、括號匹配、運算式求值(中綴運算式、后綴運算式)、遞回呼叫等
回圈佇列(兩種情況
輸入/輸出受限的雙端佇列??
特殊矩陣的壓縮存盤*
樹
樹的高度:log2(n)+1
- 節點數等于所有節點度加一 >> 節點為n,度數和為n-1;
- 度為m的樹中,第i層之多有m^(i-1)個節點
- 高度為h的m叉樹至多有(m^h-1)(m-1)個節點
- 具有n個節點的m叉樹最小高度為[logm( n(m-1)+1 )]上取整
二叉樹特性
- n0=n2+1
- k層至多有2^(k-1)個結點
- 高度為h,至多有2^h - 1個結點
- 具有n個結點的完全二叉樹高度為log2n + 1
二叉樹的遍歷、編碼
先序、中序、后序遍歷
層次遍歷:利用佇列實作
線索二叉樹:若無左子樹,令左孩子指向前驅節點;若無右子樹,令右孩子指向后繼節點
數的存盤結構
雙親表示法:表格形式
孩子表示法:表格鏈表形式
孩子兄弟表示法:二叉鏈表進行存盤
二叉排序樹:從左到右大小排序
查找
插入(構造
平衡二叉樹
樹與森林
相互轉換:根節點當做兄弟節點,再用孩子兄弟表示法
樹的應用:并查集??
線索二叉樹(空地放前后端點鏈接
哈夫曼樹(帶權路徑長度最小
哈夫曼編碼:使用不等長編碼,減少資訊存盤量;0轉向左孩子,1轉向右孩子

圖
( , )無向圖,< , >有向圖
圖的存盤
1.鄰接矩陣法:適合稠密圖
2.鄰接表法
3.鄰接多重表、十字鏈表
圖的遍歷
深度優先搜索


廣度優先搜索


圖的應用
最小(代價)生成樹
最小生成樹不唯一,最小生成樹代價唯一
-
kruskal 演算法

按照權值遞增順序依次構造邊
- prim 演算法(基于貪心演算法

最短路徑
迪杰斯特拉演算法解決單元最短路徑問題
? 創建定點的距離表,根據不同深度不斷更新距離表
Floyd演算法解決各頂點之間最短路徑問題
拓撲排序
不存在回路就能構造
原理:找一個沒有前驅的節點輸出,并刪去該節點
AOV網:資料在頂點(面向物件

關鍵路徑
e(i)=max{}; l(i)=min{};
AOE網:資料在邊上(面向程序
只有關鍵路徑上的活動時間同時減少時,才能縮短工期
關鍵活動:最遲開始時間 l(i) - 最早開始時間 e(i) = 0
查找
順序查找
分塊查找(索引順序查找
折半查找
high=mid-1; low=mid+1;僅適用于有序的順序表
int Binary_Search(SeqList L,ElemType key,int n){
int low=0,high=n-1,mid;
while(low<=high){
mid=(low+high)/2;
if(L.elem[mid]==key)
return mid;
else if(L.elem[mid]>key)
high=mid-1;
else low=mid+1;
}
return -1;
}
二叉排序樹
BiTNode *BST_Search(BiTNode *t,ElemType key){
if(t==NULL)return NULL;
else{
if(t->key=key)return t;
else if(key < t->key)return BST_Search(t->t->lchild,key);
else return BST_Search(t->rchild,key);
}
}
B樹、B+樹
B+樹有兩種查找方式,一種從上往下,一種從根節點開始的依次查找
B-樹??
查找
插入
洗掉
散串列:散列函式是關鍵
除留余數法 、數字分析法、平方取中法
處理沖突:開放定址法、拉鏈法??

模式匹配??
KMP
next值計算
nextval計算
排序
對大多數內部排序僅適用于順序存盤結構
插入排序
直接插入排序
折半插入排序
希爾排序
切割子表,對每個子表進行插入排序;通過對原始陣列預處理使得陣列大體有序,使得最終的插入排序變得簡單
交換排序
冒泡排序
快速排序:雙指標(最好的內部排序
內部排序中平均性能最優
選擇排序
選擇最小的放前面、不穩定,可能會導致相同元素的相對位置發生變化
堆排序
洗掉節點時,將最后一個元素放在頂部,再逐步下沉
大根堆:從第一個非葉子節點開始構造


二路歸并排序

基數排序
MSD: 最高為優先;LSD:最低位優先
內部排序比較

外部排序*(新增考點
歸并排序

多路平衡樹與敗者樹
? 勝者樹與敗者樹:敗者樹可以加快合并序列,減小歸并路數k增大的影響


置換-選擇排序
? 生成初始歸并段






最佳歸并樹
? 組織初始歸并段:哈夫曼樹的思想,得到好的歸并順序,使得 I/o 次數最少
當初始歸并段不足以構成嚴格k叉樹時,需添加長度為0的虛段

設度為0的個數有n0個:

https://www.cnblogs.com/jev-0987/p/13322232.html
、、、、、、、、
作業系統
概述
開機后作業系統加載到 RAM 中
批處理互動性差
現代OS兩個最基本特征:并發與共享,互為存在的條件,(虛擬、異步)
不屬于多道程式設計的基本特征:順序性(為單道程式設計特征,多道競爭)
內核態用戶態
管態與目態
中斷、例外
主程式呼叫子程式完全是軟體處理程序;PSW:程式狀態字暫存器
訪管中斷:需要特權指令引起的中斷(自愿中斷事件),本身不是特權指令,使得用戶程式能夠訪問管態
計算機通過硬體、中斷機制完成用戶態到核心態的轉換,不是中斷處理程式
用戶態下常見指令:命令解釋程式;訪管指令
核心態下常見指令:行程切換;置時鐘指令;廣義指令(系統呼叫指令);輸入輸出;關中斷指令
單道處理程式:缺點:缺少互動性
行程管理
行程執行緒
-
動態性是行程最基本特征
-
全域變數是對同一行程而言,不同行程是不同變數,無法利用其交換資料
行程狀態和行程控制
- block阻塞原語是自主行為,自我阻塞
- weak-up喚醒原語是被其他行程進行喚醒
- 只有內核級執行緒才是處理機分配單位,用戶級執行緒不是
處理機調度

- 調度演算法
行程同步與互斥
經典同步問題
死鎖
記憶體管理
**連續分配管理方式:**單一、固定磁區、動態磁區分配(首次適應、最佳適應、最壞適應
非連續分配
虛擬頁式存盤管理:基于區域性原理
- 虛擬記憶體實際容量=min{記憶體與外存容量之和,CPU尋址范圍}
- 頁面置換演算法:LRU,CLOCK
抖動:付訓出又要換入記憶體
檔案管理
邏輯結構:順序檔案、索引檔案、索引順序檔案
目錄結構
檔案共享與檔案保護:硬鏈接(基于索引節點)(直接在索引節點上計數)、軟鏈接(基于符號鏈)(給個鏈接地址到索引節點)
磁盤組織與管理:磁盤調度演算法:SSTF最短尋道時間優先;SCAN當前移動方向上最近的;C-SCAN單向后回傳初始段;
設備管理
IO控制:DMA在IO設備與記憶體之間開辟直接的資料通路
IO軟體的層次結構
IO調度與緩沖區
設備分配與回收
、、、、、、、、、
計算機組成原理
2.1 概述(組成原理+OS)
- 計算機發展歷程(選)
\1. 硬體發展
硬體發展
\2. 元件更新換代:摩爾定律18個月翻倍
\3. 按指令和資料劃分:不存在多指令單資料流系統
\4. 發展趨勢:“兩極”分化
- 計算機系統層次結構(選)
\1. 暫存器參與運算
暫存器參與運算存盤的內容
\2. 計算機作業程序
計算機作業程序
- 計算機主要性能指標(選,計算)
\1. 性能
(1)區別機器字長、指令字長PC/MAR、存盤字長MDR、作業系統位數(尋址能力相關)
(2)資料通路帶寬:外部總線寬度
(3)主存容量:存盤單元個數2^n X 存盤字長位
(4)運算速度:吞吐量和回應時間、主頻和CPU時鐘周期、CPI、
CPU執行時間 = 指令條數 X CPI X cpu時鐘周期、
MIPS MFLOPS GFLOPS TFLOPS
\2. 專業術語
(1)系列機:具有基本相同的體系結構
(2)兼容
(3)軟體可移植性
(4)韌體:將程式固定在ROM中組成的部件為韌體
(5)基準測驗程式一般能夠反映機器性能的好壞
- 作業系統基本概念(選)
\1. 作業系統定義
\2. 作業系統特征:并發、共享、虛擬、異步
\3. 作業系統的目標和功能
(1)作為計算機系統資源的管理者
(2)作為用戶與計算機硬體系統介面
(3)作為擴充機器
- 作業系統發展和分類(選)
作業系統發展和分類
- 作業系統的運行環境(選)
\1. 運行機制:時鐘管理、中斷機制(PC、PSW相關)、原語、系統控制的資料結構及處理(PCB、FCB、佇列、作業控制塊等)
2. 中斷和例外*
中斷
注意:
(1)浮點數上溢屬于中斷,浮點數下溢不屬于中斷
(2)軟中斷是中斷指令
(3)trap指令是發起系統呼叫,請求作業系統提供服務
- 作業系統體系結構(選)
一般內核提供的服務越少內核越穩定
大內核:執行效率高;不穩定
微內核:為用戶提供服務時,至少進行4次背景關系切換;易于維護;比較可靠
- 總結:關于組成原理和OS的概述主要以識記為主,408考察中基本考察選擇題為主
2.2 數的表示和運算(難點)
- 數制與編碼(選,計算)
\1. 不同進制數之間的轉換:二進制、八進制、十六進制、十進制之間的轉換,其中十進制轉n進制采用扯訓取余法(整數部分)和乘基取整法(小數部分)
\2. 真值與機器數
\3. BCD碼:其中有權碼有8421碼和2421碼;無權碼有余3碼,BCD碼以理解為主,屬于非重點,
\4. 字符與編碼:ASCII碼、漢字編碼GBxx
\5. 字串存放:大端模式、小端模式
**6. 檢驗碼*:**奇偶校驗、CRC碼、海明碼;這些編碼可以結合計算機網路中的檢驗碼一起來學習,需要掌握這些檢驗碼的檢錯和糾錯的程序
- 定點數運算(選,計算,應)
\1. 原碼、反碼、補碼、移碼
\2. 定點數移位運算:算術移位(有符號)、邏輯移位(無符號)、回圈移位(大回圈、小回圈);注意負數補碼左移補0,右移補1 – 高位補1低位補0
\3. 符號擴展:正數、負數(根據機器數不同而不同,補碼用1填充整數用0填充小數;反碼用1填充)
**4. 定點數加減運算*:**主要掌握定點數補碼加減運算
(1)[x+y]補 = [x]補 + [y]補;
(2)[x-y]補 = [x]補 + [-y]補;
\5. 定點數乘除法運算:主要掌握補碼乘除原理和特點,對于運算程序不必要過分糾結
(1)定點數補碼乘法運算:掌握Booth演算法,可以按照溢位來理解,當出現01表示正溢位需要+[x]補,出現10表示負溢位需要+[-x]補;
定點數補碼乘法
Booth演算法
定點數乘法運算總結
(2)定點數補碼除法運算:余數和除數同號,上商"1";余數和除數異號,上商"0";最后一步商恒置"1"
定點數補碼除法運算
定點數除法運算總結
\6. 定點數強制型別轉換
定點數強制型別轉換
- 浮點數表示與運算(選,計算,應)
\1. 浮點數
(1)浮點數格式
浮點數格式
(2)浮點數規格化
浮點數規格化
(3)浮點數表示范圍:負上溢和正上溢屬于中斷;負下溢和正下溢不屬于中斷
浮點數表示范圍
\2. 浮點數補碼加減運算:掌握1對階(右移) – 2尾數(0.1或1.0型別) – 3規格化 – 4舍入 – 5溢位判斷的程序
3. 浮點數強制型別轉換(選,應)
浮點數強制型別轉換
\4. IEEE754標準
IEEE754標準格式
IEEE754具體格式位數
- 算術邏輯單元(選)
\1. 電路符號
\2. 加法器
(1)一位全加器
一位加法器
(2)串行加法器:依次相加進位
(3)并行加法器:串行進位、并行進位(串行進位、同時進位)
串行進位
并行進位
\3. 算術邏輯單元的功能和結構
(1)ALU核心是一個并行加法器,還可以執行“與”、“或”、“非”等邏輯運算
(2)74181芯片:4位并行加法器ALU芯片,組內并行(片內),組間串行(片間)
(3)74182芯片:先行進位芯片,可以輔助74181芯片實作組間并行
- 總結:數的表示和運算是一個比較難的章節,但是408中基本考察定點數補碼加減、浮點數補碼加減和IEEE754標準,對于原始碼加減能看懂就可以,而對于定點數乘除運算以了解為主,如果實在是看不下去就先選擇跳過,等第二輪復習再好好理解一下即可,同時這一章是應用大題和選擇題的高頻出題章節,選擇題主要以二進制計算為主不過其他基本概念也要掌握;對于應用大題會出綜合大題,也就是考察的知識點比較全面,比如408真題中出過閱讀一段求n!C語言代碼回答問題考察了大端小端模式、IEEE754標準、浮點數補碼運算、存盤相關知識等,所以一定要把知識點都記下來,408沒有捷徑,尤其是組成原理和作業系統一定要面面俱到,
2.3 存盤系統與記憶體管理
- 存盤器的層次結構(選)
\1. 分類
存盤器分類
\2. 性能(計算):存盤容量、單位成本、存盤速度(存取時間、存取周期、主存帶寬)
存取時間與存取周期關系
\3. 多層存盤系統:Cache - 主存層次 和 主存 - 輔存層次
3級存盤結構
注意:cache效率 = 訪問Cache時間 / 平均時間
- RAM(選、計算)
\1. 74138譯碼器
\2. SRAM:雙穩態觸發器
\3. DRAM:電容、地址復用(1/2)、存盤電路為三管式和單管式、最多2ms重繪周期
4. DRAM重繪方式*:DRAM重繪行不需要資訊輸出
(1)集中重繪:有固定死區
(2)分散重繪:無死區
(3)異步重繪:前兩種的結合,重繪時間間隔 = 2ms / 行數
\5. RAM的讀寫周期:以了解為主
(1)讀:Tco為片選保持時間,we為高電平有效
(2)寫:cs、we為低電平有效,Twc = Taw + Tw + Twr
\6. SRAM與DRAM比較
SRAM與DRAM比較
\7. ROM:位密度高、可靠性高,有PROM、EPROM等,
\8. 閃存:由MOS管組成,
- 主存盤器與CPU連接(選、應) – 應用題可能會考察畫圖
\1. 主存容量擴展
(1)為擴展法:cs片選信號連接所有芯片
(2)字擴展法:譯碼器
(3)字位同時擴展法
\2. 地址分配與片選
(1)線選法:n --> n
(2)譯碼片選法:n–>2^n
\3. 存盤器與CPU連接:了解處理方式,其中注意地址線選低位,片選信號有效的前提是MREQ訪存控制信號
- 雙埠RAM和多模塊存盤器(選、計算)
\1. 雙埠:不能同時寫入資料,不能一邊寫入一邊讀出;解決方法就是置BUSY信號為0
2. 多模塊存盤器*(計算)
多模塊存盤器
低位交叉編址
- 高速緩沖存盤器(選、計算、應)
\1. 區域性原理:時間區域性、空間區域性
\2. Cache效率 = Cache時間 / 平均時間
3.Cache和主存的映射方式
(1)直接映射
直接映射
(2)全相聯映射
全相聯映射
(3)組相聯映射
組相聯映射
4. Cache容量*(計算,非常重要) = 標記項陣列容量 + 存盤容量
5. Cache替換演算法:RAND、FIFO、LRU、LFU
6. Cache寫策略
Cache寫策略
- 記憶體管理基本原理和要求(選)
\1. 記憶體管理的功能:記憶體空間分配和回收、地址轉換、記憶體空間擴充、存盤保護
\2. 程式裝入和連接
\3. 邏輯地址與物理地址轉換:地址重定位
\4. 記憶體保護:上下限暫存器(CPU內) – “比”、重定位暫存器(映射成物理地址) – “加”
- 覆寫與交換(選)
\1. 覆寫:將用戶空間分為固定區和覆寫區
\2. 交換(中級調度):換入和換出
\3. 覆寫和交換的區別:交換不同行程間;覆寫是同意程式或行程中
- 連續分配管理方式(選、應)
\1. 單一連續分配
\2. 固定磁區分配
\3. 動態磁區分配:使用緊湊和動態重定位暫存器完成,分配策略有 - FF(最好)、BF、WF、NF(回圈雙向鏈表)
3鐘連續分配方式的比較
- 非連續分配管理方式(選、應)
\1. 基本分頁存盤管理方式(一維) —— 產生內部碎片
(1)地址結構:將邏輯分頁地址 轉為 物理地址
頁表
分頁地址變換程序
(2)訪存:注意有TLB(相聯存盤器)的情況下只需要訪存一次就可獲取到物理地址下的資料或指令;而慢表情況下需要訪存2次才能獲取到資料或指令
(3)多級頁表
2級頁表
\2. 基本分段存盤方式(二維) —— 產生外部碎片
(1)段內連續,段間不要求連續
(2)邏輯地址 – 物理地址
段表
分段地址變換程序
(3)訪存:用到了段表暫存器,需要2次訪存
\3. 段頁式管理方式(二維) —— 產生內部碎片
(1)邏輯地址
段頁表
(2)系統為每個行程建立一個段表 + 多個頁表,用到了段表暫存器
(3)訪存:需要3次訪存
- 虛擬記憶體的基本概念(選、應)
\1. 特征:多次性、對換性、虛擬性 —— 時間區域性
\2. 虛擬記憶體的實際容量 = min(記憶體和外村總容量, 作業系統尋址范圍);
\3. 實作3種方式:包含兩個程序 – 請求調頁 + 頁面置換
(1)請求分頁
(2)請求分段
(3)請求段頁式
**注意:**這3種方式跟普通的分頁、分段、段頁式大同小異,最重要的區別是在虛擬記憶體種要考慮缺頁中斷和頁面置換的程序,
4. 請求分頁*
(1)頁表項:加入了額外的資訊標志位來處理調入、置換問題
虛擬頁表
(2)缺頁中斷機構:屬于內中斷 == 例外
(3)地址變換機構(硬體):先檢索快表,若快表未檢索到就檢索頁表
請求分頁地址變換程序
- 頁面置換演算法(選、應)
\1. OPT演算法:無法實作
\2. FIFO演算法:會造成Belady例外
\3. LRU演算法:跟Cache置換策略中的LRU一樣
\4. LFU演算法:同Cache
\5. CLOCK演算法:又稱為最近不用,有一個使用位
\6. 改進CLOCK演算法:有一位使用位、一位修改位,最多進行4輪
改進CLOCK4種情況
- 頁面分配策略(選)
\1. 駐留集:給一個行程分配的物理頁框的集合
駐留集分配策略
\2. 調入頁面的時機:預調頁策略(行程的首次調入)、請求調頁策略(每次只調入一頁)
\3. 從何處調入頁面:從對換區調入適合連續分配方式(快);從檔案區調入適合非連續分配(慢)
- 抖動(選)
1.特點:分配頁面不夠,導致頻繁的頁面置換行為 == 換頁時間 > 執行時間
\2. 作業集:某時間間隔內行程要訪問的頁面集合
作業集
\2. 防抖策略:保證駐留集 > 作業集;可以通過暫停部分行程來保證駐留集 > 作業集
- 地址翻譯(應)
\1. 步驟
(1)分析虛擬地址、物理地址、頁面、TLB映射、Cache映射
(2)劃分邏輯地址
(3)定出物理地址
(4)查Cache / 查記憶體
\2. 查找順序
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-FHQM1RqY-1609143322592)(https://pic4.zhimg.com/80/v2-b53c1ae3709d33e1fbfb6212e2812b9f_720w.jpg)]查找順序
- **總結:**通過以上的知識點可以看出這一部分的內容聯系非常緊密,往往題目給出的圖會包含記憶體管理和存盤管理兩部分,所以一定要把這兩塊分散的知識點放在一起來記,構成一個完整的邏輯鏈,
記憶體管理+存盤系統綜合圖
2.4 行程管理
- 行程與執行緒(選)
\1. 行程物體:程式段、相關資料段、PCB
\2. 行程控制:掌握行程的創建、行程終止、行程阻塞Block和喚醒Wakeup、行程切換的程序和特點
\3. 行程通信:共享存盤、訊息傳遞(直接通信和間接通信)、管道通信
\4. 執行緒概念
(1)TCB
(2)執行緒是獨立調度的基本單位,行程是擁有資源的基本單位
(3)并發性
(4)執行緒間可以直接讀/寫行程資料段來進行通信
5. 用戶級執行緒和內核級執行緒*
3種執行緒特點
**6. 多執行緒模型:**掌握一對一模型、多對一模型、多對多模型的特點
- 處理機調度(選,應)
\1. 調度層次:作業調度、中級調度(記憶體調度) – 調至外存等待、行程調度
2. 調度時機*(選擇)
(1)不能進行行程調度與切換的3種情況

(2)能進行行程調度與切換的2種情況

**3. 調度的基本準則:**掌握CPU利用率、系統吞吐量、周轉時間 = 作業完成時間 - 作業提交時間、平均帶權周轉時間、等待時間、回應時間的概念和求解
**4. 調度演算法*(選,應):**掌握FCFS、SJF、優先級調度演算法、高回應比優先調度演算法(回應比Rp = (等待時間 + 服務時間)/服務時間)、時間片輪轉、多級反饋佇列
- 行程同步(選,應)
\1. 基本概念
(1)臨界資源:進入區、臨界區、退出區、剩余區
(2)同步:直接制約關系
(3)互斥:間接制約關系(空閑讓進、忙則等待、有限等待、讓權等待)
2. 實作臨界區互斥方法
(1)軟體實作*:單標志法(違背空閑讓進)、雙標志法先檢查(違背忙則等待)、雙標志法后檢查(違背有限等待)、Peterson’s演算法(違背讓權等待)
(2)硬體實作(不會被中斷):中斷屏蔽方法(關中斷、臨界區、開中斷);硬體指令方法(TestAndSet指令、Swap指令)
\3. 信號量:整型信號量、記錄型信號量、利用信號量實作同步、利用信號量實作互斥、利用信號量實作前驅關系
\4. 管程:封裝的思想;一個行程只能通過呼叫管程內程序才能進入管程訪問共享資料;每次僅允許一個行程再管程內執行某個內部程序
5. 經典同步問題*(選,應)
(1)簡單生產者 - 消費者
(2)復雜生產者 - 消費者
(3)讀者 - 寫者(計數器count,讀寫公平)
(4)哲學家進餐問題(多個互斥資源):掌握3種實作方式
注意:對這4種經典同步問題的PV操作代碼要熟悉
- 死鎖(選,應)
\1. 區別死鎖和饑餓
\2. 死鎖產生的原因
(1)系統資源競爭
(2)行程推進順序非法
(3)信號量適用不當
(4)死鎖必要條件:互斥條件、不剝奪條件、請求并保持條件、回圈等待條件
\3. 死鎖處理策略
死鎖處理策略
4. 銀行家演算法*:會求安全序列
5. 死鎖檢測和解除
(1)會畫資源分配圖,通過死鎖定理(消邊)來檢測是否死鎖
(2)通過資源剝奪法、撤銷行程法、行程回退法(資源釋放,非剝奪)來解除死鎖
- **總結:**行程管理這一章,最重要的知識點是行程調度演算法、經典同步問題的PV代碼、銀行家演算法,
2.5 指令系統
- 指令格式(選,應)
\1. 指令:是計算機運行的最小功能單位
指令格式
\2. 指令基本格式
(1)零地址
零地址
(2)一地址
一地址
(3)二地址
二地址
(4)三地址
三地址
(5)四地址
四地址
\3. 定長操作碼指令:2^n條指令
\4. 擴展操作碼指令格式:不允許短碼是長碼的前綴
擴展操作碼指令格式
- 指令尋址方式(選,應)
\1. 指令尋址:尋找下一條將要執行的指令地址 – 順序尋址、跳躍尋址
\2. 資料尋址:尋找運算元的地址
資料尋址
3. 常見資料尋址方式*(選,應)
(1)隱含尋址:另一個運算元隱含在ACC中
隱含尋址
(2)立即尋址
立即尋址
(3)直接尋址
直接尋址
(4)間接尋址
間接尋址
(5)暫存器尋址
暫存器尋址
(6)暫存器間接尋址
暫存器間接尋址
(7)相對尋址
相對尋址
(8)基址尋址
基址尋址
(9)變址尋址
變址尋址
(10)堆疊尋址:分為硬堆疊(暫存器)和軟堆疊(主存),隱含用SP
\4. 常見匯編指令:簡單了解,能做到看到匯編指令可以知道大致的作用就可以
- CISC和RISC(選)
\1. CISC: Complex Instruction Set Computer
(1)指令長度不固定
(2)訪存指令不受限
(3)大多數指令需要多個時鐘周期
(4)采用微程式控制
\2. RISC: Reduced Instruction Set Computer
(1)盡量適用暫存器–暫存器操作指令
(2)指令長度固定
(3)只有Load/Store指令訪存,其余指令操作都在暫存器進行
(4)流水線技術,大部分指令在一個時鐘周期內完成
(5)硬布線控制為主,少用微程式控制
\3. CISC和RISC對比
CISC和RISC對比
- **總結:**指令系統最重要的是資料尋址方式,一定要把這10種尋址方式理解清楚,能分析出訪存次數和標志EA,這一章比較喜歡考察尋址程序的綜合大題,所以一定要熟悉各種暫存器的作用并且掌握一定匯編指令的基本語法,其他知識點主要進是選擇題,
2.6 中央處理系統(內容難)
- CPU的功能和基本結構
\1. CPU功能:指令控制、操作控制、時間控制、資料加工、中斷處理
\2. CPU基本結構
(1)運算器:ALU、T、ACC、AX、BX、CX、DX、SP、PSW、SR、計數器
(2)控制器:PC、IR、ID、MDR、MAR、時序系統
- 指令執行程序
\1. 四個周期
指令周期
\2. 指令周期的資料流
(1)取指
取指
(2)間指
間指
(3)執行:OP(IR) --> CU
(4)中斷
中斷
\3. 指令執行方案
(1)單指令周期 — 串行執行
(2)多指令周期 — 串行執行
(3)流水線方案 — 并行執行
- 資料通路的功能和基本結構
\1. 資料通路的功能:實作CPU內部的運算器與暫存器及暫存器之間的資料交換
\2. 基本結構
(1)CPU內部單總線方式:使用ALU + T
(2)CPU內部多總線方式
(3)專用資料通路方式:MUX、三態門
\3. 資料傳送
(1)暫存器之間
暫存器之間
(2)主存與CPU之間
主存與CPU之間
(3)執行算識訓邏輯運算
執行算識訓邏輯運算
- 控制器的功能和作業原理
\1. 控制器的功能
(1)從主存中取出一條指令,并指出下一條指令在主存中的位置
(2)對指令進行譯碼測驗,產生相應的操作控制信號
(3)指揮并控制CPU、主存、輸入、輸出設備之間的資料流動方向
\2. 硬布線控制器(由復雜的組合邏輯門電路和一些觸發器構成)
(1)微操作命令分析:要把取指、間指、執行、中斷程序弄清楚


(2)CPU控制方式:同步控制(統一時鐘)、異步控制(應答方式)、聯合控制(大部分同步、小部分異步)
(3)注意:硬布線控制單元設計的題目出出來一定是難題,但是幸運的沒出過,所以如果看這個設計步驟比較困難可以直接跳過,之后如果有時間再來慢慢理解(選擇性放棄)
\3. 微程式控制器
(1)微程式控制基本概念

(2)微程式控制器組成和作業程序
微程式控制器的基本結構
(3)微程式的編碼方式(形成控制信號)
直接編碼方式
欄位直接編碼方式
(4)微指令地址形成
微指令地址形成
(5)微指令格式
微指令格式
(6)設計步驟:了解
(7)動態和豪微程式設計:動態程式設計根據用戶要求改變微程式;豪微程式設計第二級控制存盤器是豪微存盤器,直接控制硬體是豪微微指令
(8)硬布線和豪微控制器的比較
硬布線和豪微控制器的比較
- 指令流水線(選,計算)
\1. 定義(取指、分析、執行)
(1)順序執行:T = 3nt
(2)一次重疊執行:T = (1+2n)t
(3)二次重疊執行:T = (2+n)t
3種流水線
\2. 特點
流水線特點
\3. 流水線的分類:了解
\4. 影響因素
流水線影響因素
5. 性能*(計算)
(1)吞吐率:TP = n / {(k + n - 1)t}
(2)加速比:S = kn / (k + n - 1)
(3)效率:E = kn / (k^2 + kn - k)
\6. 超標量流水線
(1)超標量流水線
超標量流水線
(2)超流水線
超流水線
(3)超長指令字:具有并行性
- **總結:**中央處理系統的設計部分是最難,但是我們只需要知道基本概念就可以了,真題里面很少出考察設計的題目,基本都是在現有設計的情況下進行考察,
2.7 檔案與磁盤管理
- 檔案概念(選)
\1. 檔案的結構
檔案的結構
\2. 檔案屬性:所有檔案的資訊保存在目錄結構中,目錄結構保存在外存上,
目錄條目包括檔案名稱及其唯一的識別符號
檔案屬性
\3. 檔案基本操作
檔案的基本操作
\4. 檔案的邏輯
檔案的邏輯
\5. 目錄結構
目錄結構
6. 檔案共享
檔案共享
\7. 檔案保護
檔案保護
- 檔案系統實作(選,計算,應)
\1. 檔案系統層次結構
檔案系統層次結構
\2. 目錄實作
目錄實作
\3. 檔案分配方式
檔案分配方式
4. 檔案存盤空間(計算,應)
檔案存盤空間管理
- 磁盤組織與管理(計算)
\1. 磁盤地址 = 柱面號 * 盤面號 * 扇區號(塊號)
\2. 磁盤分類:固定頭磁盤、活動頭磁盤、固定盤磁盤、可換盤磁盤
3. 時間(計算)
(1)尋道時間Ts = m*n + s
(2)延遲時間Tr = 1/(2r)
(3)傳輸時間Tt = b/(rN)
(4)平均存取時間Ta = Ts + Tr + Tt
\4. 磁盤調度演算法
磁盤調度演算法
\5. 編號
編號
\6. 磁盤的管理
磁盤的管理
- **總結:**檔案與磁盤管理最重要的是檔案存盤空間的計算和磁盤存取時間的計算,其他的知識點需要多積累,這一章也是OS的大題出題點,
2.8 總線
- 總線概述(選)
\1. 基本概念
基本概念
\2. 總線分類:片內總線、系統總線(資料總線、地址總線、控制總線)、通信總線(外部總線)
\3. 系統總線結構
系統總線結構
4. 總線性能(計算)
總線性能
- 總線仲裁(2021年從408考綱移除)
\1. 仲裁方式:集中仲裁、分布仲裁
\2. 集中仲裁
集中仲裁
- 總線操作和定時(選)
\1. 總線4個階段:申請分配階段、尋址階段、傳輸階段、結束階段
\2. 定時
定時
- 總線標準(選)
常見總線標準
- **總結:**總線這一章以選擇題為主來考察,
2.9 I/O系統
- I/O概念
\1. 組成
(1)I/O軟體:驅動程式、用戶程式、管理程式、升級補丁等
(2)I/O硬體:外部設備、設備控制器和介面、I/O總線等
\2. 實作
(1)I/O軟體:采用I/O指令和通道指令實作CPU與I/O設備資訊交換
(2)I/O硬體:通過設備控制器來控制I/O設備的具體作業;通過I/O介面與主機相連
\3. I/O指令
I/O指令
\4. I/O控制方式
I/O控制方式
- 外部設備
\1. 輸入設備
\2. 輸出設備
(1)VRAM帶寬 = 解析度 * 灰度級位數 * 幀頻
(2)VRAM容量 = 解析度 * 灰度級位數(2^n種不同亮度)
\3. 外存盤器
外存盤器
\4. 磁盤地址
磁盤地址
\5. 磁盤陣列
磁盤陣列
\6. 光碟存盤器:CD-ROM、 CD-R、 CD-RW、 DVD-ROM
\7. 固態硬碟:由E2PEOM發展而來,由Flash Memory + 硬體 + 軟體組成
- I/O介面
\1. 功能:設備選址、傳送命令、傳送資料+格式轉換、反映I/O設備的作業狀態
\2. 組成
(1)I/O埠:資料埠、狀態編號、控制埠
(2)控制邏輯電路
\3. 編址方式
編址方式
- I/O方式
\1. 程式查詢方式
\2. 程式中斷方式
\3. DMA方式
程式查詢、程式中斷、DMA方式
注意:以上3種I/O方式需要重點理解
\4. 通道方式:是DMA方式的發展,是“弱雞版的CPU”
\5. I/O處理機
\6. 區分通道、DMA和I/O處理機
區分
- I/O核心子系統
\1. I/O子系統的層次結構
I/O子系統的層次結構
\2. I/O核心子系統提供服務
I/O核心子系統提供服務
(1)單緩沖
單緩沖
(2)雙緩沖
雙緩沖
(3)緩沖池
緩沖池
\3. 設備分配與回收
(1)流程:LUT——>SDT——>DCT——>COCT<——>CHCT——>通道分配給行程
(2)方法:靜態分配 - 無死鎖,效率低;動態分配 - 效率高,有死鎖
(3)演算法:先請求先分配、優先級高者優先(一般采用動態分配)
(4)安全性
安全性
\4. SPOOLing技術(虛擬設備):獨占式 --> 共享式
SPOOLing技術
- **總結:**I/O系統中要重點掌握程式查詢、程式中斷(中斷處理的程序)、DMA這3種I/O方式,其他的內容簡單識記,這一章同樣也是以選擇題為主,
、、、、、、、、、、
計算機網路
1.基本概念(分層結構)
邏輯功能上可劃分為:資源子網和通信子網;其中通信子網對應物理層、資料鏈路層、網路層
物理組成上:硬體、軟體、協議
廣域網、局域網區別:覆寫范圍不同;協議和網路技術不同,廣~采用點對點技術,局域網采用廣播技術
-
MTU:最大傳輸單元,物理介面提供給上層最大傳輸資料大小
-
MSS:TCP給IP層最大分段的大小
2.物理層傳輸介質
? 雙絞線:膠合目的:減少兩根導線的電磁 干擾
IEEE802.3 規定采用同軸電纜作為介質,無中繼情況下,介質最大傳輸長度不能超過500m,
3.ISO與TCP/IP模型區別
ISO:應用層、表示層、會話層、傳輸層、網路層、資料鏈路層、物理層
TCP/IP: 應用層、傳輸層、網際層、網路介面層
- 網際層僅支持無連接,網路層支持無連接和面向連接
- 傳輸層支持無連接,ISO傳輸層僅支持面向連接
4.曼徹斯特編碼:躍變為1
4B/5B Encoding
目標:如何在解決基線漂移和時鐘漂移的同時,使編碼效率盡量高一些
思想:在位元流中插入額外的位元而打破一連串的 0 或 1 方法:用 5 個位元來編碼 4 個位元的資料,然后再傳給接收方
5 位元代碼由以下方式選定:每個代碼最多有一個前導 0,并且末尾最多有 2 個 0 這樣在連續傳送時,在傳輸程序中任何一段 5 位元代碼,連續的 0 最多有 3 個. 最后使用 NRZI 編碼進行傳輸,就解決了問題
4B/5B 編碼的效率為 80%
5.奈奎斯特定理、香農定理:
有關傳輸速率上限的兩個定理(注:帶寬——頻率范圍)
Nyquist 定理: D(位元率) = 2 f(帶寬) log2 N(電壓種數) 無噪音情況下的最大傳輸速率
Shannon 定理: C(位元率) = B log2 (1 + S(信號) / N(噪聲)) 引入信噪比 = 10 * lg (S/N)
- 碼元傳輸速率 (波特率):每秒硬體產生的電信號變化次數;
- 資訊傳輸速率 (位元率):每秒傳送的二進制位數,也叫“位速率”
- 位元率 = 波特率 * [log2 電平數]

6.電路交換、報文交換、分組交換
7.物理層介面與物理層設備
(每塊網卡出廠就有全球唯一的MAC地址)
路由器可以隔離廣播域(網路層設備)
交換器、網橋(鏈路層設備),路由器可以隔離沖突域
集線器(Hub)、中繼器都不能隔離 (中繼器放大數字信號,放大器放大模擬信號)
網卡實作主要功能在物理層、資料鏈路層
資料鏈路層
8.HDLC的零位元填充法:5個0加個1
高級資料鏈路控制協議
9.糾錯檢錯
回圈冗余碼:亦或運算
海明碼:位數:2^r > k+r+1;
海明距離:檢錯:d+1; 糾錯:2d+1;
10.流量控制、可靠傳輸與滑動視窗機制
滑動視窗協議:停等協議、
GBN:采用累積確認,發送端收到1、3、5確認說明前5幀都已經收到
? 發送視窗 <= 2^n-1;
SR: 通常發送視窗與接受視窗大小相同,為2^(n-1)
令牌桶
靜態信道劃分:不存在碰撞
動態隨機訪問:CSMA/CD、CSMA/CA
CD:載波偵聽、碰撞檢測;爭議期:信號在最遠兩個端點往返傳輸時間
CA改成碰撞避免:
方式:預約信道,發送資料同時通知所需要的時間長度
ACK幀; RTS/CTS幀,解決隱蔽站問題
12.MAC幀??
主機與主機的互動只認識MAC幀編號,不認識IP
同一局域網中,兩個設備具有相同的靜態 MAC 地址時,在網路上的兩個設備都不能正確通信
14.廣域網、PPP協議、HDLC協議
HDLC: 面向位元位;包含資訊幀、監督幀、無編號幀
PPP: 面向位元組;僅支持全雙工;提供差錯檢測不提供糾錯功能;
? 采用7E作為邊界符進行符號填充
網路層
16.網路層功能:異構互聯、路由轉發、擁塞控制
17.路由演算法:
靜態路由與動態路由、距離-向量路由演算法、鏈路狀態路由演算法、層次路由
18.IP子網劃分??、CIDR
原因:兩級地址不夠靈活,每個物理網路分配一個網路號會使得路由表變得太大,劃分為{<網路號>,<子網號>,<主機號>}
主機號全為0是網路本身,如202.98.174.0;全為1是網路的廣播地址,如202.98.174.255
CIDR:無分類域間路由選擇;
19.Ipv4資料報頭文、NAT
20.ARP、ICMP、DHCP??
ARP地址決議協議
21.IPV6
22.路由協議:RIP、OSPF、BGP
RIP: 基于距離向量演算法的路由選擇協議;30秒才廣播一次路由資訊;
OSPF: 基于鏈路狀態路由演算法的開放最短路徑協議;網路層協議,直接IP傳訊息,RIP是應用層協議,用UDP傳訊息
傳輸層
23.傳輸層功能
24.UDP
25.TCP流量控制與擁塞控制
應用層
26.客戶服務器模型、p2p模型
27.DNS系統
客戶服務器模型,采用UDP無連接服務
根域名服務器 > 頂級域名服務器 (.com)> 權限域名服務器(xyz.com) > 本地域名服務器(abc.xyz.com);依次發送DNS查詢請求
28.FTP
采用C/S作業方式;使用兩個并行的TCP連接來傳輸檔案:持續的控制連接 (埠21)+非持續的資料連接 (埠20)
29.電子郵件
SMTP采用TCP,埠25,簡單郵件傳輸協議:TCP持續連接,要求7位元的ASCII碼進行編碼
POP3采用TCP,埠110;明文傳輸密碼,不加密
MIME進行資料格式轉換
30.WWW、HTTP
http采用TCP,但是其本身,是無連接的
http1.0中,每次處理都要建立一次TCP連接,80埠
- GET :從指定的資源請求資料,
- POST :向指定的資源提交要被處理的資料
- HEAD:與GET類似,但只回傳頁面首部,不反回請求物件,常用于除錯
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/241841.html
標籤:其他
下一篇:2020-12-28
