程式裡0和1是怎麼轉化成高低電平的?(最初的受0和1控制的高低電平如何產生的?)

時間 2021-06-02 01:23:00

1樓:小龍

如果是從軟盤硬碟輸入就直接讀取磁場,有電磁感應產生電壓,再經過三極體放大,如果是晶元類的那就用「非易失性儲存器」,順序讀取然後輸入到cpu,這樣簡單的理解吧

2樓:已修改

看了其他人的答案,估計你還是懵逼狀態。

回歸本質看問題。

如果我沒有記錯應該是半導體電晶體。

基本原理可以看三極體的工作,這裡簡單給予一些線索:

1. PN結(半導體元素摻入雜質,這裡有一點點物理化學知識,關於能帶,多子,少子,空穴,禁帶寬度等等的概念,關係到半導體如何內建電場,產生電流等等);

2. PN結具有單向導電性(電流單嚮導通,反向電阻極大,擊穿後電阻極小);

3. 三極體由兩個PN結組成。三極體最大的作用是:電流放大作用。其實質是三極體能以基極電流微小的變化量來控制集電極電流較大的變化量。

綜上三點,就能完成電壓層面的高低電位了。

具體細節知識就需要你自己去補充了。

3樓:LEOO

微控制器的話,0在電壓上是0.5v左右,1是5v左右,這個範圍看mos管門極的閾值。這樣,當門极加電壓超過閾值,源極漏極導通,於是就是1。

從軟體上看來,程式中10存於硬碟,執行時調入記憶體。記憶體中,高低電平靠電容來維持,並隔一段時間重新整理。cpu處理的時候連線記憶體,並使暫存器達到相同狀態。

處理後,資料進入暫存器,再次存入記憶體。

4樓:二氧化矽

其實本來就沒有0和1,這只是人為了思考方便抽象出來的。在數字系統裡其實只有高低電平,而這個高低電平又是怎麼來的呢?這個問題我也想過

結論是你按鍵盤,點滑鼠來的......按鍵以後某個鍵的電路被接通,從而產生了最初始的高低電平,然後又通過解碼電路產生了更為複雜的高低電平組合,再通過儲存、計算等過程形成了在計算機中寫好的程式,當然也是通過高低電平組合的方式存在儲存器當中。

再往前推到遠古計算機大概是紙帶上的孔通過感測器轉換成高低電平輸入到計算機裡的吧,過程應該差不多。

5樓:寧繼超

因為你在程式設計軟體中看到的01,實際上在處理器中就已經是高低電平了,拿FPGA舉例,你所編的程式其實最後是轉化為了內部觸發器的鏈結方式。

6樓:快刀老五

組合語言會被編譯成由10組成的機器指令,這些1和0會被儲存到儲存器中(這個儲存器或者是硬碟,或者是ROM,或者是RAM,但實際上都無所謂是哪種儲存器)。這樣微控制器啟動時會去儲存器中取指令,取出來就變成1010咯。

假如你還是不能理解,我打個比方,程式語言好比是我們的文字,有一台機器(好比微控制器),它能根據我們的文字去執行指令。第一步,我設計好文字指令,比如"前進"。那麼接下來,這台機器如何讀取我的指令並執行呢?

我首先得用筆和紙(可讀寫儲存裝置)把我這條指令"前進"寫在紙上(儲存器),然後機器按照預先規定的格式在剛才那張紙上去讀文字(取指令),讀取成功了就開始執行指令"前進"

你的問題的關鍵在於不了解儲存器的原理。如果想深入,請學習計算機組成原理

e x 1 x 1 x 2 2 x n n x 0 怎麼證,我是高中生,謝謝各位大佬了?

努力做個槓精 巧了我現在大一 這個公式我也是在高中的時候無意中推導出來的,畢業之後還在知乎上提問了一下 我這樣推導的公式有意義嗎?我高中的時候推導這個就是數學歸納法吧 但是我並不是用數學歸納法去證明它,我是閒的沒事兒胡亂寫,所以沒有數學歸納的格式。 順理成章 用高中的知識的話,最簡單的就是把右式減過...

計量OLS裡,證明了貝塔0,貝塔1的無偏性和有效性,為什麼還要做假設檢驗?

分析101 那麼,為了檢驗 是否為0,由於觀察不到真正的 我們不得不用現有的資料 從總體中抽樣而來 估計出乙個 當用的估計方法還不錯時 比如用了OLS 就滿足無偏性 有效性等,也就是說,如果現有資料不是現在這樣的,如果抽取出的是另外一組資料,那麼平均來說 都會估計得不錯,它的平均就是真正的我們所不知...

厲害的程式設計師是怎麼把 Bug 盡可能的轉化成編譯錯誤的?

hua liu 用spring之類框架時,用註解替代xml。xml的優點是該一些屬性引數不需要重新編譯。但是缺點就是把問題延遲到執行時才觸發。甚至說一些懶載入的反射類,啟動時也發現不了,只有執行過程中例項化時才報找不到類定義的異常。後來乾脆所有都用註解,而且能不用反射的盡量不用,這樣全世界都安靜了 ...