硬件是如何通過軟件來控制的
硬件是如何通過軟件來控制的
軟件中的命令(這些命令是最初編程設(shè)計的)最終都要轉(zhuǎn)化為計算機可以識別的機器語言,那么硬件是如何通過軟件來控制的?下面來和學(xué)習(xí)啦小編一起了解一下吧!
硬件是如何通過軟件來控制
我們通常聽說的0101010101,這種長串的機器代碼在硬件中反映成電脈沖或電信號,在超大規(guī)模的集成電路中執(zhí)行邏輯操作或運算(具體的,那就是電路知識了,最基本的原理都非常非常簡單,簡單的讓你吃驚,即通路,斷路),最終形成的現(xiàn)在運算速度驚人的計算機. 要理解的很清楚的話那就要求掌握多門學(xué)科的基礎(chǔ)知識了.你不理解軟件為何能控制硬件,大概是因為你覺得軟件是看不見摸不著的東西,如何能夠控制硬件這樣有形的實體吧。 其實問題很簡單,軟件在工作的時候也是實體,軟件的實質(zhì)就是電流信號,用電壓的高低代表不同是信息,用這些電流信號去控制邏輯電路的通斷,靠邏輯電路的通斷來控制硬件的工作。
說到底軟件就是起到一個開關(guān)信號的作用,開關(guān)要工作,必需保證硬件是加電的,沒有接通電源的硬件是無法用軟件來控制的。就好比沒有插上電源的臺燈,你怎么按開關(guān)都是不會亮的。 任何軟件在運行前都要有一個將其轉(zhuǎn)化為電流信號的實體化過程,你寫在紙上的軟件代碼是永遠也不能控制硬件的。早期電腦用人工接線輸入程序,相當于用人體的力量將軟件代碼實體化為電信號;現(xiàn)在我們用的軟盤、硬盤是通過磁頭將程序代碼轉(zhuǎn)化為電信號,光盤需要通過光頭將程序代碼轉(zhuǎn)化為電信號等等。這個問題看似簡單,其實涉及到一些很底層的內(nèi)容和原理。對于一般計算機愛好者來講,又沒有辦法說明白,原因就是我們從來沒有考慮過電路在物理上的實現(xiàn)。 計算機軟件說到底,不過就是一些指導(dǎo)電子元件工作的指令序列,那么你一定又會問電子元件為什么會按這些序列工作呢?指令序列的在電路中的實質(zhì)就是一些有規(guī)律且有一定意義的電脈沖,電脈沖控制電子元件的各種狀態(tài)。工作過程非常復(fù)雜。最簡單最基本的就是幾個邏輯門電路的實現(xiàn):比如“或”電路,“與”電路等等。通過將這些邏輯門電路的組合和協(xié)同,就能實現(xiàn)電腦整體上的運算和處理能力。因為這是十幾個數(shù)量級的基礎(chǔ)電路的有機集合的對外的體現(xiàn),如奔騰系列CPU集成了上億個半導(dǎo)體元件,要想把各個元件的功能徹底認知,是非常困難的??梢园阉鼈儽茸髅總€人的活動合在一起就構(gòu)成了社會有單位,有抽象 正如抽象的生活用電網(wǎng)絡(luò),可以將一個用電器作為抽象單位,也可以將一個家庭作為抽象單位,一個抽象單位連接入網(wǎng)絡(luò),具體的接入方式,抽象單位完全本身實現(xiàn),理想情況下每一功能模塊即抽閑單位,都有接口,成為網(wǎng)絡(luò)的一部分,向新的部分提供接口,理想情況下家庭電路有接口模塊,可以任意擴展;每一但單元都有進出,任意個連接組合,總的單位也有進 和 出軟件可以發(fā)送命令 讓cpu的某一引腳 發(fā)出高低信號 從而控制硬件我對程序的思考我也曾遇到過這樣的問題,困惑了好長時間。每每到網(wǎng)上看, 都說的不是我想要的問題,或者說是組成原理書上有講呀什么的?,F(xiàn)在我明白了, 是按自己的想法明白 ,希望像我困惑過的正在困惑的能在這里得到答案,對你有所幫助軟件如何控制硬件呢?
大家都知道。沒有軟件的硬件就是一堆廢鐵或“砂子”。您也知道cpu中有個叫做譯碼器的東東吧,您也知道我們寫的程序要經(jīng)過編譯呀,匯編呀,連接呀。最后生成可以被硬件執(zhí)行的二進制??墒菃栴}來了,硬件能認識個啥二進制。這里也許是你不懂的地方。其實解釋的關(guān)鍵也就在這里了。高低電壓。脈沖的有無控制硬件您能夠接受吧,而我們寫的程序(軟件)其實都是以高低電壓,脈沖的有無存儲在磁盤上。或者以有無反射的形式存在光盤上。所謂的機器可直接執(zhí)行的代碼, 也就是二進制,譯碼器能理解。他能理解。cpu就能理解。cpu按照硬件設(shè)置和硬件特性,選擇switch(也就是讓哪一條導(dǎo)線是通路),以達到控制硬件。(能理解嗎, 如果你還有什么疑問留言吧, 針對性解決可能會好點,)實際上計算機把相當復(fù)雜的問題最終都會轉(zhuǎn)化成加法(ALU)來實現(xiàn)這樣有助于理解。軟件是如何控制硬件的軟件在工作的時候也是實體,軟件的實質(zhì)就是電流信號,用電壓的高低代表不同是信息,用這些電流信號去控制邏輯電路的通斷,靠邏輯電路的通斷來控制硬件的工作。說到底軟件就是起到一個開關(guān)信號的作用,開關(guān)要工作,必需保證硬件是加電的,沒有接通電源的硬件是無法用軟件來控制的。就好比沒有插上電源的臺燈,你怎么按開關(guān)都是不會亮的。任何軟件在運行前都要有一個將其轉(zhuǎn)化為電流信號的實體化過程,你寫在紙上的軟件代碼是永遠也不能控制硬件的。早期電腦用人工接線輸入程序,相當于用人體的力量將軟件代碼實體化為電信號;現(xiàn)在我們用的軟盤、硬盤是通過磁頭將程序代碼轉(zhuǎn)化為電信號,光盤需要通過光頭將程序代碼轉(zhuǎn)化為電信號等等。這個問題看似簡單,其實涉及到一些很底層的內(nèi)容和原理。對于一般計算機愛好者來講,又沒有辦法說明白,原因就是我們從來沒有考慮過電路在物理上的實現(xiàn)。計算機軟件說到底,不過就是一些指導(dǎo)電子元件工作的指令序列,那么你一定又會問電子元件為什么會按這些序列工作呢?指令序列的在電路中的實質(zhì)就是一些有規(guī)律且有一定意義的電脈沖,電脈沖控制電子元件的各種狀態(tài)。工作過程非常復(fù)雜。最簡單最基本的就是幾個邏輯門電路的實現(xiàn):比如“或”電路,“與”電路等等。通過將這些邏輯門電路的組合和協(xié)同,就能實現(xiàn)電腦整體上的運算和處理能力。因為這是十幾個數(shù)量級的基礎(chǔ)電路的有機集合的對外的體現(xiàn),如奔騰系列CPU集成了上億個半導(dǎo)體元件,要想把各個元件的功能徹底認知,是非常困難的。可以把它們比作每個人的活動合在一起就構(gòu)成了社會.計算機是數(shù)字電路,數(shù)字電路是靠1,0來控制電路的.起到電流還有脈沖作用.像你鍵盤上敲個周字一樣.同是由一大一串的0001111111111100.來產(chǎn)生脈沖電流對硬件發(fā)出指令的.CPU就是運算這些數(shù)據(jù).然后發(fā)出機器語言指揮其它硬件工作的.
硬件是如何通過軟件來控制的相關(guān)文章:
2.回路硬件仿真技術(shù)在直升機控制系統(tǒng)中的應(yīng)用論文
3.電腦主板怎么修理