爲何計算機用二進制—布爾邏輯和邏輯門(一)


這周布爾邏輯和邏輯門內容,很重要,請細細品味。web


今天咱們開始"抽象"的旅程,不用管底層細節,把精力用來構建更復雜的系統。上一節,咱們談了計算機最先是機電設備,通常用十進制計數,好比用齒輪數來表明十進制, 再到晶體管計算機。編程


緣由一微信


幸運的是,只用 開/關 兩種狀態也能夠表明信息,這叫二進制。意思是"用兩種狀態表示",就像自行車有兩個輪,雙足動物有兩條腿,你可能以爲兩種狀態很少,你是對的!但若是隻須要表示 true 和 false,兩個值就夠了。app


電路閉合,電流流過,表明 "真",電路斷開,無電流流過,表明"假",二進制也能夠寫成 1 和 0 而不是 true 和 false, 只是不一樣的表達方式罷了。咱們下一節會講更多細節學習


晶體管的確能夠不僅是 開/關,還可讓不一樣大小的電流經過,一些早期電子計算機是三進制的,有 3 種狀態,甚至五進制,5 種狀態。問題是,狀態越多,越難區分信號,若是手機快沒電了或者附近有電噪音由於有人在用微波爐,信號可能會混在一塊兒...而每秒百萬次變化的晶體管會讓這個問題變得更糟!因此咱們把兩種信號儘量分開,只用"開"和"關"兩種狀態,能夠儘量減小這類問題。spa


緣由二.net


計算機用二進制的另外一個緣由是,有一整個數學分支存在,專門處理"真"和"假",它已經解決了全部法則和運算叫"布爾代數"!喬治·布爾(George Boole)是布爾二字的由來,是一位 19 世紀自學成才的英國數學家,他有興趣用數學式子 擴展亞里士多德基於哲學的邏輯方法,布爾用 邏輯方程 系統而正式的證實真理,他在 1847 年的第一本書"邏輯的數學分析"中介紹過。code


在"常規"代數裏,你在高中學的那種,變量的值是數字,能夠進行加法或乘法之類的操做。但在布爾代數中,變量的值是 true 和 false,能進行邏輯操做。orm


布爾代數中有三個基本操做:NOT, AND 和 OR。blog


這些操做很是有用,咱們明天將一個個來看。


相關閱讀:


  1.  計算機科學速成課 (所有目錄)

  2. 自動計算機和IBM—計算機早期歷史(四)

  3. 硅谷的由來—電子計算機(三)

一個會思考的技術小工

長按掃碼關注,天天五分鐘學習計算機最基礎的知識和原理

右下角

給個在看唄


本文分享自微信公衆號 - 硬核編程(hardcorecode)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索