回覆列表
-
1 # 王緝志
-
2 # 正東音樂工作室
我們知道,顯示器的工作原理是三基色,即,紅,藍,綠,發光,是根據稜鏡可見光分光原理,不能再細分的顏色為基色。然後這三個基色透過不同的組合就能得到我們可以識別的各種顏色。
舉例,我們知道沒有黃色,就可以用紅色和綠色按照比例混合,就等得到,同樣,黑色也是由藍色和綠色組成。那麼問題來了,顯示器只能構成三基色排列矩陣,而不是按照不同的比例混合,也就是每個基色只能發出一種光,然後我們只能改變每種基色光的亮度,如果我們把三個基色的矩陣做得足夠小,就像手機顯示器,小到肉眼都很難看清一個矩陣有多大,就會形成所謂的畫素,畫素越高解析度也就越高,只是現在的液晶顯示技術沒有了那種老式的映象管三個基色電子束打在光柵裡面相應的三基色偏轉行場掃描。但是它們的每次發光的開啟關閉由最初的50HZ場掃描變成100HZ,行掃描15625HZ。或者直接控制三基色液晶亮度就行,
這就是現代各種顯示器的成像原理,這個不能用白色印表機的各種顏色墨盒來理解,因為印表機是幾個顏色可以對應一個點,顯示器不行。有基色矩陣限制,只能做到足夠小。
我試圖來解釋一下你的問題。
你顯然已經知道了顯示器是由很多發光的畫素組成的,其實,顯示器的顯示,是由電腦裡的顯示卡來完成的(有的顯示卡直接裝在電腦主機板上有的則分開裝),顯示卡的設計,已經做到了每個畫素對應於視訊記憶體(顯示卡中的儲存器就簡稱“視訊記憶體”)中的三個儲存單元。因為每個畫素是由三個發光體構成的,這三個發光體分別可以發出紅綠藍三種顏色。
下面幾張圖,就是某些顯示器上的畫素放大後的圖形:
從圖上可以看出,這些發光體其實並不是重疊在一起的,只是彼此靠得很近。由於它們很小,肉眼距離稍遠,就會把紅綠藍這三個點看成了一個點。
這每一個顏色點,都對應於視訊記憶體裡的一個儲存單元。我們知道,一個儲存單元就是一個位元組,即八位二進位制數,所以它的數值範圍就是0-255 。這個數值,代表了這個發光體的亮度,如果是0,就是不發光,如果是255,就是最亮。如果是128,就是一半的亮度。
如果紅綠藍三個位元組的數值都是0,那麼這個畫素就是黑色(不發光),如果這三個位元組都是255,那麼這個畫素就是白色,因為“紅+綠+藍”等於白。根據彩色發光的原理,我們知道,如果這三個位元組是(255,255,0),那麼就是黃色,(255,0,255)就是品紅色,(0,255,255)就是青色……,總之,這三個位元組的各種數值,就對應著顯示器能發出的各種顏色。
由於每個位元組有256種可能性,所以三個位元組加起來就有了256*256*256(=16777216)種可能性,換句話說,每個畫素能發出的顏色,就有1600多萬種。
顯示器的硬體設計,使得視訊記憶體裡某個畫素那三個單元的數值一旦確定了,其在螢幕上對應的點就會顯示出對應的顏色了。例如,如果全部單元裡的數都是(255,0,0),那麼這整個螢幕就變成了紅色。所以,某個軟體只需要向視訊記憶體裡的每個單元存入相應的數值,整個螢幕的畫面就顯示出來了。
小結一下:①顯示器的視訊記憶體裡,每三個位元組對應了螢幕上的一個畫素;②這三個位元組,分別代表了紅綠藍的發光程度,其數值從0到255,0是最暗(不發光),255是最亮;③任何電腦軟體,只需向視訊記憶體的每個單元裡裡存入資料,螢幕上就會顯示出相應的顏色。
由於電腦往顯示卡的視訊記憶體存入資料的速度極快,所以你不會感受到異樣。由於有些電腦遊戲要求很高的響應速度,所以顯示卡也分好壞,好的顯示卡很貴,而且這類顯示卡是單獨的一塊電腦插卡,稱為“獨立顯示卡”。