這一節學的內容是關於計算機的組成與體系結構,包括數制、計算機結構、流水線、存儲、總線等。都是以前學過但忘掉已經好久的東西,數制高中的時候就學過,記得當時始終搞不懂二進制「奇怪」的進位規則,由於逢十進一已經深刻腦海;大學的時候學微機原理,爲了應付考試,你們都能把CPU各部分的功能滾瓜爛熟;學習CPU運行原理、總線尋址、流水線等知識時,也曾驚歎於那巧妙而充滿智慧的設計。可現在再學習這些時仍然像個門外漢通常;而天天用着高級語言碼字的我在碰到二進制時仍是須要轉換半天。這塊的知識博大精深,考慮到實用與精力的權衡,就跟着視頻走,學點冰山一角吧。學習
1. Flynn分類法設計
這是Flynn在1966年從計算機的指令流和數據流兩個角度出發給出的計算機分類方法,但目前並無MISD型計算機,由於這種計算機被證實不可能,至少是不實際。從SISD到MIMD,從簡單到複雜,如今的計算機仍然在沿着Flynn分類法的預期發展。視頻
2. 指令集
指令集分爲複雜指令集和精簡指令集兩大陣營,以英特爾爲表明的廠商採用複雜指令集系統,處理器可支持各類各樣功能齊全的指令,但這一指令系統的問題在於其設計複雜、指令長度區別太大致使流水線效率不高、功耗高太高等。到了上世紀八十年代,計算機科學家們提出了基於精簡指令集的處理器設計思想,只保留不多的經常使用指令並將一條複雜的指令用幾條簡單的指令代替,這是計算機發展史上的一次革命,精簡指令集一出現便受到了普遍歡迎,惋惜英特爾在設計8086時尚未出現精簡指令集,英特爾擔憂切換到精簡指令集會丟失x86系列芯片在微處理器市場的領先地位,便繼續發展其複雜指令集處理器,而且最終靠着市場和資金的優點,打贏了指令集之戰,如今英特爾、AMD的處理器仍是基於複雜指令集,不過奔騰以及後來的處理器也都吸收了精簡指令集的長處,而目前基於ARM的移動處理器都採用精簡指令集。blog