全文預覽已結束
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件是如何控制硬件的關于這個問題,我已搜索了大量資料,但我的疑問是:1代表高電平,0代表低電平,那么1到底是如何代表高電平的?0又是怎么代表低電平的?都說軟件通過二進制數(shù)0,1控制硬件,0,1也不過是數(shù)學符號,說到底還是虛擬的信號,這些虛擬的信號時如何控制實體硬件的?都說0,1控制電路的關和開,0,1這兩個虛擬的數(shù)學符號如何控制實體的電路的開和關?計算機組成原理,計算機體系結構二進制在內部就是高低電平,通過時鐘脈沖組成時序控制信號,經(jīng)過控制器,微控器等一些部件控制門電路的開合,完成各種操作。而軟件呢,其實也就是一塊塊的,什么操作調用什么代碼,然后把轉換為底層的代碼讓硬件執(zhí)行軟件是如何控制硬件的? 軟件在工作的時候也是實體,軟件的實質就是電流信號,用電壓的高低代表不同是信息,用這些電流信號去控制邏輯電路的通斷,靠邏輯電路的通斷來控制硬件的工作。 說到底軟件就是起到一個開關信號的作用,開關要工作,必需保證硬件是加電的,沒有接通電源的硬件是無法用軟件來控制的。就好比沒有插上電源的臺燈,你怎么按開關都是不會亮的。 任何軟件在運行前都要有一個將其轉化為電流信號的實體化過程,你寫在紙上的軟件代碼是永遠也不能控制硬件的。早期電腦用人工接線輸入程序,相當于用人體的力量將軟件代碼實體化為電信號;現(xiàn)在我們用的軟盤、硬盤是通過磁頭將程序代碼轉化為電信號,光盤需要通過光頭將程序代碼轉化為電信號等等。簡單來說,就是C語言會被編譯成機器語言,由CPU I/O口輸入,CPU其實只是做二進制加法運算。它本身不會去處理任何程序。通過基本的加法運算,將結果反饋會程序,程序通過這個值去控制其他硬件。你可以看到芯片其實有各種引腳,有些是8個一組的I/O,有些是控制中斷器,有些是計時器,電腦給引腳正電平時,這些中斷器,計時器就開始工作了。我的理解是這樣的:軟件和硬件配合工作的過程,就好比司機開車。司機是軟件,方向盤、排擋、油門、剎車、雨刮器等等就執(zhí)行具體功能的是硬件。只有在司機軟件的有序組織和正確命令之下,硬件才會做出正確的動作,完成正確的任務。沒有軟件,再好的硬件也只是死的擺設而已。具體來說,以通用計算機系統(tǒng)為例:內存、CPU、顯卡、顯示器、聲卡等等這些硬件通過主板(主板本身也是硬件)接口和數(shù)據(jù)線鏈接合理地組織在一起之后,加載電壓,通過軟件的組織和協(xié)調,各個硬件執(zhí)行相應的任務。操作系統(tǒng)(例如Windows 7/8)就是一個最大的軟件系統(tǒng)。我們看到的軟件,都有漂亮的界面和顏色,選擇軟件上的選項和按鈕,然后執(zhí)行,軟件就會按照編程時設定好的邏輯產生電流控制信號,通過數(shù)據(jù)線傳道到相應的硬件那里,去控制邏輯電路的“接通”和“斷開”狀態(tài),從而控制硬件執(zhí)行相應的動作。每個硬件都有自己的地址和名稱,軟件發(fā)出的電流控制信號會準確地找到相關硬件,二進制代碼的控制信號就是一些列0和1的組合。例如:軟件想讓顯卡在顯示器的某個區(qū)域顯示紅色,就會把顯示區(qū)域的位置信息和顏色編碼組合起來告訴顯卡,顯卡接到這個命令以后,就照章執(zhí)行,把執(zhí)行命令也是通過數(shù)據(jù)線傳到顯示器上,顯示器接到控制信號后,在相應的區(qū)域顯示紅色。再比如我們要在軟件上播放一首MP3的歌曲,就會選擇這首歌,然后點播放按鈕,這是軟件界面上執(zhí)行的動作。而軟件后臺執(zhí)行的則是先通過地址去硬盤上讀取這首歌的內容,把它臨時存在內存中,然后把這首MP3的內容加上播放的命令一起組合成0和1的電流控制信號傳給聲卡,聲卡接到信號后,處理聲音,根據(jù)聲卡硬件的工作流程,其處理的結果就會傳到音箱硬件上播放出來。硬件本身可能是很復雜的,例如電腦的中央處理器CPU,上面集成了上億個處理和計算單元。復雜歸復雜沒關系,軟件控制它的原理和邏輯是很簡單的,就是上面描述的發(fā)出電流信號去控制它計算單元的工作狀態(tài)和接收計算結果就行了。計算機軟件在計算機內部無非也就是一堆01代碼,作用于硬件也是因為這些01代碼,這相對比較復雜的 舉個例子說:打印機,它有自己的端口地址,當你點擊打印的時候,系統(tǒng)會把這個指令傳到它的端口,給它加上一組高低電壓。 安裝軟件的過程除了把軟件拷到電腦上之外,剩下的還有給操作系統(tǒng)作個標記(在注冊表內注冊) 系統(tǒng)為每個硬件設備留下了端口地址,軟件作用于硬件首先是把指令傳送到他的端口地址。而硬件的工作 也無非是幾個指令而已,對它而言就是幾個高低電壓組成的,用軟件控制就是發(fā)給它幾個特殊的01組合代碼。軟件的工作就是給這樣的硬件編程。規(guī)定,什么樣的操作用什么樣的代碼而已。計算機智能識別0和1,也就是高低電信號。它跟軟件是通過I/O(即基本輸入輸出)進行通信(可以理解為觸發(fā),你可以想象成家里的電燈開和關)。而軟件要想讓硬件識別就必須要轉換成0和1的高低電平,讓CPU一條一條去執(zhí)行。0和1稱為計算機語言。所以不管你任何軟件用何種語言編寫的程序,它最終都要轉換成0和1的高低電平讓CPU處理。(你不理解的話可以把CPU理解成人的大腦,比如我想去關燈,那大腦就會告訴我去按下電燈按鈕)就比如鍵盤上的數(shù)字按下代表相應的脈沖施加在特定位置,之后可以控制相應的顯示和動作,這個我懂。但軟件是通過大量代碼實現(xiàn)十分復雜的動作,且它的核心是軟件。我的疑問1,代碼通過什么途徑控制硬件(比如成像系統(tǒng),數(shù)控系統(tǒng)),且如何給代碼賦予相應的脈沖。簡單說游戲軟件,實現(xiàn)了大量復雜的顯示和操作,它通過什么途徑控制的。有人能解釋一下嗎?軟件自上到下,有應用軟件,系統(tǒng)軟件,還有固化在硬件內部的指令。應用軟件面對用戶,一般不能直接控制硬件;系統(tǒng)軟件預留有與應用軟件的接口,能控制硬件。固定在硬件內部的指令是硬件啟動時的代碼和一些很常用的指令,執(zhí)行速度很快。軟件控制硬件的原理,CPU的內部的指令暫存器和數(shù)據(jù)暫存器讀取到相關的指令代碼,指令暫存器再根據(jù)指令讓內部硬件完成相關操作,再接收下一條指令代碼。軟件的作用就是產生一系列這樣的代碼,完成軟件的任務。比如Excel是應用軟件,Windows是系統(tǒng)軟件,最終送到CPU執(zhí)行的是一系列的指令。你敲入的任何東西,最終就是通過類似的東西/機制儲存的;所謂“指令”,其實就是“某個命令碼“(一般叫機器碼),這個”命令碼”會改變CPU內部一堆“開關”的狀態(tài),以激活不同的電路如果CPU不過是一堆開關的話,它為什么能“聽懂”類似“加法”“do.while”這類高大上的復雜指令、甚至做出office、photoshop甚至人工智能這樣神奇的東西呢?這些高大上的語義,是怎么被電路所理解的呢?比如說,CPU,它根本上其實只會三招:與、或、非別看CPU只會這三板斧;可當它們巧妙的組合起來后(構造成計數(shù)器、指令寄存器等等等等再組合成CPU),就達到了圖靈完備的要求,產生了質變而CPU指令集呢,則形成了另外一個強大得多的圖靈機,這就是機器碼(和匯編指令幾乎一一對應);然后呢,諸如c/c+、java等高級語言,就是利用CPU指令集形成的、另一個更加強大的圖靈機(編譯器/解釋器負責兩種圖靈機之間的翻譯工作)。而程序員們研究的,就是如何用編程語言這樣一個強大的圖靈機,去實現(xiàn)office、photoshop、wow甚至人工智能這樣復雜的事物。這也是一個層層模擬的過程。軟件控制硬件,也是類似的原理。前
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車模具2025版性能優(yōu)化開發(fā)合同
- 2025年度木材出口合同范本與執(zhí)行細則4篇
- 2025版學校小賣部與校園周邊商家聯(lián)盟合同3篇
- 2025版建筑設備安裝工程安全生產消防合同3篇
- 2025版外語教學機構兼職外教招聘合同樣本3篇
- 2025年人力資源服務合同解除協(xié)議
- 2025年前雇主員工競業(yè)禁止合同樣本模板
- 2025版?zhèn)€人合伙退伙協(xié)議書糾紛處理指南4篇
- 2025年云石打邊蠟水項目投資可行性研究分析報告
- 2025年度駱采與陳鵬的離婚財產分割及子女撫養(yǎng)權合同4篇
- GB/T 45107-2024表土剝離及其再利用技術要求
- 2024-2025學年八年級上學期1月期末物理試題(含答案)
- 商場電氣設備維護勞務合同
- 2023年國家公務員錄用考試《行測》真題(行政執(zhí)法)及答案解析
- 2024智慧醫(yī)療數(shù)據(jù)字典標準值域代碼
- 年產12萬噸裝配式智能鋼結構項目可行性研究報告模板-立項備案
- 【獨家揭秘】2024年企業(yè)微信年費全解析:9大行業(yè)收費標準一覽
- 醫(yī)療器械經(jīng)銷商會議
- 《±1100kV特高壓直流換流變壓器使用技術條件》
- 1-1 擁抱夢想:就這樣埋下一顆種子【2022中考作文最熱8主題押題24道 構思點撥+范文點評】
- 《風電場項目經(jīng)濟評價規(guī)范》(NB-T 31085-2016)
評論
0/150
提交評論