CPU內(nèi)部是如何運(yùn)行的
CPU內(nèi)部是如何運(yùn)行的
究竟CPU內(nèi)部是如何運(yùn)行的呢,下面是學(xué)習(xí)啦小編帶來的關(guān)于CPU內(nèi)部是如何運(yùn)行的的內(nèi)容,歡迎閱讀!
CPU內(nèi)部是如何運(yùn)行的:
1 晶體管是CPU中的核心部件.
2 可以通過控制晶體管并對(duì)其進(jìn)行邏輯組合便可以計(jì)算.
那么1+1=2是如何通過晶體管來進(jìn)行呢?
要知道1+1=2如何運(yùn)作,首先需要知道1和2 在計(jì)算機(jī)中如何通過晶體管來表示呢?
在上文中我們已經(jīng)提到,一個(gè)小燈泡的狀態(tài)可以通過兩個(gè)晶體管(開關(guān))進(jìn)行邏輯組合來控制.現(xiàn)在你可以這樣理解:
一個(gè)小燈泡的狀態(tài)代表著計(jì)算機(jī)中的兩個(gè)數(shù)值:亮著表示1 關(guān)閉表示0
現(xiàn)在我們可以拿出四個(gè)小燈泡,并且把四個(gè)小燈泡排成一排,如果你稍微懂一些二進(jìn)制的話,現(xiàn)在已經(jīng)很清楚了.我們可以通過這四個(gè)小燈泡的開關(guān)組合最多能夠表示我們常用數(shù)制即十進(jìn)制的16個(gè)數(shù)字(也就是2的4次方).
現(xiàn)在就會(huì)有一下情況出現(xiàn):
1 四個(gè)小燈泡全部熄滅: 二進(jìn)制:0000 十進(jìn)制:0
2 從右面數(shù)第一個(gè)小燈泡打開,其他關(guān)閉: 二進(jìn)制:0001 十進(jìn)制:1
3 從右面數(shù)第二個(gè)小燈泡打開,其他關(guān)閉: 二進(jìn)制:0010 十進(jìn)制:2
依次類推,直到全部的四個(gè)小燈泡都打開: 二進(jìn)制:1111 十進(jìn)制15
以上過程可以通過下圖來進(jìn)行概括:
那么1+1=2如果用上圖進(jìn)行表示的話可以得到下面的示例圖:
好了,至此為止我們已經(jīng)知道1 和 2 還有其他的數(shù)值是如何在計(jì)算機(jī)中通過晶體管來表示,但具體"+"的這個(gè)過程是如何運(yùn)行呢?
現(xiàn)在我們開始進(jìn)行下一步的理解.
把一個(gè)晶體管抽象成一個(gè)開關(guān),一個(gè)開關(guān)可以表示數(shù)字1和0,我們可以通過連接兩個(gè)開關(guān)和兩個(gè)燈泡通過一定的結(jié)構(gòu),開關(guān)用來表示輸入0或者1 而兩個(gè)燈泡表示通過特殊結(jié)構(gòu)的處理所得到的結(jié)果,這個(gè)特殊結(jié)構(gòu)便是"加法器".加法器里面都是有各種邏輯門來構(gòu)成的.這些邏輯門包括:"與"門,"或"門,""與非"門 ,兩個(gè)開關(guān)通過加法器相連的邏輯圖如下
上圖只是一個(gè)兩個(gè)開關(guān)的相加,但是計(jì)算機(jī)要處理的是龐大的數(shù)據(jù),這就需要將一個(gè)個(gè)的開關(guān)進(jìn)行邏輯的相連接,變形成了下面的圖,通過下圖的方式將一個(gè)個(gè)的開關(guān)和燈泡進(jìn)行相連.
如果有兩排八個(gè)開關(guān)通過加法器相連,沒有一個(gè)開關(guān)的話.從宏觀的角度來看的話,便是下圖所示:
而我們此次的主角:1+1=2的運(yùn)作流程便是下圖所示
通過對(duì)CPU運(yùn)作原理的探索,再一次理解了大道至簡(jiǎn)的道理,我們看似復(fù)雜的CPU,看似復(fù)雜的很多事物,歸根到底都是一些特別簡(jiǎn)單的元素,而也就是這些"元素"通過各種組合,變換,便形成了復(fù)雜的運(yùn)算,解決各種復(fù)雜的問題.