軟件設(shè)計師復(fù)習(xí) 計算機
1 計算機系統(tǒng)知識
1.1 計算機系統(tǒng)基礎(chǔ)知識
1.1.1 計算機硬件
計算機硬件由:運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備5大部件組成。
CPU的功能包括:程序控制、操作控制、時間控制、數(shù)據(jù)處理,對系統(tǒng)內(nèi)部和外部中斷(異常)做出響應(yīng)。
1.1.2 CPU
CPU由:運算器、控制器、寄存器組和內(nèi)部總線等部件組成。
運算器由:算術(shù)邏輯單元ALU、累加寄存器AC、數(shù)據(jù)緩沖寄存器DR和狀態(tài)條件寄存器PSW等組成,主要功能是:算數(shù)運算、邏輯運算。
控制器控制CPU工作,決定計算機運行過程的自動化,包括:指令寄存器IR、程序計算器PC、地址寄存器AR、指令譯碼器ID。
寄存器組分為:專業(yè)寄存器和通用寄存器,運算器和控制器中的寄存器是專用寄存器,作用是固定的,通用寄存器用途廣泛并可有程序員規(guī)定其用途。
1.1.3 數(shù)據(jù)表示
機器字長為n時:
- 原碼和反碼可表示的整數(shù)范圍:-(2n-1-1) ~ 2n-1-1
- 原碼和反碼可表示的小數(shù)范圍:-(1-2-(n-1)) ~ 1-2-(n-1)
- 補碼和移碼可表示的整數(shù)范圍:-2n-1 ~ 2n-1-1
- 補碼和移碼可表示的小數(shù)范圍:-1 ~ 1-2-(n-1)
浮點數(shù)的數(shù)值范圍由階碼決定,精度由尾數(shù)決定。為了充分利用尾數(shù)表示更多數(shù)字,通常采用規(guī)格化浮點數(shù),將尾數(shù)絕對值限定在[0.5, 1]。
浮點數(shù)運算對階:使兩個數(shù)的階碼相同,把階碼小的數(shù)右移。
1.1.4 校驗碼
奇偶校驗碼:碼距為2,可以檢測奇數(shù)位不能檢測偶數(shù)位,包括:水平奇偶校驗碼、垂直奇偶校驗碼、水平垂直奇偶校驗碼。
海明碼:利用奇偶性檢錯和糾錯,k個校驗位,2k-1≥n+k。
循環(huán)冗余校驗碼:k個數(shù)據(jù)位+r個校驗碼,采用模2運算,不能糾錯。
1.2 計算機體系結(jié)構(gòu)
1.2.1 計算機體系結(jié)構(gòu)發(fā)展
Flynn分類法:單指令單數(shù)據(jù)流SISD、單指令多數(shù)據(jù)流SIMD、多指令單數(shù)據(jù)流MISD、多指令多數(shù)據(jù)流MIMD,MISD理論上是不存在的。
CISC:復(fù)雜指令計算機,功能更強、速度慢,需要多個CPU周期。
RISC:精簡指令計算機,功能較少、速度快,可單周期執(zhí)行,關(guān)鍵技術(shù):重疊寄存器窗口技術(shù)、優(yōu)化編譯技術(shù)、流水線、硬布線。
RISC的流水線技術(shù)包括:超流水線SPL、超標量SS、超長指令字VLIW。
1.2.2 存儲系統(tǒng)
按存儲器位置:
- 內(nèi)存:也稱主存,設(shè)在主機或主板,容量小、速度快。
- 外存:也稱輔存,如磁盤、磁帶、光盤等,存放當前不參加運行的大量信息,需要時調(diào)入內(nèi)存。
按存儲器的構(gòu)成材料:
- 磁存儲器:如磁芯、磁帶、磁盤。
- 半導(dǎo)體存儲器:根據(jù)數(shù)據(jù)是否需要刷新分為靜態(tài)和動態(tài)兩類。
- 光存儲器:如光盤。
按存儲器的工作方式:
- 讀寫存儲器RAM
- 只讀存儲器ROM:固定只讀存儲器ROM、可編程只讀存儲器PROM、可擦除可編程只讀存儲器EPROM、電擦除可編程只讀存儲器EEPROM、閃速存儲器FM。
按訪問方式:
- 按地址
- 按內(nèi)容:相聯(lián)存儲器
按尋址方式:
- 隨機存儲器RAM:訪問任何一個存儲單元的時間是相同的。
- 順序存儲器SAM:訪問數(shù)據(jù)和數(shù)據(jù)位置有關(guān),如磁帶。
- 直接存儲器DAM:介于隨機存取和順序存取之間,如磁盤。
高速緩存Cache位于CPU和主存之間,速度比主存快5-10倍,由快速半導(dǎo)體存儲器構(gòu)成,對程序員是透明的。
虛擬存儲器是一種邏輯存儲器,實質(zhì)是對物理存儲設(shè)備進行邏輯化處理,使用CPU生成的虛擬地址來訪問主存,使用專門的內(nèi)存管理單元MMU將虛擬地址轉(zhuǎn)為物理地址來訪問主存。
1.2.3 輸入輸出技術(shù)
直接內(nèi)存存取DMA:數(shù)據(jù)在內(nèi)存和IO設(shè)備間直接成塊傳說,不需要CPU的干涉,只需要在開始和結(jié)束時進行處理,實際操作由DMA硬件直接完成。
無條件傳送、利用查詢傳送和利用中斷傳送都需要CPU執(zhí)行程序,限制了數(shù)據(jù)傳輸速度。
1.2.4 總線結(jié)構(gòu)
總線包括:數(shù)據(jù)總線、地址總線、控制總線。
數(shù)據(jù)總線DB用來傳輸數(shù)據(jù),是雙向的,DB的寬度決定了CPU和計算機其他設(shè)備交換數(shù)據(jù)的位數(shù)。
地址總線AB用于傳送CPU發(fā)出的地址信息,是單向的,AB的寬度決定了CPU的最大尋址能力。
控制總線CB用來傳送控制信號、時序信號和狀態(tài)信息等,每條線是單向的但作為整體是雙向的。
1.3 計算機安全
1.3.1 計算機安全概述
影響數(shù)據(jù)安全的因素:內(nèi)部因素、外部因素。
1.3.2 加密和認證技術(shù)
對稱加密(私人密鑰技術(shù))
- DES:用56位密鑰對64位數(shù)據(jù)加密
- 3DES:用兩個56位密鑰加密
- RC5
- IDEA:類似于3DES,使用128位密鑰加密。
- AES:分組加密,密鑰可用128、192和256位。
非對稱加密(公開密鑰技術(shù))
-
加密(數(shù)字加密):公鑰加密、私鑰解密
-
認證(數(shù)字簽名):私鑰簽名(加密)、公鑰認證(解密)
-
RSA
1.3.3 計算機可靠性
可靠性:從開始運行倒某時刻的時間內(nèi)能正常運行的概率。
#軟考#