在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

古人哲學與現(xiàn)代計算機信息編碼不謀而合

Q4MP_gh_c472c21 ? 來源:嵌入式ARM ? 作者:嵌入式ARM ? 2020-12-03 09:47 ? 次閱讀

1. 中國古老的陰陽八卦

首先我們看看《易傳·系辭上傳》,“易有太極,是生兩儀,兩儀生四象,四象生八卦。”從以下這個圖就很好理解:

細心的你也許會發(fā)現(xiàn),這是二進制的級數(shù)增長,這不就是1,2,4,8么!

再看看,《道德經(jīng)》:道生一,一生二,二生三,三生萬物。 這段話,其實跟《易傳》的很像,意思是:

道是獨一無二的,道本身包含陰陽二氣,陰陽二氣相交而形成一種適勻的狀態(tài),萬物在這種狀態(tài)中產(chǎn)生。

理工科出身的我,很容易想到,陰陽便是0和1,陰陽的相交,即0和1的組合,便可產(chǎn)生萬物(計算機里面的一切)。 很多書都講這是古人的宇宙生成論或者是樸素的哲學概念,但這跟計算機里面的二進制原理為什么這么相似,這么巧合? 2. 過去的信息傳遞在沒有電話和計算機的年代,人們是怎么記錄或傳遞信息的?狼煙烽火用來傳遞敵情(有和無)

類似的,還有紙鳶(風箏)。現(xiàn)在中國風箏有倆流派,即“北濰坊,南陽江”。

結(jié)繩

人們用來計數(shù)記事和傳遞信息。文字產(chǎn)生之前人們用來記數(shù)記事和傳遞信息的方法。相傳大事打大結(jié),小事打小結(jié)。

擊鼓鳴金看《三國演義》就會知道,里面多次提到擊鼓和鳴金。不同的方式和節(jié)奏傳遞不同的信息。

旗語在軍事上也用的非常多。

故夜戰(zhàn)多火鼓,晝戰(zhàn)多旌旗,所以變?nèi)酥恳病?/p>

《孫子兵法》

諸如此類的,還有很多很多,如飛鴿傳書、魚傳尺素等。 3. 近現(xiàn)代的電子信息首先看看電報

歐洲的科學家在18世紀逐漸發(fā)現(xiàn)電的各種特質(zhì)。同時開始有人研究使用電來傳遞訊息的可能。早在1753年,一名英國人便提出使用靜電來拍發(fā)電報。

還有摩斯密碼

摩爾斯電碼也被稱作摩斯密碼,是一種時通時斷的信號代碼,通過不同的排列順序來表達不同的英文字母、數(shù)字和標點符號。它發(fā)明于1837年,是一種早期的數(shù)字化通信形式。不同于現(xiàn)代化的數(shù)字通訊,摩爾斯電碼只使用零和一兩種狀態(tài)的二進制代碼,它的代碼包括五種:短促的點信號“?”,讀“滴”(Di)保持一定時間的長信號“—”,讀“嗒”(Da)表示點和劃之間的停頓、每個詞之間中等的停頓,以及句子之間長的停頓。

電子計算機到1946年,世界第一臺電子計算機誕生了。它是一個龐然大物,用了18000個電子管,占地170平方米,重達30噸,耗電功率約150千瓦,每秒鐘可進行5000次運算。 這個功能性能,從現(xiàn)在看來雖然很渣,但是其誕生具有劃時代意義。 發(fā)明計算機的同學們用8個晶體管的“通”或“斷”組合出一些狀態(tài)來表示世間萬物。

在這里,不得不提一個人——馮·諾依曼。他是匈牙利裔美籍數(shù)學家、物理學家、計算機科學家,在計算機、博弈論、核武器和生化武器等領(lǐng)域的全才之一,被后來人稱為“計算機之父”和“博弈論之父”。 我們今天用到的計算機,都是基于馮諾依曼體系結(jié)構(gòu)的。4. 字節(jié)講了這么多,現(xiàn)在開始講字節(jié),開始之前,先復習下幾個概念:

比特(bit):也可稱為“位”,是計算機信息中的最小單位,是 binary digit(二進制數(shù)位)的縮寫,指二進制中的一位

字節(jié)(Byte):計算機中信息計量的一種單位,一個位就代表“0”或“1”,每8個位(bit)組成一個字節(jié)(Byte)

字符(Character):文字與符號的總稱,可以是各個國家的文字、標點符號、圖形符號、數(shù)字等

字符集(Character Set):是多個字符的集合

編碼(Encoding):信息從一種形式或格式轉(zhuǎn)換為另一種形式的過程

解碼(decoding):編碼的逆過程

字符編碼(Character Encoding):按照何種規(guī)則存儲字符

我們知道字節(jié)(Byte)是計算機信息存儲的基本單位,它由8個位(bit)組成。但是,為什么是8個位,而不是三個四個,也不是九個十個? 網(wǎng)上很多都說是因為ASCII,其實不是,這不是因果關(guān)系。 位(bit),一個位只有兩種狀態(tài),0和1,可表示晶體管的“通”和“斷”,計算機的存儲和邏輯就是通過這些晶體管的“通”和“斷”來表達。 早期的計算機是用來做數(shù)學運算的,數(shù)字就0~9,其實4個bit就足夠了,可以通過BCD碼的方式來表達數(shù)字。 但是,不能用4個bit來表示一個Byte啊,4個bit表示數(shù)字還好,其他字母呢,那得用兩個byte來表示,跨byte訪問,會降低效率啊。 歷史上,早期的Byte的大小沒有固定的標準,其很大程度依賴于硬件設(shè)計,使用1到48位的情況都有,但比較常用的是6位(BCDIC)。使用6位和9位的計算機在19世紀60年代非常常見,這些系統(tǒng)通常具有12、18、24、30、36、48或60位的存儲。

4位和6位也是在早期比較常用的,它們當時被用在美國陸軍(FIELDATA)和海軍常見的可打印圖形模式。這些表示包括字母數(shù)字字符和特殊的圖形符號。這些集合在1963年擴展為7位編碼,稱為美國信息交換標準代碼(ASCII),稱為聯(lián)邦信息處理標準,取代了1960年代美國政府和大學不同部門使用的不兼容的電傳打印機代碼。這個就是ASCII的由來。呵呵,ASCII字符其實用7位就夠了,不是8位哦。

那么今天的8位Byte是怎么來的呢? 這就要提到System/360了。在十九世紀60年代初期,IBM同時積極參與ASCII標準化,同時在System/360產(chǎn)品線中引入了八位擴展二進制編碼十進制交換碼(EBCDIC),這是對六位二進制編碼十進制(BCDIC)的擴展。IBM突出的表現(xiàn),逐漸就讓8位Byte普及開來了。

但是呢,這個EBCDIC和ASCII是不一樣的哦。 十九世紀70年代八位微處理器的發(fā)展普及了這種存儲容量。早期的計算機如Intel的8088、8086是可以通過4位訪問的哦,那時叫做半字節(jié)。 也許你用過8位單片機,但是你聽說過4位單片機嗎?哈哈!5. 進制我們最熟知的是十進制,從小接觸的數(shù)字和算術(shù)計算用的都是十進制。然后學到信息計算機相關(guān)知識了,就開始接觸或認識二進制。上面也提到了,陰陽八卦用的就是二進制。其實二進制普遍存于大自然中,也存在于生活中。 那么除了十進制、二進制,還有哪些進制呢?八進制、十六進制等等。

這些都是程序員熟悉的。 講了這么多,什么是進制? 進制就是進位計數(shù)制,是人為定義的帶進位的計數(shù)方法。十進制是逢十進一,二進制是逢二進一,十六進制是逢十六進一,那么X進制就是逢X進一了。 進制在數(shù)字上怎么表示? 也很簡單,進制小于10的,用阿拉伯數(shù)字就很容易表達出來。

如:十進制:0, 1, 2, 3,4, 5, 6, 7, 8,9,10。這個10就是逢十進一變成兩位數(shù)了。八進制:0, 1,2,3,4,5, 6,7,10。這個10就是逢八進一變成兩位數(shù)了,按數(shù)值計算,這個八進制的10相當于十進制的9,是表達形式變了。二進制:0, 1,10。這個10就是逢二進一變成兩位數(shù)了。 那么進制大于10的呢,如十六進制怎么表示?十六進制:0, 1,2,3,4,5, 6,7,8,9,A, B, C, D, E, F, 10。這個10就是逢十六進一變成兩位數(shù)了。因為阿拉伯數(shù)字沒有單一數(shù)字表達的10, 11, 12, 13, 14, 15,所以采用A, B, C, D, E, F來表達,只是表達形式不一樣而已。 上面我們提到了個BCD碼,啥是BCD碼?十六進制又是什么鬼?

十進制 二進制 八進制 十六進制
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 100 10

于是,可以約定,這些進制的表達方式,不然10到底是幾進制的表達的數(shù)字是多少都不知道。 二進制用B(Binary)來表達,如1001B,但是編程語言中最小的單位是Byte,所以沒有約定表達二進制的方法。 八進制用O(Oct)來表達,寫成123O?這個O和0寫法相近,會讓人誤解的,好困惑哦。在編程語言中,通常在數(shù)字前面加個0,即0123表示八進制的123,注意跟十進制的123不相等哦。 十六進制用H(Hex)表示,如2BH,編程語言中用0x開頭來表示,如0x2B。 這里為什么提二進制、十進制、八進制和十六進制呢?

十進制剛才說了,是最常見接觸最多的進制,而二進制是計算機的基本進制,但計算機通常以8 Bit的Byte來作為基本單位,那么一個Byte的剛好可以表示16個數(shù),所以,十六進制是非常常用的,而八進制就是對于半個Byte了。 好了,問題來了,除了這些常見了,有沒有三進制呢,十七進制呢?答案是有的,隨你喜歡,多少都行。 Python中有個int的內(nèi)置函數(shù),可以轉(zhuǎn)換各種進制。以下看看100這個數(shù)在各個進制中對應(yīng)的十進制數(shù)值是多少。

>>> int('100', 2)4>>> int('100', 3)9>>> int('100', 4)16>>> int('100', 7)49>>> int('100', 8)64>>> int('100', 10)100>>> int('100', 16)256>>> int('100', 17)289>>> int('100', 35)1225>>> int('100', 36)1296>>> int('100', 55)Traceback (most recent call last): File "", line 1, in ValueError: int() base must be >= 2 and <= 36這個內(nèi)置函數(shù)int只能算大于等于2并小于等于36進制的數(shù)。6.?BCD碼上文提到了個BCD碼,這是什么鬼?

BCD碼(Binary-Coded Decimal?),用4位二進制數(shù)來表示1位十進制數(shù)中的0~9這10個數(shù)碼,是一種二進制的數(shù)字編碼形式,用二進制編碼的十進制代碼。

如果不懂這個概念,要認真讀幾次上面這段話。簡單地理解為,1位十進制數(shù)碼用4位二進制數(shù)來表示,但根據(jù)這1位十進制數(shù)碼和4位二進制數(shù)的對應(yīng)關(guān)系(或者表達關(guān)系)不一樣而有不同的形式,如8421碼、2421碼、5421碼和余3碼、余3循環(huán)碼、格雷碼,其中前面三種是有權(quán)碼,后面三種是無權(quán)碼。

有權(quán)碼,自然二進制代碼是按照二進制代碼各位權(quán)值大小,以自然向下加一,逢二進一的方式來表示數(shù)值的大小所生成的代碼。

顯然,n位自然二進制代碼共有2^n種狀態(tài)取值組合,由于代碼中各位的位權(quán)值分別為2^3,2^2,2^1,2^0,即8421,所以也稱為8421碼。這樣每位二進制碼元都有確定位權(quán)值的編碼,稱為有權(quán)碼,屬于恒權(quán)代碼。相應(yīng)的,沒有確定位權(quán)值的編碼叫無權(quán)碼,也叫非恒權(quán)代碼。

百度百科——有權(quán)碼

8421碼8421 BCD碼是最基本和最常用的BCD碼,0~9的8421碼與4位自然二進制形式完全一樣,即用0000~1001分別代表它所對應(yīng)的十進制數(shù)。要計算一個多位的8421碼可以每位單獨拆分出來,并算出對應(yīng)的二進制碼(不足四位前面補0),然后拼起來即可。舉個例子: 8421碼:235,拆分出來是2、3、5,分別對應(yīng)二進制是0010、0011、1001,拼起來是0010 0011 1001。

5421和2421

5421 BCD碼和2421 BCD碼,這兩種有權(quán)BCD碼中,有的十進制數(shù)碼存在兩種加權(quán)方法,例如,5421 BCD碼中的數(shù)碼5,既可以用1000表示,也可以用0101表示;2421 BCD碼中的數(shù)碼6,既可以用1100表示, 也可以用0110表示。這說明5421 BCD碼和2421 BCD碼的編碼方案都不是惟一的。 下面列舉8421碼、2421碼、5421碼和一位十進制數(shù)的對照關(guān)系。

十進制數(shù) 8421碼 5421碼 2421碼
0 0000 0000 0000
1 0001 0001 0001
2 0010 0010 0010
3 0011 0011 0011
4 0100 0100 0100
5 0101 1000 1011
6 0110 1001 1100
7 0111 1010 1101
8 1000 1011 1110
9 1001 1100 1111

余3碼和余3循環(huán)碼余3碼實很簡單,是8421 BCD碼的每個碼組加3(0011)形成的。為什么有余3碼這個東西呢,實際上其常用于BCD碼的運算電路中。 余3循環(huán)碼實際上是變權(quán)碼,每一位的1并不代表固定的數(shù)值,十進制數(shù)的余3循環(huán)碼就是取4位格雷碼中的十個代碼組成。 那么什么是格雷碼?格雷碼格雷碼(Gray Code),其由很多曾用名,如格萊碼、戈萊碼、循環(huán)碼、反射二進制碼、最小差錯碼等。 格雷碼有很多種表現(xiàn)形式

為什么要用格雷碼呢?

格雷碼是一種具有反射特性和循環(huán)特性的單步自補碼,其循環(huán)和單步特性消除了隨機取數(shù)時出現(xiàn)重大錯誤的可能,其反射和自補特性使得對其進行求反操作也非常方便,所以,格雷碼屬于一種可靠性編碼,是一種錯誤最小化的編碼方式,因此格雷碼在通信和測量技術(shù)中得到廣泛應(yīng)用。

格雷碼屬于可靠性編碼,是一種錯誤最小化的編碼方式。因為,雖然自然二進制碼可以直接由數(shù)/模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號,但在某些情況,例如從十進制的3轉(zhuǎn)換為4時二進制碼的每一位都要變,能使數(shù)字電路產(chǎn)生很大的尖峰電流脈沖。

格雷碼Gray Code詳解(https://www.cnblogs.com/zhuruibi/p/8988044.html)

怎么計算格雷碼? 二進制碼→格雷碼(編碼): 此方法從對應(yīng)的n位二進制碼字中直接得到n位格雷碼碼字,步驟如下:

對n位二進制的碼字,從右到左,以0到n-1編號

如果二進制碼字的第i位和i+1位相同,則對應(yīng)的格雷碼的第i位為0,否則為1(當i+1=n時,二進制碼字的第n位被認為是0,即第n-1位不變)

責任編輯:xj

原文標題:古人哲學居然與計算機信息編碼不謀而合?

文章出處:【微信公眾號:嵌入式ARM】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 二進制
    +關(guān)注

    關(guān)注

    2

    文章

    795

    瀏覽量

    41690
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3628

    瀏覽量

    93814
  • 信息編碼
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    9267

原文標題:古人哲學居然與計算機信息編碼不謀而合?

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    量子計算機與普通計算機工作原理的區(qū)別

    ? 本文介紹了量子計算機與普通計算機工作原理的區(qū)別。 量子計算是一個新興的研究領(lǐng)域,科學家們利用量子力學,制造出具有革命性能力的計算機。雖然現(xiàn)在的量子
    的頭像 發(fā)表于 11-24 11:00 ?361次閱讀
    量子<b class='flag-5'>計算機</b>與普通<b class='flag-5'>計算機</b>工作原理的區(qū)別

    工業(yè)中使用哪種類型的計算機

    極端條件不可或缺。工業(yè)計算機現(xiàn)代工業(yè)中的重要性工業(yè)計算機與普通消費級計算機的區(qū)別在于其耐用性和在惡劣環(huán)境下的性能。工業(yè)界選擇工業(yè)
    的頭像 發(fā)表于 10-22 17:10 ?326次閱讀
    工業(yè)中使用哪種類型的<b class='flag-5'>計算機</b>?

    計算機接口位于什么之間

    計算機接口是計算機硬件和軟件之間、計算機與外部設(shè)備之間以及計算機各部件之間傳輸數(shù)據(jù)、控制信息和狀態(tài)信息
    的頭像 發(fā)表于 10-14 14:02 ?447次閱讀

    探索工業(yè)計算機的多元應(yīng)用場景

    隨著科技的迅猛發(fā)展和工業(yè)4.0的推進,工業(yè)計算機因其卓越的穩(wěn)定性、強大的數(shù)據(jù)處理能力和廣泛的兼容性,逐漸成為現(xiàn)代工業(yè)自動化和信息化的核心設(shè)備之一。在諸多行業(yè)中,工業(yè)計算機憑借其獨特的優(yōu)
    的頭像 發(fā)表于 10-08 15:14 ?280次閱讀
    探索工業(yè)<b class='flag-5'>計算機</b>的多元應(yīng)用場景

    計算機存儲系統(tǒng)的構(gòu)成

    計算機存儲系統(tǒng)是計算機中用于存放程序和數(shù)據(jù)的設(shè)備或部件的集合,它構(gòu)成了計算機信息處理的基礎(chǔ)。一個完整的計算機存儲系統(tǒng)通常包括多個層次的存儲器
    的頭像 發(fā)表于 09-26 15:25 ?1123次閱讀

    微處理器如何控制計算機系統(tǒng)

    微處理器,作為計算機系統(tǒng)的核心部件,承擔著控制整個計算機系統(tǒng)運行的重要任務(wù)。它不僅是計算機的運算中心,還是控制中心,負責執(zhí)行程序指令、處理數(shù)據(jù)以及協(xié)調(diào)計算機各部件之間的工作。以下將詳細
    的頭像 發(fā)表于 08-22 14:21 ?522次閱讀

    計算機系統(tǒng)的組成和功能

    計算機系統(tǒng)是一個復雜龐大的概念,它涵蓋了計算機硬件、軟件以及它們之間相互作用的所有元素。為了全面深入地探討計算機系統(tǒng),本文將從定義、組成
    的頭像 發(fā)表于 07-24 17:41 ?1076次閱讀

    計算機視覺屬于人工智能嗎

    和解釋視覺信息,從而實現(xiàn)對圖像和視頻的自動分析和處理。 計算機視覺的基本概念 2.1 計算機視覺的定義 計算機視覺是一門研究如何使計算機具有
    的頭像 發(fā)表于 07-09 09:11 ?1346次閱讀

    計算機控制器的結(jié)構(gòu)和功能

    隨著信息技術(shù)的迅猛發(fā)展,計算機已經(jīng)深入我們生活的方方面面。計算機控制器,作為計算機系統(tǒng)的核心部件之一,承擔著協(xié)調(diào)各部件工作、指揮整個
    的頭像 發(fā)表于 06-17 15:47 ?1740次閱讀

    計算機視覺的主要研究方向

    計算機視覺(Computer Vision, CV)作為人工智能領(lǐng)域的一個重要分支,致力于使計算機能夠像人眼一樣理解和解釋圖像和視頻中的信息。隨著深度學習、大數(shù)據(jù)等技術(shù)的快速發(fā)展,計算機
    的頭像 發(fā)表于 06-06 17:17 ?1006次閱讀

    工業(yè)計算機與普通計算機的區(qū)別

    信息化和自動化日益發(fā)展的今天,計算機已經(jīng)成為了我們?nèi)粘I詈凸ぷ髦胁豢苫蛉钡墓ぞ摺H欢?b class='flag-5'>計算機領(lǐng)域中,工業(yè)計算機和普通計算機雖然都具備基
    的頭像 發(fā)表于 06-06 16:45 ?1476次閱讀

    【量子計算機重構(gòu)未來 | 閱讀體驗】+ 了解量子疊加原理

    中的處理器(CPU)就是由許多邏輯門電路組成的。 量子計算機與電子計算機最大的區(qū)別在于它們使用量子比特(qubit)不是電子比特(bit)來表示信息。在量子
    發(fā)表于 03-13 17:19

    【量子計算機重構(gòu)未來 | 閱讀體驗】+量子計算機的原理究竟是什么以及有哪些應(yīng)用

    計算方法的區(qū)別傳統(tǒng)方法是,按照不走枚舉所有情況,量子計算是一次處理所有情況,是一步到位。但是這里又有疑惑了,量子計算如何實現(xiàn)的一步到位呢, 這里引入了量子比特和傳統(tǒng)
    發(fā)表于 03-11 12:50

    【量子計算機重構(gòu)未來 | 閱讀體驗】+ 初識量子計算機

    欣喜收到《量子計算機——重構(gòu)未來》一書,感謝電子發(fā)燒友論壇提供了一個讓我了解量子計算機的機會! 自己對電子計算機有點了解,但對量子計算機真是一無所知,只是聽說過量子糾纏、超快的運算速
    發(fā)表于 03-05 17:37

    量子計算機 未來希望

    自己從事語音識別產(chǎn)品設(shè)計開發(fā),量子技術(shù)和量子計算機必將在自然語言處理方面實現(xiàn)重大突破,想通過此書學習量子計算技術(shù),儲備知識,謝謝!
    發(fā)表于 02-01 12:51
    主站蜘蛛池模板: 色多多www网站| 男人天堂久久| 狠狠色噜噜综合社区| 国产网红主播chinese| 亚洲video| 一区二区在线看| 亚洲二区在线| 丁香六月激情网| 国产成人午夜精品影院游乐网 | 女攻各种play男受h| 99久久精品免费观看国产| 亚洲成a人在线播放www| 色多多在线观看视频| 久久国产精品久久久久久 | 特级毛片女人18毛片| 国产aaaaa一级毛片| 亚洲欧洲一区二区三区在线| 免费在线一区二区三区| 亚洲第一毛片| 日本午夜视频| 神马电影天堂网| 日韩成人毛片高清视频免费看| 视频黄色免费| 免费看欧美一级特黄a大片一| 高清国产下药迷倒美女| 国产精品yy9299在线观看| 久久久噜噜噜久久| 免费日韩毛片| 成人ww| 欧美夜夜操| 久久国产精品岛国搬运工| 日夜夜操| 欧美又粗又硬又大久久久| you ji z z日本人在线观看| 亚洲一二| 女攻各种play男受h| 亚洲成人免费在线| 明星三级国产免费播放| a久久| 天天做天天爱天天影视综合| 午夜一级毛片免费视频|