cpu二進(jìn)制0和1
CPU是電腦的重要組成部分,是不可缺少的角色。下面是學(xué)習(xí)啦小編帶來(lái)的關(guān)于cpu只認(rèn)識(shí)0和1么的內(nèi)容,歡迎閱讀!
cpu二進(jìn)制0和1:
二進(jìn)制是計(jì)算技術(shù)中廣泛采用的一種數(shù)制。二進(jìn)制數(shù)據(jù)是用0和1兩個(gè)數(shù)碼來(lái)表示的數(shù)。它的基數(shù)為2,進(jìn)位規(guī)則是“逢二進(jìn)一”,借位規(guī)則是“借一當(dāng)二”,由18世紀(jì)德國(guó)數(shù)理哲學(xué)大師萊布尼茲發(fā)現(xiàn)。當(dāng)前的計(jì)算機(jī)系統(tǒng)使用的基本上是二進(jìn)制系統(tǒng),數(shù)據(jù)在計(jì)算機(jī)中主要是以補(bǔ)碼的形式存儲(chǔ)的。計(jì)算機(jī)中的二進(jìn)制則是一個(gè)非常微小的開(kāi)關(guān),用1來(lái)表示“開(kāi)”,0來(lái)表示“關(guān)”。
二進(jìn)制是計(jì)算技術(shù)中廣泛采用的一種數(shù)制。二進(jìn)制數(shù)據(jù)是用0和1兩個(gè)數(shù)碼來(lái)表示的數(shù)。它的基數(shù)為2,進(jìn)位規(guī)則是“逢二進(jìn)一”,借位規(guī)則是“借一當(dāng)二”,由18世紀(jì)德國(guó)數(shù)理哲學(xué)大師萊布尼茲發(fā)現(xiàn)。當(dāng)前的計(jì)算機(jī)系統(tǒng)使用的基本上是二進(jìn)制系統(tǒng)。
20世紀(jì)被稱作第三次科技革命的重要標(biāo)志之一的計(jì)算機(jī)的發(fā)明與應(yīng)用,因?yàn)閿?shù)字計(jì)算機(jī)只能識(shí)別和處理由‘0’.‘1’符號(hào)串組成的代碼。其運(yùn)算模式正是二進(jìn)制。19世紀(jì)愛(ài)爾蘭邏輯學(xué)家喬治布爾對(duì)邏輯命題的思考過(guò)程轉(zhuǎn)化為對(duì)符號(hào)"0''.''1''的某種代數(shù)演算,二進(jìn)制是逢2進(jìn)位的進(jìn)位制。0、1是基本算符。因?yàn)樗皇褂?、1兩個(gè)數(shù)字符號(hào),非常簡(jiǎn)單方便,易于用電子方式實(shí)現(xiàn)。
主要特點(diǎn)折疊優(yōu)點(diǎn)數(shù)字裝置簡(jiǎn)單可靠,所用元件少;只有兩個(gè)數(shù)碼0和1,因此它的每一位數(shù)都可用任何具有兩個(gè)不同穩(wěn)定狀態(tài)的元件來(lái)表示;基本運(yùn)算規(guī)則簡(jiǎn)單,運(yùn)算操作方便。折疊缺點(diǎn)用二進(jìn)制表示一個(gè)數(shù)時(shí),位數(shù)多。因此實(shí)際使用中多采用送入數(shù)字系統(tǒng)前用十進(jìn)制,送入機(jī)器后再轉(zhuǎn)換成二進(jìn)制數(shù),讓數(shù)字系統(tǒng)進(jìn)行運(yùn)算,運(yùn)算結(jié)束后再將二進(jìn)制轉(zhuǎn)換為十進(jìn)制供人們閱讀。
二進(jìn)制和十六進(jìn)制的互相轉(zhuǎn)換比較重要。不過(guò)這二者的轉(zhuǎn)換卻不用計(jì)算,每個(gè)C,C++程序員都能做到看見(jiàn)二進(jìn)制數(shù),直接就能轉(zhuǎn)換為十六進(jìn)制數(shù),反之亦然。我們也一樣,只要學(xué)完這一小節(jié),就能做到。首先我們來(lái)看一個(gè)二進(jìn)制數(shù):1111,它是多少呢?你可能還要這樣計(jì)算:1 * 2^0 + 1 * 2^1 + 1 * 2^2 + 1 * 2^3 = 1 * 1 + 1 * 2 + 1 * 4 + 1 * 8 = 15。然而,由于1111才4位,所以我們必須直接記住它每一位的權(quán)值,并且是從高位往低位記,:8、4、2、1。即,最高位的權(quán)值為2^3 = 8,然后依次是 2^2 = 4,2^1=2, 2^0 = 1。記住8421,對(duì)于任意一個(gè)4位的二進(jìn)制數(shù),我們都可以很快算出它對(duì)應(yīng)的10進(jìn)制值。
下面列出四位二進(jìn)制數(shù) xxxx 所有可能的值(中間略過(guò)部分)僅4位的2進(jìn)制數(shù)快速計(jì)算方法 十進(jìn)制值 十六進(jìn)值1111 = 8 + 4 + 2 + 1 = 15 F1110 = 8 + 4 + 2 + 0 = 14 E1101 = 8 + 4 + 0 + 1 = 13 D1100 = 8 + 4 + 0 + 0 = 12 C1011 = 8 + 0 + 2+ 1 = 11 B1010 = 8 + 0 + 2 + 0 = 10 A1001 = 8 + 0 + 0 + 1 = 9 9....0001 = 0 + 0 + 0 + 1 = 10000 = 0 + 0 + 0 + 0 = 0 0二進(jìn)制數(shù)要轉(zhuǎn)換為十六進(jìn)制,就是以4位一段,分別轉(zhuǎn)換為十六進(jìn)制。
如(上行為二制數(shù),下面為對(duì)應(yīng)的十六進(jìn)制):1111 1101 , 1010 0101 , 1001 1011F D , A 5 , 9 B反過(guò)來(lái),當(dāng)我們看到 FD時(shí),如何迅速將它轉(zhuǎn)換為二進(jìn)制數(shù)呢?先轉(zhuǎn)換F:看到F,我們需知道它是15(可能你還不熟悉A~F這六個(gè)數(shù)),然后15如何用8421湊呢?應(yīng)該是8 + 4 + 2 + 1,所以四位全為1 :1111。接著轉(zhuǎn)換 D:看到D,知道它是13,13如何用8421湊呢?應(yīng)該是:8 + 4 + 1,即:1101。所以,FD轉(zhuǎn)換為二進(jìn)制數(shù),為: 1111 1101由于十六進(jìn)制轉(zhuǎn)換成二進(jìn)制相當(dāng)直接,所以,我們需要將一個(gè)十進(jìn)制數(shù)轉(zhuǎn)換成2進(jìn)制數(shù)時(shí),也可以先轉(zhuǎn)換成16進(jìn)制,然后再轉(zhuǎn)換成2進(jìn)制。
比如,十進(jìn)制數(shù) 1234轉(zhuǎn)換成二制數(shù),如果要一直除以2,直接得到2進(jìn)制數(shù),需要計(jì)算較多次數(shù)。所以我們可以先除以16,得到16進(jìn)制數(shù):被除數(shù) 計(jì)算過(guò)程 商 余數(shù)1234 1234/16 77 277 77/16 4 13 (D)4 4/16 0 4結(jié)果16進(jìn)制為: 0x4D2然后我們可直接寫出0x4D2的二進(jìn)制形式: 0100 1101 0010。其中對(duì)映關(guān)系為:0100 -- 41101 -- D0010 -- 2同樣,如果一個(gè)二進(jìn)制數(shù)很長(zhǎng),我們需要將它轉(zhuǎn)換成10進(jìn)制數(shù)時(shí),除了前面學(xué)過(guò)的方法是,我們還可以先將這個(gè)二進(jìn)制轉(zhuǎn)換成16進(jìn)制,然后再轉(zhuǎn)換為10進(jìn)制。下面舉例一個(gè)int類型的二進(jìn)制數(shù):01101101 11100101 10101111 00011011我們按四位一組轉(zhuǎn)換為16進(jìn)制: 6D E5 AF 1B。
看了cpu0和1文章內(nèi)容的人還看:
3.如何解決多核處理器兼容問(wèn)題