計算機組成原理

第1章:計算機系統概論程序員

一、計算機系統由哪兩部分組成?計算機系統性能取決於什麼?算法

    計算機系統是由「硬件」和「軟件」組成。衡量一臺計算機性能的優劣是根據多項技術指標綜合肯定的,既包括硬件的各類性能指標,又包括軟件的各類功能。編程

1)計算機系統由硬件和軟件兩部分組成。數組

2)計算機系統性能由硬件和軟件共同決定。

二、計算機系統5層層次結構從下到上由哪五層組成?哪些是物理機,哪些是虛擬機?
1)微程序機器、傳統機器、操做系統機器、彙編語言機器、高級語言機器
2)微程序機器和傳統機器是物理機,其餘是虛擬機。

三、在計算機系統結構中,什麼是翻譯?什麼是解釋?
1)翻譯:將一種語言編寫的程序所有翻譯成另外一種語言,而後再執行;
2)解釋:將一種語言編寫的程序的一條語句翻譯成另外一種語言的一條或多條語句,而後執行,執行完這條語言後,再解釋下一條。

四、什麼是計算機體系結構?什麼是計算機組成?以乘法指令爲例說明兩者區別。
1)計算機體系結構是指那些可以被程序員看到的計算機的屬性。如指令集、數據類型等;
2)計算機組成是指如何實現計算機體系結構所體現出來的屬性;
3)以乘法指令爲例,計算機是否有乘法指令,屬於體系結構的問題。乘法指令是採用專用的乘法器,仍是使用加法器和移位器構成,屬於計算機組成的問題。

五、馮諾依曼機器的主要特色?
1)計算機由運算器、存儲器、控制器、輸入設備和輸出設備五大部分組成;
2)指令和數據存儲在存儲器中,並能夠按地址訪問;
3)指令和數據均以二進制表示;
4)指令由操做碼和地址碼構成,操做碼指明操做的性質,地址碼錶示操做數在存儲器中的位置;
5)指令在存儲器內按順序存放,一般按自動的順序取出執行;
6)機器以運算器爲中心,I/O設備與存儲器交換數據也要經過運算器。(所以,後來有了以存儲器爲中心的計算機結構)

六、畫出現代計算機的組成框圖。緩存


P10,圖1.9

七、什麼是存儲單元、存儲字、存儲字長、存儲體?
存儲單元:存儲一個存儲字並具備特定存儲地址的存儲單位;
存儲字:一個存儲單元中存放的全部的二進制數據,按照某個地址訪問某個存儲單元獲取的二進制數據。
存儲字長:存儲字中二進制數據的位數,即按照某個地址訪問某個存儲單元獲取的二進制數據的位數;
存儲體:由多個存儲單元構成的存儲器件。

八、主存儲器中,什麼是MAR,什麼是MDR,存儲器的最大容量由什麼決定?
1)MAR:存儲地址寄存器,保存須要訪問的存儲單元地址。反映存儲單元的個數。
2)MDR:存儲數據寄存器,緩存讀出/寫入存儲單元的數據。反映存儲字長。
3)存儲器的最大容量由MAR寄存器的位數和MDR寄存器的位數決定。

九、什麼是機器字長,什麼是存儲字長長?
機器字長:CPU一次可以處理的二進制數據的位數。
存儲字長:按照某個地址訪問某個存儲單元獲取的二進制數據的位數。

十、假設MAR寄存器的位數爲16位,MDR寄存器的位數爲16位,存儲器的最大容量是多少?
1)MAR寄存器的位數爲16位,能表示的地址個數爲2的16次方,爲64K;
2)MDR寄存器的位數爲16位,說明存儲字長爲16位,也即2個字節;
3)存儲器的最大容量爲64K * 2B = 128K Byte

------------------------------------------------------------------------------------------------------

第三章 系統總線
一、爲何要使用總線?
在馮諾依曼結構中,各個部件之間均有單獨連線,不只線多,並且致使擴展I/O設備很不容易。即擴展一個I/O設備,須要鏈接不少線。
所以,引入了總線鏈接方式,將多個設備鏈接在同一組總線上,構成設備之間的公共傳輸通道。

二、總線的兩大基本特徵是什麼?
1)共享:多個部件鏈接在同一組總線上,各個部件之間都經過該總線進行數據交換。
2)分時:同一時刻,總線上只能傳輸一個部件發送的信息;

三、系統總線按照傳輸信息的不一樣,分紅哪幾類?是單向的,仍是雙向的?
1)分紅數據總線、地址總線以及控制總線。
2)數據總線:各個功能部件之間傳送數據信息,雙向傳輸;
3)地址總線:用來指明數據總線上,源數據或目的數據所在的主存單元的地址。單向:由CPU發出
4)控制總線:用來發送各類控制信號。對於控制總線中的單根線,是單向的,即只能由一個部件發向另外一個部件。而一組控制總線中,有輸入也有輸出,所以,控制總線也能夠當作是雙向的。

三、什麼是總線寬度、總線帶寬、總線複用、信號線數?
1)總線寬度:數據總線的根數,通常是8的倍數。是衡量計算機系統性能的重要指標;
2)總線帶寬:即總線數據傳輸速率,總線上每秒可以傳輸的最大字節量。
3)總線複用:一條信號線上分時傳送兩種信號。例如數據總線和地址總線的分時複用;
4)信號線數:地址總線、數據總線和控制總線三種總線的線數之和。

四、假設總線的工做頻率爲33MHz,總線寬度爲32位,則它最大的傳輸速率是多少?
33 * (32/8) = 132 MB/s

五、簡要說明單總線結構的概念及缺點?(現代計算機爲何要採用多總線結構?)
在單總線結構中,全部的部件(CPU、主存、I/O設備)都鏈接在一組總線上。
但全部的信息傳送都要經過這組總線,同時只能有一個部件向總線上發送信息,致使總線成爲系統的瓶頸。
所以,發展出來了多總線結構,其基本思想均是將速度相近的設備掛接在同一組總線上,總線之間經過總線控制器相連。
例如CPU和Cache之間、I/O設備之間等。


六、集中式總線判優控制有哪三種方式,哪一種方式的優先級不能改變?
1)鏈式查詢、計數器定時查詢、以及獨立請求。
2)鏈式查詢的優先級不能改變,離控制器最近的優先級最高。

七、簡述鏈式查詢、計數器定時查詢以及獨立請求三種方式的工做原理。
(略)


八、什麼是總線週期,分爲哪幾個階段?
1)總線週期:總線上兩個部件完成一次完整且可靠的數據傳輸時間;
2)分爲四個階段:
申請分配階段:申請總線
尋址階段:發出地址及有關命令
傳數階段:進行數據交換
結束:從總線上撤除信號,讓出總線

九、什麼是總線通訊控制,總線通訊控制有哪幾種?
1)總線通訊控制:解決通訊雙方如何獲知傳輸開始和傳輸結束,以及如何協調配合;
2)同步通訊、異步通訊、半同步通訊、分離式通訊

十、什麼是同步通訊?其優勢和缺點?
1)同步通訊:總線上各個部件由統一的時鐘信號控制;在總線週期中,每一個時鐘週期各個部件如何動做都有明確的規定。
2)優勢:速度快,各個模塊間配合簡單
3)缺點:以總線上最慢的部件來設計公共時鐘,影響總線效率。

十一、什麼是異步通訊?異步通訊分爲哪幾種類型?
1)異步通訊:總線上各部件沒有統一的時鐘標準,採用應答式通訊;(主模塊發出請求後,一直等到從模塊反饋回來應答信號以後纔開始通訊)
2)不互鎖、半互鎖、全互鎖。(須要瞭解各類方式的含義)

十二、什麼是波特率?什麼是比特率?(須要掌握如何計算波特率、比特率)
波特率:單位時間內傳送的二進制數據數據的位數,單位bps
比特率:單位時間內傳送的有效的二進制位數。

1三、異步通訊時,常規須要設置的參數有哪些?
波特率、中止位(1/2/1.5)、校驗位(奇校驗、偶校驗、無校驗)

1四、簡述半同步通訊的基本原理。
半同步通訊結合同步通訊和異步通訊。
同步通訊:採用統一的時鐘,規定了在必定的時鐘週期幹什麼事情;
異步通訊:若是從模塊沒有準備好,增長一個「等待響應」信號。

1五、簡述分離式通訊的基本原理。
主模塊發出地址和命令以後,放棄總線,在從模塊準備數據期間,使得總線能夠被其餘設備所用。提升總線利用率。
可是,這種方式控制比較複雜。

1六、奇偶校驗能夠糾錯嗎?漢明碼能夠糾錯碼?
1)奇偶校驗只能檢錯,不能糾錯。
2)漢明碼能夠糾錯。

-----------------------------------------------------------------------------------------------------------------------------------------

第四章 存儲器

一、存儲器按存取方式,能夠分紅哪四類?哪些屬於隨機訪問存儲器,哪些屬於串行訪問存儲器?
1)能夠分爲隨機存儲器、只讀存儲器、順序存儲器和直接存儲器;
2)隨機存儲器和只讀存儲器屬於隨機存儲器,即存取時間與物理地址無關;
3)順序存儲器(典型的如磁帶)和直接存儲器(典型的如磁盤)屬於串行存儲器,即存取時間與物理地址有關。


二、衡量存儲器使用哪三個指標?寄存器、緩存、主存中,哪一個速度最快?哪一個最便宜?
1)速度、容量、位價格。
2)寄存器速度最快,主存最便宜。

三、常見的存儲系統層次結構有哪兩種?透明性如何?各自用來解決什麼問題的?
1)緩存-主存層次:用來緩解CPU和主存速度不匹配的問題,由硬件來完成,對全部的程序員徹底透明。
2)主存-輔存層次:用來解決主存容量不夠的問題,由操做系統和硬件共同完成,對應用程序設計者透明,對系統程序設計者不透明。

(如今通常存儲器都即能按字訪問,也能按照字節訪問,所以,存儲器編址時,每一個字節都有一個獨立的地址。)
四、字在存儲單元中有兩種存儲方式,大端方式和小端方式。各是什麼含義?x86採用的是哪一種存儲方式?
1)大端方式:字的低位存在內存的高地址中,而字的高位存在內存的低地址中;
2)小端方式:字的低位存在內存的低地址中,而字的高位存在內存的高地址中。
3)x86CPU採用的是小端方式。

五、主存的三個主要技術指標
存儲容量、存取速度和存儲帶寬

六、什麼是存取時間?什麼是存取週期?哪一個大?
1)存取時間:啓動一次存儲器完成本次操做(讀或寫)所需的時間;
2)存取週期:連續兩次啓動存儲器所須要的最小間隔時間;
3)存取週期包含存取時間;

七、什麼是存儲器帶寬?(要了解如何計算存儲器帶寬)
單位時間內存儲器存取的信息量;

八、半導體存儲芯片譯碼驅動包含哪兩種方式,請簡要說明。
1)線選法:全部的地址芯片經過一個譯碼器譯碼,選擇一個存儲單元的各位,適合於存儲容量不大的芯片;
2)重合法:將地址分爲兩組,每組經過一個譯碼器譯碼,選擇行或列,行、列交叉處就是要訪問的存儲位。

九、隨機存儲器包含哪兩大類?哪一個須要刷新?請從速度、容量、價格等方面進行簡要比較。
1)靜態RAM:採用鎖存器原理實現;
2)動態RAM:採用電容原理實現,須要刷新。
3)相比於動態RAM,靜態RAM的速度快、容量小、價格高,通常用於緩存,而動態RAM通常用於內存。

十、只讀存儲器有哪幾種?
1)掩模ROM(MROM):出廠後內容不能被更改。
2)PROM:可編程只讀存儲器,能夠進行一次性編程;
3)EPROM:可擦除只讀ROM,用紫外線照射;
4)EEPROM:電可擦除只讀ROM。
6)FLash Memory:採用EEPROM的非易失性存儲器。

十一、單片存儲器芯片的容量有限,很難知足實際須要,所以必須將若干存儲芯片鏈接在一塊兒才能組成足夠容量的存儲器。
存儲器的擴展一般有位擴展和字擴展,什麼是字擴展,什麼是位擴展?請舉例簡要說明
1)位擴展:增長存儲器的字長,例如兩個1K * 4位的存儲芯片構成1個1K*8位的存儲器;
2)字擴展:增長存儲器的字數,例如兩個1K * 8位的存儲芯片構成1個2K * 8位的存儲器;
一般字擴展和位擴展兩種方式混合使用。

十二、熟慮掌握存儲器的擴展,包括地址空間分配、地址線的鏈接、數據線的鏈接、片選信號的產生及鏈接等;
參看P94頁,例4.1


1三、假設欲檢測的二進制代碼爲n位,爲了使其具備1位的糾錯能力,需添加K位檢測位,組成n+k位的代碼。問,應添加多少位檢測位?
應添加的檢測位位數:2的k次方大於等於n+k+1。
由於要使其有1位的檢測能力,必須使用k位來講明n+k位到底哪一位出現了錯誤,k位能表達的數量爲2的k次方,而n+k位到底哪一位
出現了錯誤或者是所有正確,共有n+k+1種情況,所以,k的取值須要知足:2的k次方大於等於n+k+1


1四、對於漢明碼,應熟練掌握漢明碼的編碼方式(按照配偶或配奇的原則),以及給出漢明碼,獲得要傳送的原始信息(包括糾錯過程)。


1五、提升訪存速度的三種方式。
1)採用高速元器件;
2)採用存儲層次結構:cache-主存結構;
3)調整主存結構:包括單體多字,多體並行兩種方式。

1六、簡述單體多字的存儲系統的工做原理,及其優勢。
1)單體多字存儲系統一次訪存取出多個CPU字,即存儲字爲CPU字的n倍(假設一次訪存取出n個cpu字)。
2)優勢是:顯著提升了存儲器帶寬。

1七、多體並行系統有哪兩種編址方式?請簡要說明其編址方式及其優勢。
1)高位交叉編址方式:存儲體的編址方式爲順序存儲,即一個存儲體存滿後,再存入下一個;存儲單元地址的高位爲存儲體的編號。
高位交叉編址並不能提升單次訪存速度,但能使多應用並行訪存,提升系統的併發性。

2)低位交叉編址方式:存儲體的編址方式爲交叉存儲。即程序連續存放在相鄰的存儲體之中。存儲單元地址的低位爲存儲體的編號。
低位交叉編址能顯著提升單次訪存速度。

1九、在四位低位交叉編址中,假設存取週期爲T,總線傳輸週期爲τ,爲了實現流水線方式存儲,應知足什麼條件?若是連續讀取四個字,所須要的時間是多少?
1)T= 4τ
2)連續讀取四個字,所須要的時間爲T + (4-1)τ
注意:假設不是低位交叉編址,而是高位交叉編址,連續讀取四個字所須要的時間仍然爲4T。

20、須要你們掌握多體並行存儲器在高位交叉編址(順序存儲)和低位交叉編址(交叉存儲)的狀況下,存儲器帶寬的計算方式。

2一、在CPU和內存之間引入cache的緣由。
1)避免cpu空等I/O訪存;
2)緩解CPU和主存速度不匹配的問題。

2二、什麼是程序的局部性原理。
CPU從主存取指令或數據,在必定時間內,只是對主存局部地址區域訪問。

2三、Cache命中率、平均訪問時間以及訪問效率的計算。

2四、Cache寫操做有哪兩種方式?
1)寫直達法:寫操做既寫入Cache又寫入主存;
2)寫回法:只把數據寫入Cache而不寫入主存,當Cache中數據被替換出去以後才寫入主存。

2五、將主存地址映射到Cache地址稱爲地址映射,常見的Cache映射方式有哪幾種?
直接映射、全相聯映射、組相聯映射。

2六、直接映射的優缺點?
優勢:地址變換速度快。缺點:cache利用率不高,塊衝突率高;

2七、全相聯映射的優缺點?
優勢:cache利用率高,塊衝突率低。缺點:地址變換複雜,須要較多的硬件。

2八、須要你們掌握各類映射方式之下,寫出主存地址格式、cache地址格式,以及主存地址向cache地址的轉換。

2九、Cache經常使用的替換算法有哪些?哪一個命中率最高?
1)先進先出、近期最少使用算法和隨機替換算法;
2)命中率最高的是近期最少使用算法;

30、磁盤的三地址結構包括哪些?
柱面、磁頭號和扇區號

---------------------------------------------------------------------------------------------------------

第五章 輸入輸出系統

一、I/O系統的發展大體能夠分爲哪4個階段?
1)早期(分散鏈接、串行工做、程序查詢)
2)接口模塊和DMA階段(總線鏈接、並行工做、中斷及DMA)
3)通道階段(通道是具備特殊功能的處理器)
4)I/O處理機階段
I/O系統的發展其實是逐步將CPU從繁重的I/O工做中解放出來的過程;


二、I/O設備編址有哪兩種方式?各有什麼優缺點?
1)統一編址方式:和存儲器統一編址,I/O地址做爲存儲器地址的一部分;無須用專用的I/O指令,但佔用存儲器空間。
2)獨立編址方式:和存儲地址分開編址,需用專用的I/O指令。

三、I/O設備與主機的聯絡方式有哪幾種?
I/O設備與主機間交互信息時必須瞭解彼此的狀態。根據I/O設備工做速度的不一樣,能夠分爲3類:
1)當即響應:無論其狀態(認爲其時刻準備好),適用於慢速設備。
2)應答信號:經過應答信號來進行交互;
3)同步時標:採用統一的時鐘信號。

四、I/O總線包括哪四類?
數據線、設備選擇線、狀態線、命令線

五、I/O設備一般使用D觸發器(完成觸發器)和B觸發器(工做觸發器)來標識設備所處的狀態。
D=0,B=0:暫停狀態;
D=0,B=1:準備狀態
D=1,B=0:就緒狀態


六、程序查詢的基本工做原理。
cpu不斷去查詢I/O設備狀態,致使CPU和I/O設備串行工做。

七、什麼是中斷?
計算機在執行程序過程當中,當出現異常清空或特殊請求時,計算機中止現行程序的運行,轉去處理這些異常清空或特殊請求,處理結束後,再返回現行程序的間斷處,繼續執行原程序,即爲中斷。

八、中斷服務程序的基本流程包括哪四部分?
1)保護現場
2)中斷服務
3)恢復現場
4)中斷返回

九、什麼是單重中斷和多重中斷?
1)單重中斷:不容許中斷現行的中斷服務程序;
2)多重中斷:容許級別更高的中斷源中斷現行的中斷服務程序,也稱爲中斷嵌套;

十、CPU響應中斷的時機?
當前指令執行完畢後,cpu發出中斷查詢信號,也就是說,中斷響應必定是在每條指令執行結束以後進行的,不可能在指令執行過程當中響應中斷。

十一、什麼是DMA?
DMA:直接內存訪問。在主存和I/O設備之間創建獨立的總線鏈接。

十二、在DMA方式中,因爲DMA接口與CPU共享主存,可能會出現二者爭用主存的衝突,爲解決衝突,DMA和主存交換數據時,一般採用哪三種工做方式?
1)中止CPU訪問主存:DMA訪存優先級高;
2)週期挪用(竊取):DMA挪用存儲或竊取總線使用權一個或幾個主存存取週期;
3)DMA和CPU交替訪問:將CPU工做週期分紅兩部分,一部分供DMA訪存,一部分供CPU訪存。

1三、DMA工做過程包括哪三部分?
1)預處理
2)數據傳輸
2)後處理

--------------------------------------------------------------------------------------------------------------------------------------
第六章 計算機的運算方法
一、掌握有符號數的原碼計算方法,以及經過原碼求真值;

二、掌握補碼計算的方法,以及經過補碼求原碼,而後求真值的方法。
1)經過原碼求補碼:符號位不變,各位取反,末位加1;
2)經過補碼求原碼:符號位不變,各位取反,末位加1;

三、原碼中0有2種表示方法(正零和負零),補碼中0只有一種表示方法(正零和負零的表示方法一致)

四、假設有符號數的位數爲8(包括符號位),補碼能表示的真值的範圍?
補碼能表示的真值範圍爲-128~+127(參見補碼定義)

五、掌握求反碼以及移碼的方法。


六、什麼是定點表示?什麼是浮點表示?
1)定點表示:小數點固定在某一位置的數爲定點數;
2)浮點表示:小數點位置能夠浮動的數。

七、浮點數在機器中的表示形式,由哪幾部分組成?
由尾數、數符、階碼、階符四部分組成。

八、掌握規格化浮點數的表示範圍(最大正數、最小正數、最大負數、最小負數)的計算方法。

九、IEEE754標準規定的浮點數由哪幾部分組成?
由數符、階碼(含階符)以及尾數組成。

十、IEEE754標準規定的浮點數中,階碼和尾數用什麼形式表示?
階碼用移碼錶示,其偏移量是2^(n-1),尾數用原碼錶示。

十一、float佔多少位?double佔多少位?
float爲短實數,佔32位,其中階碼8位,尾數23位。
double爲長實數,佔64位,其中階碼佔11位,尾數爲52位。

十二、對正數進行算術移位,當正數採用源碼、補碼、反碼時,左移或右移時,低位或高位添補什麼代碼?
對於正數,其源碼、補碼、反碼均等於真值,左移時,低位添補0,右移時,高位添補0。

1三、對負數進行算術移位,當負數採用源碼、補碼、反碼時,左移或右移時,低位或高位添補什麼代碼?
對於源碼,左移或右移時,低位或高位均添補0;
對於補碼:左移時,低位添補0,右移時高位添補1
對於反碼:左移或右移時,低位或高位均添補1;

1四、什麼是邏輯移位?
邏輯移位是對無符號數的移位,因爲無符號數不存在符號位,左移時,高位移丟,低位補零。右移時,低位移丟,高位補零。

1五、加法和減法時,什麼狀況下可能發生溢出?如何簡單判斷髮生溢出?
1)正數加正數,正數減負數,負數加負數,負數減正數時,可能會發生溢出。
2)若是參加操做的兩個數符號相同(轉換成補碼的加法),其結果與源操做數符號不一樣,即爲溢出。
3)若是補碼採用1位符號位,若是最高有效位的進位和符號位的進位不一樣,則發生溢出。


1六、定點乘法運算可使用加法和移位來實現嗎?
能夠。

1七、浮點加減運算基本按照哪幾步來進行?
1)對階:使小數點對齊;
2)尾數求和:將對階後的兩個尾數按照定點加減運算規則求和;
3)規格化:尾數規格化;
4)舍入:尾數右規時,丟失數值位;
5)溢出判斷:判斷結果是否溢出。

1八、如何判斷浮點運算結果是否溢出?
階碼是否超出了其表示範圍。(使用2個符號位判溢出)

--------------------------------------------------------------------------------------------------------------------
第七章 指令系統
一、什麼是機器指令?什麼是指令系統?
1)機器指令:每一條機器語言的語句;
2)指令系統:所有機器指令的集合。

二、一條指令包含哪兩個主要部分?請簡要說明各部分做用。
1)操做碼:指明指令要完成的操做;
2)地址碼:指明指令要操做的數據或數據來源;

三、操做碼長度有固定長度和可變長度兩種,各自有什麼優勢?
1)固定長度:便於硬件設計,指令譯碼時間短;
2)可變長度:壓縮了操做碼平均長度;

四、指令中地址碼中的地址能夠是哪些設備的地址?
能夠是主存地址、寄存器地址或I/O設備的地址;

五、指令中地址的個數能夠有幾個?
四地址、三地址、二地址、一地址以及零地址。

六、假設指令中有四個地址、三個地址、兩個地址以及一個地址,各自須要訪存幾回?
1)四地址:訪存4次;
2)三地址:訪存4次;
3)兩地址:訪存3次;
4)一地址:訪存2次;

七、當使用寄存器代替指令字中的地址碼字段後,有哪些優勢?
1)擴大指令字的尋址範圍;
2)縮短指令字長;
3)減小訪存次數

八、數據在存儲器中存儲時,爲何要按照邊界對齊?
減小訪存次數。

九、尋址方式包括哪兩類?
1)指令尋址:下一條將要執行的指令的指令地址;
2)數據尋址:肯定本指令的操做數地址。

十、什麼是形式地址?什麼是有效地址?
1)形式地址:指令的地址碼字段一般都不表明操做數的真實地址,成爲形式地址,記爲A;
2)有效地址:操做數的真實地址,記爲EA,由尋址特徵和形式地址共同決定;

十一、瞭解各類尋址方式的概念及根據形式地址造成有效地址的方式。
當即尋址、直接尋址、隱含尋址、間接尋址、寄存器尋址、寄存器間接尋址、基址尋址(隱式或顯式)、變址尋址、相對尋址、堆棧尋址


十二、什麼是RISC?什麼是CISC?
RISC:精簡指令集;
CISC:複雜指令集;





--------------------- 本文來自 Adjerrekaf 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/Adjerrekaf/article/details/78880089?utm_source=copy併發

相關文章
相關標籤/搜索