tft每日頭條

 > 生活

 > 計算機為什麼采用二進制

計算機為什麼采用二進制

生活 更新时间:2025-01-11 07:53:39
1)二級制的引入、權值、

一個二進制值可以用來表示一個數字。我們可以将這兩種狀态稱為“1”和“0”,而不是“真”和“假”,這實際上非常有用。如果我們想表示更大的東西,我們隻需要添加更多的二進制數字。這與我們都熟悉的十進制數的工作方式完全相同。對于十進制數,單個數字隻有十個可能的值:0 到 9。要獲得大于 9 的數字,我們隻需開始在前面添加更多數字。

我們可以用二進制做同樣的事情。例如,讓我們以數字 263 為例,這個數字實際上代表什麼?嗯,這意味着我們有兩個 100、六個 10 和三個 1。如果将所有這些加在一起,我們得到了 263。注意每一列有不同的乘數;在這種情況下,它是 100、10 和 1。每個乘數都比右邊的大 10 倍。這是因為每列都有 10 個可能的數字,從 0 到 9,之後您必須将一個數字帶到下一列。出于這個原因,它被稱為基數 10 表示法,也稱為十進制,因為“deci-”表示 10。

二進制的工作方式完全相同,它隻是以 2 為基數。那是因為二進制中隻有兩個可能的數字,1 和 0。這意味着每個乘數必須比其右邊的列大兩倍。我們現在有 4s、2s 和 1s,而不是 100s、10s 和 1s。以二進制數 101 為例。這意味着我們有一個 4、零個 2 和一個 1。将所有這些加在一起,我們得到了以 10 為基數的數字 5。

但是為了表示更大的數字,二進制需要更多的數字。取這個二進制數:10110111。我們可以用同樣的方法把它轉換成十進制。我們有 1*128 0*64 1*32 1*16 0*8 1*4 1*2 1*1 = 183。

(2)加法運算、表示範圍

二進制數的數學也不難。

以 183 19 的十進制加法為例。首先我們加上 3 9 = 12,所以我們将 2 作為總和并将 1 進位到 10s 列。現在我們加上 8 1 1(進位)= 10,所以總和是 0 攜帶 1。最後我們加上 1 1(進位)= 2,所以總和是 202。

二進制,我們從 1s 列開始。添加 1 1 = 2 但沒有符号 2,所以我們使用 10 并将 0 作為我們的總和并進位 1,就像在我們的十進制示例中一樣。 1 1 1(進位)= 3,或二進制的 11,所以我們把總和設為 1 并再次進位 1,以此類推。我們最終得到這個數字 11001010,它與基數 10 中的數字 202 相同。

【擴充】:如下的全加器,完成1位二進制的加法,注意輸入有進位,輸出也有進位,這些級聯起來,就可以完成8位的加法

計算機為什麼采用二進制(二進制)1

這些二進制數字 1 或 0 中的每一個都稱為位。所以在最後幾個例子中,我們使用了 8 位數字,它們的最低值為 0,最高值為 255,這要求所有 8 位都設置為 1。這是 256 個不同的值,或 2^8。您可能聽說過 8 位計算機或 8 位圖形或音頻。這些計算機的大部分操作都是以 8 位塊為單位進行的,但是 256 個不同的值并不能處理太多,因此這意味着 8 位遊戲之類的東西僅限于 256 種不同顔色的圖形。

8 位在計算中是如此常見的大小,它有一個特殊的詞:“字節”。一個字節是 8 位。如果你有 10字節,這意味着你真的有 80bit。您聽說過千字節、兆字節、千兆字節等。這些前綴表示不同規模的數據。就像一公斤是 1000 克一樣,一千字節是 1000 字節,或者實際上是 8000 位。 Mega 是一百萬字節,giga 是十億字節。今天,您甚至可能擁有一個存儲容量為 1 TB 的硬盤。那是八萬億個 1 和 0。

但是等等,這并不總是正确的。在二進制中,千字節有 2^10 個字節,或 1024。在談論千字節時,1000 也是正确的,但我們應該承認它不是唯一正确的定義。您可能還聽說過 32 位或 64 位計算機這個詞。您現在幾乎可以肯定正在使用一個。這意味着它們以 32 位或 64 位的塊運行。這是很多位!

您可以用 32 位表示的最大數字略低于 43 億,即二進制中的 32 個 1。這就是為什麼我們的 Instagram 照片如此流暢漂亮的原因;它們由數百萬種顔色組成,因為今天的計算機使用 32 位圖形。

(3)二級制表示負數

當然,并不是所有的東西都是正數,比如我在大學的銀行賬戶,所以我們需要一種表示正數和負數的方法。大多數計算機使用第一位作為符号,1 代表負數,0 代表正數,然後使用剩餘的 31 位作為數字本身。這給了我們大約正負 20 億的範圍。雖然這是一個相當大的數字範圍,但對于許多任務來說還不夠。地球上有七十億人口,美國的國債畢竟将近二十萬億美元。這就是 64 位數字有用的原因。 64 位數字可以表示的最大值約為 9.2 千億。這是很多可能的數字,有望在一段時間内保持在美國國債之上。

【擴充】:用第一位作為符号,是原碼形式表示。

但是更重要的是補碼形式表示。

正數的補碼形式:和原碼形式相同,例如7,表示為 0000’0111;

負數的補碼形式:先将負數變為正數,将正數表達為原碼形式,然後全部取反 1;

(這個動作是補碼運算)

-7=>7=>0000'0111=>1111'1000=>1111'1001。

數字在計算機中,全部是以補碼形式存儲。

補碼的作用,使得加法和減法統一。

假設兩個數字,(3,5),存放在内存中,注意:為補碼形式存放。

如果是3 5,直接進入加法器,0000' 0011 0000'0101=0000'1000,得到8的補碼;

如果是3-5,将5進行補碼運算(取反加1)0000'0101=>1111'1010=>1111'1011

然後進入加法器,0000' 0011 1111'1011= 1111'1110,得到-2的補碼;

也就是說加法器電路可以用于加法和減法,而且輸出可以直接放入内存,隻不過減法的時候,對減數首先進行補碼運算。

(4)二進制表示内存地址

最重要的是,正如我們将在後面的情節中讨論的那樣,計算機必須在其内存中标記稱為“地址”的位置,以便存儲和檢索值。随着計算機内存增長到 GB 和 TB 級(即數萬億字節),也必須擁有 64 位内存地址。

【擴充】内存地址,直接采用原碼表示,範圍0---2^n-1 n=地址線條數,例如64

(5)二進制表示小數

除了負數和正數之外,計算機還必須處理非整數的數字,例如 12.7 和 3.14,甚至可能是 Stardate 43989.1。這些被稱為浮點數,因為小數點可以在數字中間浮動。已經開發了幾種表示浮點數的方法,其中最常見的是 IEEE 754 标準。你認為曆史學家是唯一不擅長命名事物的人!本質上,這個标準存儲十進制值有點像科學記數法。例如,625.9 可以寫成 0.6259 * 10^3。這裡有兩個重要的數字。 .6259 被稱為有效數,3 是指數。

在 32 位浮點數中,第一位用于表示數字的正負号。接下來的 8 位用于存儲指數,其餘 23 位用于存儲有效數。

計算機為什麼采用二進制(二進制)2

1.0001的第一個1不參加編碼:小數點移動的時候,必須要保證小數點前面是1,因此第一個1就不用參加編碼了。指數3 127進行二進制編碼,也就是說指數的表達範圍【-127,128】

(6)二進制表示字符

好的,我們已經讨論了很多關于數字的内容,但是您的名字可能是由字母組成的,因此對于計算機來說,也有一種表示文本的方法非常有用。然而,計算機并沒有使用特殊的字母存儲形式,而是簡單地使用數字來表示字母。最直接的方法可能是簡單地給字母表中的字母編号,A 是 1,B 是 2,C 是 3,依此類推。事實上,著名的英國作家弗朗西斯·培根 (Francis Bacon) 在 1600 年代使用 5 位序列對英文字母表的所有 26 個字母進行編碼,以發送秘密信息。

5 位可以存儲 32 個可能的值,所以這對于 26 個可能的字母來說已經足夠了,但對于标點符号、數字和大小寫字母來說還不夠。輸入 ASCII,美國信息交換标準代碼。 ASCII 于 1963 年發明,是一種 7 位代碼,足以存儲 128 個不同的值。有了這個擴展的範圍,它可以對大寫字母、小寫字母、數字 0 到 9 以及 @ 符号和标點符号等符号進行編碼。例如,小寫的 A 由數字 97 表示,而大寫的 A 是 65,冒号是 58,右括号是 41。 ASCII 甚至還有一些特殊的命令代碼,例如換行符來告訴計算機在哪裡換行到下一行。在較舊的計算機中,如果您不包含換行符,則文本行實際上會超出屏幕邊緣。

因為 ASCII 是一個如此早期的标準,所以它被廣泛使用,并允許不同公司制造的不同計算機交換數據。這種普遍交換信息的能力稱為互操作性。然而,它确實有一個主要的限制:它實際上隻是為英語設計的。

幸運的是,字節注 7 中有 8 位,并且很快流行使用以前未使用的代碼 128-255 來表示國家字符。在美國,這些額外的數字主要用于編碼額外的符号,如數學符号、圖形元素和常見的重音字符。另一方面,雖然拉丁字符被普遍使用,但俄羅斯計算機使用額外的代碼來編碼西裡爾字符,希臘計算機使用希臘字母等。并且國家字符代碼在大多數國家/地區都運行良好。

問題是,如果你在土耳其電腦上打開一封用拉脫維亞語寫的電子郵件,結果是完全無法理解的,而且随着亞洲計算的興起,事情完全崩潰了,因為中文和日語等語言有數千個字符。沒有辦法用 8 位編碼所有這些字符。

作為回應,每個國家都發明了多字節編碼方案,所有這些方案都是互不兼容的。日本人對這個編碼問題非常熟悉,甚至給它起了一個特殊的名字,mojibake,意思是“亂碼”。

就這樣它誕生了:Unicode,一種統治它們的格式。于 1992 年設計,最終廢除了所有不同的國際方案,取而代之的是一種通用編碼方案。最常見的 Unicode 版本使用 16 位,其中有超過一百萬個代碼的空間,足以容納曾經使用過的每種語言的每個字符——超過 120,000 個在 100 多種類型的腳本中,加上數學符号甚至圖形字符的空間,例如表情符号。

(7)二進制表示其它内容

與 ASCII 定義将字母編碼為二進制數字的方案相同,MP3 或 GIF 等其他文件格式使用二進制數字對照片、電影和音樂中的像素的聲音或顔色進行編碼。最重要的是,在幕後,這一切都歸結為長序列的位。短信、這個 YouTube 視頻、互聯網上的每個網頁,甚至您計算機的操作系統都隻是一長串 1 和 0。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved