文章目錄
考情分析
考試題型分析:選擇題
考試時間 | 上午 |
---|---|
試題類型 | 選擇題 |
分值 | 6分 |
分值佔比 | 9% |
數據的表示(★★★★)
第一節:數據的表示
R進制轉十進制使用按權展開法,其具體操作爲:將R進制操作的每一位數值用RK表示,即冪的底數是R,指數是k,k與該位和小數點之間的舉例有關。
當該位在小數點左邊,k值是該位和小數點之間數碼的個數。
而當該位位於小數點右邊,K值是負值,其絕對值是該位和小數點之間的數碼的個數加1。
舉例:
二進制10100.01=1x24+1x22+1x2-2;
七進制604.01=6x72+4x70+1x7-2
十進制5220=5x103+2x102+2x101
十進制轉R進制使用短除法(求取公約數),除到最後商爲1爲止。
二進制有兩個基數,可以表示0-1的數;
八進制有八個基數,可以表示0-7的數;
十六進制有16個基數,可以表示0-15數;
例如94轉換成二進制
2|94 0
2|47 1
2|23 1
2|11 1
2|5 1
2|2 0
2|1 1
94對應的二進制就是1011110
二進制轉八進制
八進制可以表示0-7的數,那麼八進制用多少位二進制數表示?八進制最大的是7,7用2進製表示是111,三個二進制000代表的是八進制的0,那這樣一來,每3位2二進制表示一位八進制。八進制每一位可以換3位二進制。二進制轉八進制默認右邊是低位,左邊是高位。
例如:二進制10001110轉換爲八進制
三位一拆分缺0補0
010 001 110
2 1 6
結果爲(216)8,也可以寫爲o216。
八進制轉二進制是以上結果的逆運算。
十六進制可以表示0-15的數,那麼十六進制用多少位二進制數來表示?十六進制最大的是15,15用2進製表示是1111,那這樣一來,我們用四位的二進制來表示一個十六進制的數。爲了不引起混亂,計算機中規定,A,B,C,D,E,F分別代表10,11,12,13,14,15。
例如:二進制10001110轉換爲十六進制
四位一拆分缺0補0
1000 1110
8 E
十六進制轉二進制是以上結果的逆運算。
碼制有四種 ,首位爲符號位,0表示正數,1表示負數
原碼 把數轉換爲二進制,機器數。
反碼 正數的反碼和他的原碼是一樣的。負數的反碼就是在原碼的基礎上,除符號位外,取反。
補碼 正數的補碼和他的原碼是一樣的。負數的補碼在反碼的基礎上再加1。
移碼 再補碼的基礎上符號位取反。
負數的原碼轉補碼,補碼轉原碼是同樣的規則,除符號位外,取反再加1。
在計算機裏,使用補碼參與加減乘除運算
第二節:數值的表示範圍、浮點的運算
數值的表示範圍
定點:小數點位置是固定的數
定點整數:固定小數點在最低位的右邊。-128的補碼爲10000000是人爲規定的。
碼制(n爲機器數) | 定點整數 | 定點小數 |
---|---|---|
原碼 | -(2n-1 -1)~+(2n-1-1) | |
反碼 | -(2n-1 -1)~+(2n-1-1) | |
補碼 | -2n-1 ~+(2n-1-1) | |
移碼 | -2n-1 ~+(2n-1-1) |
推導過程:以四位機器數爲例子,最小的機器數爲1111(轉換10進製爲-7),最大的四位機器數爲0111(轉換10進製爲7)7=23-1,-7=-23-1。
浮點的運算
浮點數的表示: N=尾數*基數指數(階碼) 運算過程 對階>尾數計算>結果格式化 特點
1.一般尾數用補碼,階碼用移碼
2.階碼的位數決定數的表示範圍,位數越多,範圍越大。
3.位數的位數決定的有效精度,位數越多,精度越高。
4.對階時,小數向大數看齊。
5.對階是通過較小數的尾數右移來實現的。
6.浮點數的存儲格式是階符(階碼的正負0爲正,1爲負)、階碼、數符(0爲正,1爲負)、尾數
運算器與控制(★★★★)
硬盤不屬於主機,它是輔助存儲器。
運算器
算術邏輯單元ALU:專門做算術運算,邏輯運算。
累加寄存器AC:給算術邏輯單元提供工作區域,把臨時的計算結果存儲在累加寄存器裏面。
數據緩衝寄存器DR:寫內存時,暫存指令或數據。
狀態條件寄存器PSW:記錄進位,清零,等操作,存狀態標誌與控制標誌。(歷年軟考有時候狀態條件寄存器屬於運算,有時候屬於控制器)
控制器
程序計數器PC:存放CPU將要執行的下一條指令底地址。(下一條指令)
指令寄存器IR:存儲即將執行底的指令 (做什麼)
指令譯碼器ID:翻譯用戶發出的指令。
時序部件:提供時序控制信號
地址存儲器DR:記錄CPU當前要訪問的指令的地址。(當前指令)
Flynn分類法(★★)
體系機構類型 | 結構 | 關鍵類型 | 代表 |
---|---|---|---|
單指令單數據流 SIMD |
控制器部分:一個 處理器:一個 主存模塊:一個 |
單處理器系統 ,單片機 | |
單指令多數據流 SIMD |
控制器部分:一個 處理器:多個 主存模塊:多個 |
各處理器以異步的方式執行同一條指令 | 並行處理機 陣列處理機 超級向量處理機 |
多指令單數據流 SIMD |
控制器部分:多個 處理器:一個 主存模塊:多個 |
被證明是不可能,至少是不實際 | 目前沒有,有文獻證明 流水線計算機屬於此類 |
多指令多數據流 SIMD |
控制器部分:多個 處理器:多個 主存模塊:多個 |
能夠實現作業、任務、指令等各級全面並行 | 多處理器系統,多計算機 |
CISC與RISC(★★)
指令系統類型 | 指令 | 尋址方式 | 實現方式 | 其它 |
---|---|---|---|---|
CISC(複雜) | 數量多,使用頻率差別大,可變長格式 | 支持多種 | 微程序控制技術 | 研製週期長 |
RISC(精簡) | 數量少,使用頻率接近,定長格式,大部分爲 單週期指令操作寄存器,只有Load/Store操作內存 |
支持方式少 | 增加了通用寄存器, 硬佈線邏輯控制爲主, 適合採用流水線 |
優化編譯, 支持高級語言 |
流水線與技術(★★★★)
流水線是指在程序執行時多條指令重疊進行操作的一種準並行處理實現技術,各種不見同時處理時針對不同這個i零而言的,他們可同時爲多條指令的不同部分進行工作,以提高各部件的利用率和指令的平均速度。
相關參數計算:流水線執行計算時間計算、流水線吞吐率、流水線加速比、流水線效率
流水線執行計算時間計算
流水線週期爲執行時間最長的一段。
串行方式指的是內有引入流水線方式。
流水線計算公式爲: 1條指令執行時間+(指令條數-1)*流水線週期 理論公式
①理論公式:(t1+t2+……tk)+(n-1)Δt
②實際公式: kΔt+(n-1)Δt
做題時,先驗證理論公式,再驗證實際公式
流水線-超標量流水線。效率提升爲度的倍數。假設有10條指令要去執行的話,度爲2的話,我們就相當於只需要5條指令的執行時間。度可以理解爲N條相同的流水線
流水線吞吐率計算
流水線的吞吐率時值在單位時間內流水線所完成的任務數量或輸出的結果數量。
TP=指令條數/流水線執行時間 流水線最大吞吐率:
TPmax=Limn→∞n/(k+n-1)Δt =1/Δt
存儲系統(★★★★)
Cache概念
在計算機的存儲系統體系中,Cache時訪問速度最快的層次(若有寄存器,則寄存器最快)。
使用Cache改善系統性能的依據時程序的局部性原理。局部性原理又分爲時間局部性原理和空間局部性原理,能夠防止抖動(電腦閃屏)。
如果以h代表對Cache的訪問命中率,t1表示Cache的週期時間,t2表示主存儲器週期時間,以讀操作爲例,使用“Cache+主存儲器”系統的平均週期爲t3,則:
t3=hxt1+(1-h)xt2
其中(1-h)又稱爲失效率。
Cache映像
直接相連映像:硬件電路較爲簡單,但衝突率最高。
全相連映像:電路難於設計和實現,只適用於小容量的cache,衝突率最低。
組相連映像:直接相聯與全相聯的折中。 地址映像是將主存與Cache的存儲空間劃分爲若干大小相同的頁(或者稱爲快)。先分區,再分組,組和組之間採用直接相連映像,組內採用全相連映像。
例如,某機的主存容量爲1GB,劃分爲2048頁,每頁512kb;Cache容量爲8mb,劃分爲16頁,每頁512kb。
磁盤結構與參數(★★)
磁盤:軟盤,機械硬盤等屬於磁盤,SSD屬於不屬於磁盤。
磁盤用一個環形的盤片來保存數據,上面塗上特殊的材質來保存數據,讀取數據用專業的設備,磁頭來保存數據,數據存儲在盤面的磁道扇區上面。讀取數據的時候,需要磁頭移動到對應的磁道上面,這個時間就被稱爲尋道時間。
在一個磁道上面,會分爲很多個扇區,等待讀寫的扇區轉到磁道下方所用的時間,稱爲等待時間。
存取時間=尋道時間+等待時間。
例題:假設某磁盤的每個磁道劃分成9個物理塊,每塊存放1個邏輯記錄。邏輯記錄R0,R1,…,R8存放在同一個磁道上,記錄的安排順序如下表所示:
物理塊 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
邏輯記錄 | R1 | R2 | R3 | R4 | R5 | R6 | R7 | R8 | R9 |
如果磁盤的旋轉速度爲 27ms/周,磁頭當前處在 R0 的開始處。若系統順序處理這些記錄,使用單緩衝區,每個記錄處理時間爲 3ms,則處理這 9 個記錄的最長時間爲( );若對信息存儲進行優化分佈後,處理 9個記錄的最少時間爲( )。
分析:系統讀記錄的時間爲27/9=3ms,
對R1的處理,先讀出記錄需要3ms,然後處理,同時磁頭也在轉動,當處理完R1時,磁頭已經到達R3的位置。
再處理R2 ,磁頭需要旋轉到R2的開始位置,至此,一共花費了30ms。後面的R2至R8依此類推。
···
再處理R9,讀出記錄3ms,然後處理需要3ms。
因此整個的時間爲:8*30+3+3=246ms
對於第二種情況,若對信息進行分佈優化的結果如下所示:
從上表可以看出,當讀出記錄R1並處理結束後,磁頭剛好轉至R2記錄的開始處,立即就可以讀出並處理,因此處理9個記錄的總時間爲:
9×(3ms(讀記錄)+3ms(處理記錄))=9 × 6ms=54ms