国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文看懂計算機的整體原理

傳感器技術 ? 來源:低并發編程 ? 作者:低并發編程 ? 2021-02-19 10:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我和小宇早戀了,我們家住隔壁。

一、編碼與電路——信號的轉換

晚上父母會把手機沒收,但我們還想繼續聊天,又不敢發出聲音,于是我們想到了這個辦法...

f4116a4a-723b-11eb-8b86-12bb97331649.gif

我們把所有的中文都用燈泡的亮滅組合來表示,同時約定好每隔一秒讀取一次燈泡的狀態并記錄下來,這是我們的暗號。

我:亮亮滅滅亮

喜:滅亮亮滅滅

歡:亮滅亮滅亮

你:亮亮亮滅滅

這樣,我們雖然沒有了手機,依然可以日以繼日地聊天,雖然效率很低,但依然很快樂。

我和小宇就這樣在不經意間,將語言轉換成為了燈泡的亮滅組合,這個過程叫做編碼。

二、門電路——信號的關聯

我和小宇就這樣一直秘密保持著通話,直到上了大學,父母再也管不了我們用手機了。

但這么多年的小燈泡通話,使我們總覺得事情沒那么簡單,于是我們開始了一些新的探索。

我們增加了一個開關。此時當兩個開關同時閉合時,燈泡才會亮。

這樣兩個開關與燈泡之間,不再是之前簡單的對應關系了,而是有了邏輯。

開關的斷開與閉合分別對應著電路的斷開與連通。而小燈泡的不亮與亮,也分別對應著電路的斷開與連通。那這兩者就可以統一,不再依賴于具體的實物表現了。

f5eb8c1a-723b-11eb-8b86-12bb97331649.gif

還有,開關的連通與斷開,是主動的。而小燈泡的連通與斷開,是被動的,是結果。

我們把開關這里的連通與斷開稱為輸入端,把燈泡的連通與斷開稱為輸出端,并且將整個電路都封裝在一個圖形里,可以得到如下抽象:

f6a756ca-723b-11eb-8b86-12bb97331649.gif

我們決定把這種電路叫做門電路, 上面這個叫與門。

為了今后更為抽象的探索,我們將電路連通表示為數字 1,電路斷開表示為數字 0。

我們將這種表示方式稱為二進制。

輸入 A 輸入 B 輸出
0 0 0
0 1 0
1 0 0
1 1 1

f6d431ea-723b-11eb-8b86-12bb97331649.gif

慢慢地,我們發現了越來越多的玩法。

f71da28a-723b-11eb-8b86-12bb97331649.gif

上面這種電路,我把他抽象成如下門電路形狀,叫做或門。

f8c971fe-723b-11eb-8b86-12bb97331649.gif

之后便一發不可收拾,我和小宇設計了越來越多的門電路,我們發現,只要是我們能想到的邏輯關系,都可以設計成對應的門電路。

f903f1e4-723b-11eb-8b86-12bb97331649.jpg

三、加法器——信號的計算

十進制數可以轉換成二進制數,而二進制數又可以對應到門電路的輸入端與輸出端。

于是我和小宇有了一個大膽的想法,能不能設計一個計算加法的電路呢?

我們首先從最簡單的一位二進制數相加開始:

0+0=0;0+1=1;1+0=1;1+1=10

變成一張表格如下

加數 A 加數 B 加和輸出 進位輸出
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

即我們需要設計出一種電路,可以達到表中的輸入與輸出效果。

經過不懈努力,終于發現這個電路可以由異或門和與門兩個門電路組成。

f94fac9c-723b-11eb-8b86-12bb97331649.jpg

這個裝置實現了二進制的一位加法,但它并不完美,因為只考慮了這兩個數的進位輸出,但沒有考慮上一位的進位,所以只能叫半加器。

f97d6c72-723b-11eb-8b86-12bb97331649.jpg

如果將前一個進位考慮進來,只需再多一個半加器,并且拼接一個或門即可。

f9d9b176-723b-11eb-8b86-12bb97331649.jpg

此時我們已經建立好了一個完美的一位加法器,并自豪地稱之為全加器。

f9f6dc56-723b-11eb-8b86-12bb97331649.jpg

全加器做出來之后,無論多少位的加法器就都可以做出來了,只需將全加器逐個拼起來即可。我們嘗試做一個八位加法器。

fa20b396-723b-11eb-8b86-12bb97331649.jpg

OK,大功告成,有了加法器,理論上就可以實現任何的數學運算了。

因為我們知道乘法可以轉換成加法,除法可以轉換成減法,而減法又可以轉換成補碼的加法?,F在我們可以自豪地稱這個部件為,算術邏輯單元 ALU。

四、時鐘——信號的震蕩

我和小宇都非常高興,終于用電路的方式實現了計算功能。

但慢慢的覺得沒什么意思了,于是我們又突發奇想,設計了如下詭異的電路。

fa97b45a-723b-11eb-8b86-12bb97331649.gif

當閉合開關 A 時,整個電路聯通,開關 B 將會被吸下來,整個電路斷開,電磁鐵失去磁性,開關 B 又會彈上去,此時電路又聯通,開關 B 又被吸下來。

就這樣,開關 B 不斷地快速地在開和閉之間循環進行,而我們始終沒有去干預這個電路,因此該電路有了自反饋的特性。

由于開關 B 的來回震蕩,我們將這種電路稱為振蕩器,由于它可以產生不斷變化的電信號,就像時鐘一樣不停且規律地跑著,我們將這個裝置又稱為時鐘。它所產生的交替的電信號稱為時鐘信號。

五、RAM——保存信號

雖然有了加法器,但是輸入的數字從哪里來?能不能先保存在某個地方呢?

我和小宇經過多次實驗,發明了一個非常復雜的電路:

fb274250-723b-11eb-8b86-12bb97331649.gif

如果輸入端為 1,改變"某控制端"信號(信號由 0 變化到 1 這個瞬間),則輸出端變為 1,之后輸出端仍然保持(存儲)著剛剛的 1。 如果輸入端為 0,改變"某控制端"信號,則輸出端變為 0,之后輸出端仍然保持(存儲)著剛剛的 0。

如果想不明白也沒關系,只要記住這個電路的設計,實現了一位的存儲功能!我們叫它1 位鎖存器。

fb9221f6-723b-11eb-8b86-12bb97331649.jpg

然后我們把多個鎖存器組合起來,再加上一些 3-8 譯碼器,8-1 選擇器等電路,就可以實現一個能保存 8 位二進制的存儲器,并且可以隨機地讀寫它, 我們把它叫做RAM,簡稱為內存。

fbbb8a50-723b-11eb-8b86-12bb97331649.jpg

這個組件通過再次組合,可以形成 N × M 的 RAM 陣列。比如我們可以表示一個 1024 * 8 的 RAM 陣列。

fbdf1808-723b-11eb-8b86-12bb97331649.jpg

這表示存儲容量為 1024 個單位,每個單位占 8 位。

為了更方便地表示,我們規定 1024 = 1K,8 位 = 1 字節(8 bit = 1 byte),那么我們就可以說,這個 RAM 的存儲容量為 1K 個單位,每個單位占 1B?;蛘哒f,地址空間為 1K,存儲容量是 1KB。

此時這個 RAM 模塊已經近乎完美了,我們甚至可以單獨對其進行使用,將數據存入某個地址,將某個地址中的數據讀出。

怎么方便人操作呢?只需要將地址輸入、數據輸入、寫操作端分別接入一個控制面板,由開關來控制這些信號的輸入是 1 還是 0 即可,然后再將數據輸出接入一些燈泡方便觀察,這樣一個單獨的可以手動操作的存儲裝置,就搞定啦。(下圖中有彩蛋~)

fc21291e-723b-11eb-8b86-12bb97331649.gif

有了可讀寫的內存,我們就可以事先把幾個數字存儲內存中了,接下來,我們能否讓算術邏輯單元 ALU自動地讀取這個數字,進行加法運算呢?

六、程序——自動化

我們先引入一個新的組件,10 位計數器,這里的 Clk 就接入我們在第四部分講的時鐘信號,Clr 是清零端,具體效果下面動圖一目了然。

fd94c774-723b-11eb-8b86-12bb97331649.gif

計數器的輸出就是 0,1,2,3,4,5,可以當作內存中的地址。

我們把這個計數器,以及上面講的 ALU 與 RAM 全部連在一起,嘗試實現一個可以累積求和的裝置。

我們想計算的是 1+2+3+4+5+6+7, 這個自動化的計算器是這么運行的

1、用控制面板在 RAM 的地址 0~6 處存上 1~7 這幾個數字的,在上一節已經實現了。 2、當計數器的值是 0 時,數據 1 被輸出到加法器進行計算,此時加法器 A=1,B=0,計算結果為 1,但記住鎖存器存儲的是上一次的加法器輸出 0,這次的計算結果要等下一次鎖存器遇到上升沿信號。 3、當計數器的值是 1 時, 數據 2 被輸入到加法器,此時鎖存器存儲了上一次的計算結果 1,并將這個 1 輸出給小燈泡,并同時回傳到加法器的B,所以此時加法器 A=2,B=1,計算結果為 3 4、當計數器的值是 3 時,以此類推,請看下圖

fdf5cb28-723b-11eb-8b86-12bb97331649.gif

我們將累加求和這個過程自動化了!之后如果想計算累加和,只需要用控制面板事先在內存里存好數據就可以了!是不是很方便?

七、程序指令

我們還想要更多的自動化!

現在這個裝置,只能無腦地將 RAM 中的數據從頭到尾一直累加下去,無法選擇加哪個不加哪個,也無法選擇什么時候停止。

比如我們 RAM 中的數據是這樣的。

地址(16 進制) 數據(10進制)
0x00 ...
0x01 10
0x02 ...
0x03 20
0x04 30
0x05 ...
... ...

我們只想讓 RAM 藍色地址處的數據進行累加,其他地方的數據忽略,并且到 RAM 0x05 處就停止,該怎么做呢?

我們可以再增加一個 RAM,這個 RAM 里存放的數據,表示"指令"的含義!

我們先發明三種指令。

add:把 RAM 這個位置處的值進行累加nop:忽略此處的值(也就是什么都不做)halt:停止(禁止計數器的值加一)

那么要想達到上述功能,相應的這個指令 RAM 中的數據應該是這樣的。

注意:下面指令 RAM 的地址和上面數據 RAM 的地址之間有一一對應關系!

地址
(16 進制)
指令RAM的值 指令含義
0x00 nop 什么都不做
0x01 add 累加
0x02 nop 什么都不做
0x03 add 累加
0x04 add 累加
0x05 halt 停止
... ... ...

我們需要引入一個控制單元,放在如下位置。

02bfef8a-723c-11eb-8b86-12bb97331649.gif

遇到 nop 指令(0x00),那輸出就將鎖存器的 W 位禁止,不允許鎖存器寫操作,這樣累加結果就不會錄入。

再比如遇到輸入為 halt 指令(0x05),就將計數器的 EN 位禁止,不允許計數器 +1,這樣就達到了停止的效果。

此時再讓時鐘信號震蕩起來,就可以達到有選擇地求和過程,并且在指定位置懸停。那現在我們就讓時鐘信號震動起來,看看這個過程吧。(此處只留關鍵組件)

0317522a-723c-11eb-8b86-12bb97331649.gif

這個控制單元該怎么實現呢?我們知道,只要給出輸入,給出輸出,任何組件都可以造出來。本文就不再展開了。

有了三個指令,我們知道了通過指令這種方式,配合各種復雜的控制器,即可實現將所有操作統統自動化。

接下來我們需要做的,就是設計控制器,以及約定好一大堆指令,使得通過這一大堆指令的排列組合,可以實現任何自動化的計算操作。

我們將設計好的一大堆指令

稱作指令集

我們將指令排列組合后可以實現的功能

稱作程序

我們將指令的排列組合這個過程

稱作編程

我們將排列組合這些指令的人

稱作程序員

而我們將承載這一切的裝置,叫做什么呢?

沒錯,這個破玩意,就是機。

原文標題:圖解 | 你管這破玩意叫計算機?

文章出處:【微信公眾號:傳感器技術】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電路
    +關注

    關注

    173

    文章

    6076

    瀏覽量

    178431
  • 計算機
    +關注

    關注

    19

    文章

    7807

    瀏覽量

    93211

原文標題:圖解 | 你管這破玩意叫計算機?

文章出處:【微信號:WW_CGQJS,微信公眾號:傳感器技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    十進制計算機硬件體系結構及“獨值”量化邏輯運算革命(

    采用“獨值”量化邏輯理論設計十進制數字計算機,十進制網絡計算機,十進制模擬計算機,十進制模糊計算機,實現計算機類型多樣化,
    的頭像 發表于 01-29 09:13 ?983次閱讀
    十進制<b class='flag-5'>計算機</b>硬件體系結構及“獨值”量化邏輯運算革命(<b class='flag-5'>一</b>)

    工控機與普通計算機的核心差異解析

    在工業自動化和智能制造領域,計算機設備作為核心控制單元,其選擇直接影響整個系統的穩定性與可靠性。工控機與普通計算機雖同屬計算設備,但其設計目標、性能側重和應用場景存在根本性差異。準確理解這些差異,是進行正確設備選型的基礎。
    的頭像 發表于 11-25 14:45 ?1788次閱讀
    工控機與普通<b class='flag-5'>計算機</b>的核心差異解析

    龍架構計算機系統能力核心課程教學研討會圓滿舉行

    2025年11月8日,由教育部計算機類專業系統能力課程群虛擬教研室指導、北京航空航天大學計算機學院主辦的龍架構計算機系統能力核心課程教學研討會在京舉行。
    的頭像 發表于 11-14 13:52 ?650次閱讀

    貿澤電子開售全新Arduino UNO Q單板計算機

    貿澤電子開售全新Arduino UNO Q單板計算機。Arduino UNO Q單板計算機(SBC)將高性能計算與實時控制結合,提供理想的創新平臺。
    的頭像 發表于 11-08 09:50 ?1355次閱讀

    NVIDIA DGX Spark桌面AI計算機開啟預訂

    DGX Spark 現已開啟預訂!麗臺科技作為 NVIDIA 授權分銷商,提供從產品到服務的站式解決方案,助力輕松部署桌面 AI 計算機
    的頭像 發表于 09-23 17:20 ?1319次閱讀
    NVIDIA DGX Spark桌面AI<b class='flag-5'>計算機</b>開啟預訂

    【作品合集】賽昉科技VisionFive 2單板計算機開發板測評

    +點燈 作者:jf_43382582【VisionFive 2單板計算機試用體驗】coremark跑分測試【VisionFive 2單板計算機試用體驗】VisionFive 2個霸氣的游戲機
    發表于 09-04 09:08

    工業計算機的重要性

    工業計算機對某些行業至關重要。我們將在下面詳細解釋這些行業中的工業計算機應用。1.制造與工業自動化工業級計算機非常適合制造工廠,特別是那些想要自動化裝配過程的工廠。在這樣的環境中,工業計算機
    的頭像 發表于 07-28 16:07 ?579次閱讀
    工業<b class='flag-5'>計算機</b>的重要性

    自動化計算機經過加固后有什么好處?

    讓我們討論下部署堅固的自動化計算機些好處。1.溫度范圍寬自動化計算機經過工程設計,配備了支持寬溫度范圍的組件,使自動化計算解決方案能夠
    的頭像 發表于 07-21 16:44 ?628次閱讀
    自動化<b class='flag-5'>計算機</b>經過加固后有什么好處?

    自動化計算機的功能與用途

    工業自動化是指利用自動化計算機來控制工業環境中的流程、機器人和機械,以制造產品或其部件。工業自動化的目的是提高生產率、增加靈活性,并提升制造過程的質量。工業自動化在汽車制造中體現得最為明顯,其中許多
    的頭像 發表于 07-15 16:32 ?747次閱讀
    自動化<b class='flag-5'>計算機</b>的功能與用途

    工業計算機與商用計算機的區別有哪些

    工業計算機種專為工廠和工業環境設計的計算系統,具有高可靠性和穩定性,能夠應對惡劣環境下的自動化、制造和機器人操作。其特點包括無風扇散熱技術、無電纜連接和防塵防水設計,使其在各種工業自動化場景中
    的頭像 發表于 07-10 16:36 ?753次閱讀
    工業<b class='flag-5'>計算機</b>與商用<b class='flag-5'>計算機</b>的區別有哪些

    Blue Lion超級計算機將在NVIDIA Vera Rubin上運行

    德國萊布尼茨超算中心(LRZ)將迎來全新超級計算機 Blue Lion,其算力比該中心現有的 SuperMUC-NG 高性能計算機提升了約 30 倍。這臺新的超級計算機將在 NVIDIA Vera Rubin 架構上運行。
    的頭像 發表于 06-12 15:39 ?1156次閱讀

    工業計算機如何設計用于沖擊和振動

    探討了使工業計算機能夠抵御沖擊和振動的關鍵設計原則和功能。了解工業環境中的沖擊和振動沖擊是指突然的、高強度的沖擊,例如重物撞擊系統或運輸過程中突然停止。另方面,振
    的頭像 發表于 05-19 15:27 ?503次閱讀
    工業<b class='flag-5'>計算機</b>如何設計用于沖擊和振動

    帶你了解工業計算機尺寸

    項艱巨的任務。本博客將指導您了解關鍵的工業計算機尺寸、使用案例。關鍵工業計算機外形要素及其使用案例、工業微型PC尺寸范圍:寬度:100毫米-180毫米深度:10
    的頭像 發表于 04-24 13:35 ?1052次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>帶你了解工業<b class='flag-5'>計算機</b>尺寸

    計算機網絡入門指南

    計算機網絡是指將地理位置不同且具有獨立功能的多臺計算機及其外部設備,通過通信線路連接起來,在網絡操作系統、網絡管理軟件及網絡通信協議的管理和協調下,實現資源共享和信息傳遞的計算機系統。
    的頭像 發表于 04-22 14:29 ?2264次閱讀
    <b class='flag-5'>計算機</b>網絡入門指南

    NVIDIA 宣布推出 DGX Spark 個人 AI 計算機

    臺式超級計算機由 NVIDIA Grace Blackwell 驅動,為開發者、研究人員和數據科學家提供加速 AI 功能;系統由頭部計算機制造商(包括華碩、Dell Technologies、HP
    發表于 03-19 09:59 ?787次閱讀
       NVIDIA 宣布推出 DGX Spark 個人 AI <b class='flag-5'>計算機</b>