一、大鬧移動營業廳的大叔
話說蜉蝣君有事去移動營業廳辦理,具體辦什么業務早都忘記了,卻唯獨對多年以前那一場面紅耳赤的的爭吵記憶猶新。
那個時候,剛剛經歷了2G時代手機的普及,3G還在神州大地蓬勃發展中。
主角是一個矮胖的大叔,穿著得體,頭發整齊,渾身上下打理地干凈利落。
他揮舞著當時剛剛興起的大屏智能手機,憤怒地質問到:“每個月套餐這么多流量,結果才幾天就用光了,這到底是怎么回事?”
營業廳的小姑娘還是很鎮靜的:“先生您好,非常抱歉給您帶來不便了。請問您一般用手機上網都做些什么呢?”
“呃,就是看小說,看圖片,聽音樂......”
“先生,瀏覽文字,和看圖片或者聽音樂消耗的流量是不一樣的,圖片和音樂用的流量會多一些......”
大叔很不耐煩地打斷了小姑娘:“打電話都是按照分鐘來收費的,上網為什么不一樣?你就明明白白地告訴我,這些流量到底能用多長時間?”
“先生,這個實在給不出來,看不同的圖片,聽不同的音樂,或者手機信號的好壞不一樣的話,消耗的流量也是不一樣的。”
大叔怒不可遏:“別凈扯那些沒用的,你就直說,我這些流量到底能用幾天?”
到了這里,蜉蝣君感覺到,這場爭吵已經進入了死胡同。任憑小姑娘怎么解釋,這個大叔應該也很難理解流量的計量和消費的邏輯。
時代的潮流就是如此加速前進,大批的新概念層出不窮,沖擊著其中的每一個人。大多數年輕人覺得這一切都是如此的理所應當,而中老年人卻不得不在困惑中強迫自己習慣。
他們更習慣于像“蘋果多少錢一斤”中的“斤”這樣的看得見摸得著的單位。就算是無形的服務,比如打電話兩毛一分鐘,這里面的概念依然是十分熟悉,非常易于理解的。
而手機上網所消耗的“流量”到底指的是什么呢?流量的計量單位“兆”到底代表了什么?單位前面的數字的大小是明確的,但這個單位是如此的抽象。
為了便于理解,我們可以把網絡,不論是2G,3G還是4G或者5G想象成一個信息的倉庫,這個倉庫通過空氣中無形的管道連接到我們的手機,源源不斷地把信息輸送到我們的手機里。那怎么度量信息的多少呢?這就要用到“流量”這個詞了。
我們上網行為,不論是瀏覽網頁,還是看圖片,聽音樂,或者看電影,本質上就是信息的交換和獲取的過程,獲取到的信息越多,消耗的流量也就越大。
一個概念的解釋,往往又會牽扯出更多的概念。為了解釋“流量”這個概念,我們不得不引出了“信息”這個詞。好在大家對這個詞時非常熟悉的。
二、比特的誕生
那么到底什么是信息呢?
首先看看漢典的解釋:音信,消息。再來看看來自《三俠五義》中的一個示例:“聽說智化求見,必是丈夫有了信息,連忙請進。”這個解釋似乎非常直白,但又總有些說不清道不明只能意會無法言傳的感覺。
如果我們再追問一句:既然信息是消息的意思,那么,消息到底是什么意思呢?如果再查詞典的話,我們將看到解釋:消息就是信息的意思!這么互相解釋,最終還是不清不楚。
我們再來看看小米手機董事長雷軍關于信息的說法:
“投身信息產業的懷抱快三十年了,我有時也在想:信息何以會具備如此強大的力量?它的力量來自哪里?我們又該如何駕馭這一力量?
在這三十年間,信息極大地釋放了人類的能量,它所創造的價值超過了之前五千年的財富總和,但“信息”依然是個大家耳熟能詳卻又含義模糊的詞。
信息是人的鏡子,它在技術更新與模式興替中展現出變化萬端的色彩。
但我們回視人的心靈,卻發現它在千百年來并沒有太多的變化。
科技的互聯網不能描述信息的全部,信息只有作用于思維,才能顯示出強大的力量。”
雷軍的這段話反映出了很多人對信息的理解和困惑。從中可以看出,雖然信息這個詞匯在日常生活中無處不在,但要說清楚信息是什么,卻并不容易。
解釋清楚“信息”是什么尚且不易,要度量它就更不容易了。
時代的發展,不斷呼喚著通信理論奠基人的誕生。
2019年,信息論的創始人香農誕辰103周年。和其他學科的不同之處在于,別的學科創始人是發明了一個新的起點,而香農在創立信息論的時候,直接宣告了它的終點。
克勞德·香農
在經典信息論框架內,一切都逃不出香農定理的范圍。信息理論的大廈已經建成,后人只能在工程應用上努力。當其他人還在拼盡全力爬山的時候,香農已在山頂欣賞美景。
克勞德·香農于1916年出生于美國,是愛迪生的遠房親戚。他于1940年獲得麻省理工學院數學博士學位,隨后加入貝爾實驗室數學部。
在1948年和1949年,香農發表了《通信的數學原理》和《噪聲下的通信》這兩篇具有深遠影響的論文。
在這兩篇論文中,香農闡明了通信的基本問題,給出了通信系統的模型,提出了信息量的數學表達式,并解決了信道容量、編碼等一系列基本技術問題,成為了信息論的奠基性著作。
那么,香農是怎樣解釋信息的呢?
首先,信息蘊藏于的不確定性之中。試想,在美劇《權力的游戲中》,保護布蘭的阿多只會說一個詞:“阿多!”,任何跟他的交流,只會得到一聲“阿多!”,不會有任何變化。因此這里面沒有任何不確定性,也就不傳遞任何信息。
美劇《權力的游戲》中的阿多,只會說:Hodor這一個詞
然后,所有不確定的事物都有其發生的概率,信息是這些概率之和(這是簡化說法,精確描述需要用到后面的公式)。
以拋硬幣這個最為簡單的隨機事件為例,如果是正面向上,標記為0,反之如果是反面向上,則標記為1。
僅通過常識即可得出,0和1的概率都為二分之一(0.5),它們的概率之和就是1。于是,香農稱:這個事件里面蘊含的信息量是1比特。
注意,大家耳熟能詳的“比特”這個概念就此出場!這個詞是香農首創的,英文全稱是“Binary digit”,縮寫為bit,也就是“二進制數字”的意思。
為什么是二進制呢?因為它最簡單,只含0和1這兩個數字,就像硬幣的正反面一樣,表達了像拋硬幣這樣的宇宙最基本的事件。
而更復雜的事情,都可以用大量這種簡單的事件來疊加表示。
香農甚至創造出了一個公式來度量信息的多少:
香農的信息熵公式
上面的公式過于復雜,本文不進行詳細解釋具體的計算過程。
據此公式可以計算出,一個英文字母含有的信息量是4.7比特。也就是說,采用5個二進制數字,就可以表示所有的英文字母。
這是顯而易見的,因為5個二進制數字共有32種組合,而英文字母共有26個。
通過上面這個公式,香農把熱力學中的“熵”這個概念引入了通信系統,稱之為“信息熵”。
那么,到底什么是熵呢?
初中物理老師教導我們:物質是由分子組成的,這些分子無時無刻不在進行著雜亂無章的隨機運動,溫度越高,運動也就越激烈,物體將會從固體融化為液體,直至沸騰為氣體。
溫度,分子運動與熵
假如我們把一滴墨汁滴入水中,由于分子的相互運動和碰撞,就會看到黑色迅速地彌散開來,直到整個液體都被染成黑色為止。
拿鐵咖啡中的熵
從涇渭分明到一片混沌,就是一個混亂程度不斷增加的過程,而且這個過程是不可逆的。
想象一下,你無論怎樣搖動那瓶被墨汁染黑的水,也無法讓它恢復到最初清水和墨汁界限分明的狀態。
“熵”這個概念正是用來表征一個系統的混亂程度的。
香農無疑是從中得到了靈感:既然信息蘊含在充滿不確定性和出人預料的混亂當中,那么也就可以用“熵”這個概念來衡量。
于是他把上述自己定義的公式成為“信息熵”,傳遞信息的符號的不確定越高,計算所得的熵就越大,蘊含的信息就越多。
這個信息熵的結果,就是用二進制數字:“比特”來表達的。
與此同是,另外一位頂級科學家,同時也是人工智能的開山祖師:阿蘭·圖靈在苦思冥想自己的計算設備,該設備只是在頭腦中構思的,后來被稱作圖靈機。
圖靈機
這個假想的機器使用紙帶作為輸入輸出,紙帶是無限長的,并且機器每次只能讀取并處理紙帶上的一個符號,然后基于一定的規則,這個機器就能表達一切事物并能處理所有計算!
圖靈機的紙帶和控制
為了簡單起見,圖靈使用的符號也是二進制的0和1。圖靈機的構想,奠定了電子計算機的理論基礎,也證明了二進制正好也是最適合計算機系統的。
二進制碼流
并且,二進制也是最簡單有效的機器語言,可以用電路的通斷,高電平和低電平等狀態非常方便地表示0和1,因此二進制成為了行業的標準。
2019年7月15日,英國央行英格蘭銀行宣布,圖靈將成為英國50英鎊新鈔人物,以表彰其對今天人們生活方式產生的巨大影響。這一殊榮堪比英國女王。
圖靈榮登50英鎊紙幣
三、比特的力量
在多位科學巨人的努力下,這些由0101組成的二進制符號串也就理所當然地成為了信息傳輸,處理以及存儲的最小計量單位,其中每一位就是一個比特(bit),簡寫為小寫的b。
實際使用中比特這個單位還是太小了,因此,以2的10次方 (也就是1024)為步長,又定義了以下的一些單位:
Kbit—千比特,也就是1024bit
Mbit—兆比特,也就是1024Kbit
Gbit—吉比特,也就是1024Mbit
……
后面還有更大的單位,每一級乘以1024就可以了。但我們的生活中最常用的就是上述的這些,而且常人也已經無法直觀地感受到這些單位能大到什么讓人吃驚的程度。
我們經常掛在嘴邊的一些話,比如5G的小區峰值速率可達20Gbps,這里面的Gbps就是Gbit每秒,含義也相當直觀:每秒可以傳輸20Gbit的信息數據!
在信息儲存和處理時,業界一般都是以8位為一組進行存儲或者處理,這就叫做8位組,或者字節。字節的英文名為Byte,一般簡寫作大寫的B。
和比特類似,實際使用中字節這個單位也太小,因此,也以2的10次方 (也就是1024)為步長,又定義了以下的一些單位:
KB—千字節,也就是1024B
MB—兆字節,也就是1024KB
GB—吉字節,也就是1024MB
TB—太字節,也就是1024GB
PB—皮字節,也就是1024TB
EB—艾字節,也就是1024PB
ZB—澤字節,也就是1024EB
YB—堯字節,也就是1024ZB
下面我們來看看,一些我們常見的事物,到底含有多少信息,占用多少數據量。
1、文字
眾所周知,英文字母有26個,理論上5比特就可以全部表示。且慢,我們剛才說的是小寫字母,那大寫字母,阿拉伯數字,標點符號怎么辦?正好,一個字節有8個比特,含有256種組合,也就可以表示所有的英文大小寫,數字,標點和控制字符了!
這就是著名的ASCII碼表,如下圖所示:
ASCII碼表
中文的情況要比上面的英文復雜一些。因為中文并不是基于字母的拼音文字,而是由大量各不相同的字組成。
康熙字典共收錄漢字47035個,實際漢字總體數量達到了驚人的近10萬個!這種情況下,用8個比特來編碼漢字顯然是遠遠不夠的。
實際使用中,常用漢字在UTF-8編碼下,一個漢字占用3個字節(Byte),也就是用24比特來表示。不常用漢字甚至占到了4個字節。
字母“A”和漢字“中”的編碼
紅樓夢共有731,017個漢字,算下來就有2193051個Byte,在不考慮存儲壓縮算法的情況下,約有2MB大小。
這個數據在今天看起來很小,在曾經一塊軟盤只有1.4MB大小的時代也是龐然大物。
泱泱巨著《紅樓夢》
2、圖片
那么圖片呢?最主流的圖片格式是位圖。什么叫位圖呢?我們只需要把圖片放大即可看出端倪。如下圖所示,美女細膩的臉龐不再光滑,而是呈現為一個一個不同顏色的小方格。
位圖是由像素組成的
所謂位圖,也叫bitmap,實際上是由很多“帶有顏色的點”組成的。這些點就是圖像顯示的基本單位,也就是我們放大圖像之后看到的小方格,稱為“像素”。
我們通常說一幅圖片的大小,例如是1920×1080,就是長度為1920個像素,寬度為1080個像素點。乘積是2,073,600,也就是說,這個圖片是兩百萬像素的。
每個像素必須要有顏色,才能組成繽紛絢麗的圖片。那么,這個顏色,又該如何表示呢?
物理大神牛頓告訴我們,任何顏色,都可以通過紅色(Red)、綠色(Green)、藍色(Blue)按照一定比例調制出來。這三種顏色,被稱為“三原色”。
光學三原色:紅綠藍
在計算機里,紅、綠、藍也被稱為“基色分量”,分別計作R,G,B,每種顏色都用8個比特來表示。
那一共能表達多少種顏色呢?每種顏色都有2的8次方,也就是256個等級,三種顏色混合起來,就有256×256×256=16,777,216種組合,因此也簡稱為1600萬色。
RGB 24位色
而一個像素的3個顏色共用24個比特來表示,因此,這種方式表達出來的顏色,也被稱為24位色。
當前,主流手機的后置攝像頭是1200萬像素,現在我們來算一算,在沒有進行壓縮的情況下,一張1200萬像素的原始圖片到底有多大:12000000x24=275Mbit=34MB!
這也就是大家直觀感受到的:在3G時代瀏覽網頁時,經常是文字早都看到了,圖片還在轉圈圈,因為圖片的大小遠大于文本。
3、視頻
那視頻呢?所謂視頻,其實也叫動畫,都知道視頻是怎么來的吧?
沒錯,大量的圖片連續起來播放,因為人的眼睛有視覺暫留現象,只要連續播放的圖片速度夠快,人就感覺里面的畫面是連續運動的,這就是視頻。
最原始的“視頻”
衡量視頻,又是用的什么指標參數呢?
最主要的一個,就是幀率。一個幀就是指視頻中一幅靜止的畫面。幀率,就是指視頻每秒鐘包括的畫面數量。
顯而易見,幀率越高,畫面也就越自然流暢。一般來說30幀每秒就是可以接受的,但是將性能提升至60幀每秒則可以明顯提升交互感和逼真感。
幀率越高,視頻畫面越流暢
那視頻到底能有多少數據量呢?我們就以一個分辨率1920×1280,幀率30的視頻為例來算一算。
1920×1280=2,073,600(Pixels 像素),每個像素點是24bit(前面算過的哦),也就是每幅圖片2073600×24=49766400bit。
8 bit(位)=1 byte(字節),所以,49766400bit=6220800byte≈6.22MB。
注意,這只是一幅1920×1280圖片的原始大小,再乘以幀率30才是視頻的大小,也就是說,每秒視頻的大小是186.6MB,每分鐘大約是11GB,一部90分鐘的電影,約是1000GB。。。
嚇尿了吧?就算你現在電腦硬盤是4TB的(實際也就3600GB),也放不下幾部大姐姐啊!
這可怎么辦?別說硬盤放不下,要從網上下載的話,網速更是吃不消啊!
祖師爺香農的話猶在耳:所有的數據都是有冗余的,去掉所有冗余之后剩下的,才是我所說的信息!辦法只有一個,那就是:尋找并壓縮冗余數據!
那到底要怎樣進行壓縮呢?視頻里同樣的背景只需存一份,其余的都是冗余!一樣的顏色也只需存一份,其余的也都是冗余!這些都是可壓縮的。
經過專家們的不懈研究,一代又一代的編碼方式出爐,對冗余數據的壓縮能力也不斷增強。目前主流的H.264編碼算法,壓縮率最高可達400:1,也就是說,視頻可以被壓縮到其原始大小的400分之一!
各種視頻編碼技術的壓縮率
我們現在再來看看上面那個90分鐘1000GB大小的視頻,經過H.264編碼之后,大小驟降為2.5GB,這下符合大多數人對視頻大小的直覺了。
經過前面對文本,圖片和視頻的分析,我們再來看看下面的這組對比:
一本紅樓夢:純文本(未壓縮),約2MB
一張1200萬像素的照片(未壓縮):約34MB
一部90分鐘的電影(H.264編碼):約2.5GB(也就是2500MB)
這張照片的大小是純文本泱泱巨著《紅樓夢》的17倍,然而一本書可能要十天半個月功夫才能啃完,看一張圖片只需要幾秒鐘。
這部90分鐘的電影,其大小達到了圖片的近74倍,是《紅樓夢》大小的1250倍!
由此可見,不同類型的數據,大小的差別簡直是天壤之別!
難怪移動營業廳的小姑娘要說:上網干不同的事情,消耗的流量的多少是完全不同的。
四、比特之歌
對于個人電腦來說,CPU,內存,顯卡這些硬件都區區不足道,唯有里面的硬盤是你的命根子,藏著你多年以來積累的文檔、照片、視頻和游戲。
不論是傳統的機械硬盤,還是近期興起的固態硬盤,都在其內部以0和1組成的二進制形式默默儲存著各種數據,隨時等待著被你寫入或者讀取。
機械硬盤和固態硬盤
機械硬盤在寫入數據時,距離盤面 3 納米的磁頭會利用電磁鐵,改變磁盤上磁性材料的極性來記錄數據,兩種極性分別對應 0 或 1 。
而讀取數據時,旁邊的讀取器可以識別磁性材料的不同極性,再還原成 0 或 1 。
機械硬盤的數據寫入
固態硬盤儲存數據靠的是閃存,其寫入和讀取的原理跟傳統的機械硬盤是截然不同的。
閃存的基本存儲單元是浮柵晶體管,其被二氧化硅包裹,和上下絕緣,在斷電時也能夠保存電子,當電子數量高于一個中間值就表示 0 ,低于中間值就表示 1 。
固態硬盤的就是靠控制內部的電子數量來寫入數據,靠測量內部的電子數量來讀取數據的。
固態硬盤的數據存儲
固態硬盤的讀寫速度可達后者的十倍以上,因此其使用體驗遠超機械硬盤。此外,由于沒有復雜的機械結構,固態硬盤工作時也更安靜、更抗震。
作為現代社會必不可少的兩件物品,手機和電腦的結構類似,基本可以將手機看作為電腦濃縮版。
手機內部存儲數據的閃存和固態硬盤的結構是類似的,都是為了迅速地讀寫0和1這樣的二進制數據。
在你欣賞圖片時,在你聆聽音樂時,在你沉迷于視頻時,在你接聽電話時,在基站和手機之間,比特在空氣中穿梭疾馳;在手機內部,比特在忙碌而有秩序地引吭高歌。
比特,它在廉價功能機里唱歌,在Android/ target=_blank class=infotextkey>安卓智能機里唱歌,在蘋果旗艦機里唱歌,在忙碌的辦公電腦里唱歌,慈祥的老人聽過,充滿活力的少年聽過,寂寞的碼農聽過,憔悴的中年人也聽過。
這,就是比特的世界,它看不見摸不著卻又無處不在,深刻地改變了我們每一個人的生活,甚至重塑了整個世界。
好了,本期的內容就到這里。
各位如果喜歡,請點贊并關注我,后續內容更精彩哦!