官术网_书友最值得收藏!

1.2.2 奇妙的二進制

人們對于十進制運算非常熟悉,如:12+23=35,利用心算就可以得出答案;如果是75+88×22,這樣比較復(fù)雜的運算,利用紙和筆也可以很快計算出來;但是如果要計算1×2×3×4×5×6×…10000這樣的問題,如果沒有計算機的幫助,很難快速計算出來。

這里首先要解決的是如何用機器表示十進制的問題,當然在前面機械式計算機用齒輪的方法解決了十進制的問題,但是機械的方法太慢,能夠計算的數(shù)值不夠大。在現(xiàn)代電子技術(shù)中速度最快、使用最多的是電磁波,利用電壓顯然是可以表示,如12+23,可以將12V的電壓與23V的電壓疊加,可以得到35V的電壓,但是現(xiàn)代電子制造技術(shù)證明,得到10個狀態(tài)穩(wěn)定的電壓是較困難的,會極大提高硬件制造的成本,但是利用電子技術(shù)得到2個穩(wěn)定的電壓狀態(tài)相對容易很多,成本也低很多,因此,二進制成為計算機的首選。另外,布爾代數(shù)的出現(xiàn),解決了二進制的運算法則問題,開關(guān)電路的發(fā)明解決了用低成本的物理器件實現(xiàn)二進制的物理問題。那么,二進制的奇妙之處在哪里呢?

1.物理實現(xiàn)性價比高

開關(guān)電路利用電壓的高電平和低電平分別表示二進制的1和0,當然,反過來也可以,如果5V表示1,0V表示0,顯然二者的電壓差為5V。如果是十進制,0、1、2、3、4、5、6、7、8、9十個狀態(tài)的表示就要十個電壓值,如果壓差同樣達到5V,那么電路的最大電壓就達到50V,由于電路都存在電阻,電壓越高,電路的損耗越大,電路和器件更容易發(fā)熱,造成元器件損壞,顯然這不是最好的選擇。

2.運算法則簡單

二進制的運算法則非常簡單,因為運算法則的多少直接決定了運算機器的復(fù)雜程度。也就是說,運算規(guī)則越多,執(zhí)行運算任務(wù)的機器越復(fù)雜;運算規(guī)則越少,執(zhí)行運算任務(wù)的機器越簡單。因此,選用二進制方式對設(shè)計運算機器特別有利。對于計算機來說,相當于簡化了中央處理器(CPU)的設(shè)計。如果采用十進制,將大大增加制造成本。二進制主要有以下運算法則:

(1)算術(shù)運算

①加法運算(4條規(guī)則)。

0+0=0 0+1=1 1+0=1 1+1=10(向高位進位,逢二進一)

例如,(11011)2+(1001)2=(100100)2

②減法運算(4條規(guī)則)。

0-0=0 1-1=0 1-0=1 0-1=1(向高位借位,借一當二)

例如,(1110)2-(1001)2=(101)2

③乘法運算(4條規(guī)則)。

0×0=0 0×1=0 1×0=0 1×1=1

④除法運算。

0÷0無意義0÷1=01÷1=11÷0無意義

(2)移位運算

①左移:二進制的左移1位運算相當于乘2運算,所以CPU在進行乘法運算時采用的就是左移和加法運算。

②右移:二進制的右移1位運算相當于除2運算,所以CPU在進行除法運算時采用的就是右移和減法運算。

例如,3×2的二進制運算0011×0010,只要將0011左移1位,變?yōu)?110,對應(yīng)于十進制的6。

(3)邏輯運算

由于二進制只有兩種狀態(tài)(符號),從而便于進行邏輯判斷和邏輯運算。二進制數(shù)的“1”和“0”可分別表示邏輯值的“真”和“假”。邏輯運算包括邏輯或、邏輯與、邏輯非3種運算。

①邏輯或運算(運算符為“or”)。或運算規(guī)則如下:

0or0=0 0or1=1 1or0=1 1or1=1

邏輯或運算特點:只要有一個為真結(jié)果為真。

例如,按位求二進制數(shù)111010和101100的或運算,其算式如下:

②邏輯與運算(運算符為“and”)。與運算規(guī)則如下:

0and0=0 0and1=0 1and0=0 land1=1

邏輯與運算特點:當兩個都為真時,結(jié)果才為真。

例如,按位求二進制數(shù)111010和101100的與運算,其算式如下:

③邏輯非運算(邏輯否定,運算符為“not”)

非運算規(guī)則為:not0=1 not1=0

利用3種基本邏輯運算可以組合成多種邏輯運算,如異或、同或、與非、或非等。

3.數(shù)據(jù)存儲容易實現(xiàn)

計算機處理的數(shù)據(jù)和結(jié)果需要永久存儲,采用二進制形式記錄數(shù)據(jù),物理上容易實現(xiàn)。現(xiàn)代計算機實現(xiàn)數(shù)據(jù)存儲的方式有磁存儲、光存儲、半導(dǎo)體存儲等。

①磁存儲:利用磁的南北極特性,對磁性記錄設(shè)備進行磁化(南極、北極)從而保存二進制數(shù)據(jù)。

②光存儲:利用光的反射原理,利用激光在光盤上融化形成凹凸反射界面,利用有無反射或反射角的區(qū)別來達到二進制數(shù)據(jù)的存儲目的。

③半導(dǎo)體存儲:利用半導(dǎo)體的特性,利用電流對半導(dǎo)體結(jié)進行熔斷或不熔斷,達到二進制數(shù)據(jù)的存儲。

4.數(shù)據(jù)傳輸中出現(xiàn)的錯誤容易糾正

因為二進制只有兩個符號,“0”和“1”,當發(fā)現(xiàn)一組二進制碼中的某位符號錯了,只要取相反值就得到正確的值。十進制不太容易,如果某位符號錯了,還有9種可能。

主站蜘蛛池模板: 宜州市| 那坡县| 隆安县| 分宜县| 常熟市| 临西县| 宜兰县| 阳高县| 琼海市| 鲜城| 万年县| 满城县| 特克斯县| 淳安县| 昌邑市| 吉隆县| 江津市| 离岛区| 乐亭县| 肇庆市| 长岭县| 丹阳市| 五指山市| 泽普县| 象州县| 老河口市| 云和县| 印江| 界首市| 清流县| 泰州市| 砚山县| 历史| 濮阳县| 榆社县| 宝清县| 林芝县| 武山县| 泰宁县| 获嘉县| 兖州市|