




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
LTDC—液晶顯示中英文零死角玩轉(zhuǎn)STM32淘寶:論壇:掃描進入淘寶店鋪主講內(nèi)容01字符編碼02什么是字模?03各種模式的液晶顯示字符實驗參考資料:《零死角玩轉(zhuǎn)STM32》“LTDC—液晶顯示中英文”章節(jié)LTDC—液晶顯示中英文Unicode字符集和編碼 由于各個國家或地區(qū)都根據(jù)使用自己的文字系統(tǒng)制定標準,同一個編碼在不同的標準里表示不一樣的字符,各個標準互不兼容,而又沒有一個標準能夠囊括所有的字符,即無法用一個標準表達所有字符。國際標準化組織(ISO)為解決這一問題,它舍棄了地區(qū)性的方案,重新給全球上所有文化使用的字母和符號進行編號,對每個字符指定一個唯一的編號(ASCII中原有的字符編號不變),這些字符的號碼從0x000000到0x10FFFF,該編號集被稱為UniversalMultiple-OctetCodedCharacterSet,簡稱UCS,也被稱為Unicode。最新版的Unicode標準還包含了表情符號(聊天軟件中的部分emoji表情),可訪問Unicode官網(wǎng)了解:。
Unicode字符集只是對字符進行編號,但具體怎么對每個字符進行編碼,Unicode并沒指定,因此也衍生出了如下幾種unicode編碼方案(UnicodeTransformationFormat)。LTDC—液晶顯示中英文UTF-32
對Unicode字符集編碼,最自然的就是UTF-32方式了。編碼時,它直接對Unicode字符集里的每個字符都用4字節(jié)來表示,轉(zhuǎn)換方式很簡單,直接將字符對應的編號數(shù)字轉(zhuǎn)換為4字節(jié)的二進制數(shù)。
由于UTF-32把每個字符都用要4字節(jié)來存儲,因此UTF-32不兼容ASCII編碼,也就是說ASCII編碼的文件用UTF-32標準來打開會成為亂碼。字符GBK編碼Unicode編號UTF-32編碼A0x410x00000041大端格式0x00000041啊0xB0A10x0000554A大端格式0x0000554ALTDC—液晶顯示中英文UTF-32
對UTF-32數(shù)據(jù)進行解碼的時候,以4個字節(jié)為單位進行解析即可,根據(jù)編碼可直接找到Unicode字符集中對應編號的字符。 UTF-32的優(yōu)點是編碼簡單,解碼也很方便,讀取編碼的時候每次都直接讀4個字節(jié),不需要加其它的判斷。它的缺點是浪費存儲空間,大量常用字符的編號只需要2個字節(jié)就能表示。其次,在存儲的時候需要指定字節(jié)順序,是高位字節(jié)存儲在前(大端格式),還是低位字節(jié)存儲在前(小端格式)。LTDC—液晶顯示中英文UTF-16
針對UTF-32的缺點,人們改進出了UTF-16的編碼方式,它采用2字節(jié)或4字節(jié)的變長編碼方式(UTF-32定長為4字節(jié))。對Unicode字符編號在0到65535的統(tǒng)一用2個字節(jié)來表示,將每個字符的編號轉(zhuǎn)換為2字節(jié)的二進制數(shù),即從0x0000到0xFFFF。而由于Unicode字符集在0xD800-0xDBFF這個區(qū)間是沒有表示任何字符的,所以UTF-16就利用這段空間,對Unicode中編號超出0xFFFF的字符,利用它們的編號做某種運算與該空間建立映射關系,從而利用該空間表示4字節(jié)擴展,感興趣的讀者可查閱相關資料了解具體的映射過程。字符GB18030編碼Unicode編號UTF-16編碼A0x410x00000041大端格式0x0041啊0xB0A10x0000554A大端格式0x554A??0x9735F8320x000275CC大端格式0xD85DDDCC注:??五筆:TLHH(不支持GB18030碼的輸入法無法找到該字,感興趣可搜索它的Unicode編號找到)LTDC—液晶顯示中英文UTF-16 UTF-16解碼時,按兩個字節(jié)去讀取,如果這兩個字節(jié)不在0xD800到0xDFFF范圍內(nèi),那就是雙字節(jié)編碼的字符,以雙字節(jié)進行解析,找到對應編號的字符。如果這兩個字節(jié)在0xD800到0xDFFF之間,那它就是四字節(jié)編碼的字符,以四字節(jié)進行解析,找到對應編號的字符。UTF-16編碼的優(yōu)點是相對UTF-32節(jié)約了存儲空間,缺點是仍不兼容ASCII碼,仍有大小端格式問題。LTDC—液晶顯示中英文UTF-8 UTF-8是目前Unicode字符集中使用得最廣的編碼方式,目前大部分網(wǎng)頁文件已使用UTF-8編碼,如使用瀏覽器查看百度首頁源文件,可以在前幾行HTML代碼中找到如下代碼:<metahttp-equiv=Content-Typecontent="text/html;charset=utf-8">其中“charset”等號后面的“utf-8”即表示該網(wǎng)頁字符的編碼方式UTF-8。LTDC—液晶顯示中英文UTF-8 UTF-8也是一種變長的編碼方式,它的編碼有1、2、3、4字節(jié)長度的方式,每個Unicode字符根據(jù)自己的編號范圍去進行對應的編碼。它的編碼符合以下規(guī)律:對于UTF-8單字節(jié)的編碼,該字節(jié)的第1位設為0(從左邊數(shù)起第1位,即最高位),剩余的位用來寫入字符的Unicode編號。即對于Unicode編號從0x00000000-0x0000007F的字符,UTF-8編碼只需要1個字節(jié),因為這個范圍Unicode編號的字符與ASCII碼完全相同,所以UTF-8兼容了ASCII碼表。對于UTF-8使用N個字節(jié)的編碼(N>1),第一個字節(jié)的前N位設為1,第N+1位設為0,后面字節(jié)的前兩位都設為10,這N個字節(jié)的其余空位填充該字符的Unicode編號,高位用0補足。LTDC—液晶顯示中英文UTF-8Unicode(16進制)UTF-8(2進制)編號范圍第一字節(jié)第二字節(jié)第三字節(jié)第四字節(jié)第五字節(jié)00000000-0000007F0xxxxxxx
00000080-000007FF110xxxxx10xxxxxx
00000800-0000FFFF1110xxxx10xxxxxx10xxxxxx
00010000-0010FFFF11110xxx10xxxxxx10xxxxxx10xxxxxx
…111110xx10xxxxxx10xxxxxx10xxxxxx10xxxxxx UTF-8解碼的時候以字節(jié)為單位去看,如果第一個字節(jié)的bit位以0開頭,那就是ASCII字符,以單字節(jié)進行解析。如果第一個字節(jié)的數(shù)據(jù)位以“110”開頭,就按雙字節(jié)進行解析,3、4字節(jié)的解析方法類似。 UTF-8的優(yōu)點是兼容了ASCII碼,節(jié)約空間,且沒有字節(jié)順序的問題,它直接根據(jù)第1個字節(jié)前面數(shù)據(jù)位中連續(xù)的1個數(shù)決定后面有多少個字節(jié)。不過使用UTF-8編碼漢字平均需要3個字節(jié),比GBK編碼要多一個字節(jié)。LTDC—液晶顯示中英文BOM由于UTF系列有多種編碼方式,而且對于UTF-16和UTF-32還有大小端的區(qū)分,那么計算機軟件在打開文檔的時候到底應該用什么編碼方式去解碼呢?有的人就想到在文檔最前面加標記,一種標記對應一種編碼方式,這些標記就叫做BOM(ByteOrderMark),它們位于文本文件的開頭,見下表。注意BOM是對Unicode的幾種編碼而言的,ANSI編碼沒有BOM。BOM標記表示的編碼0xEF0xBB0xBFUTF-80xFF0xFEUTF-16小端格式0xFE0xFFUTF-16
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)境災害應急響應公眾參與重點基礎知識點歸納
- 如何有效進行房地產(chǎn)項目招投標
- 長短樁復合地基
- 手術匠心獨運 超酷手術操作步驟詳解
- 房地產(chǎn)項目開發(fā)中的公共關系管理
- 保險公司評選活動方案
- 保險培訓紅包活動方案
- 保險線上沙龍活動方案
- 信任經(jīng)濟學講座活動方案
- 信用關愛活動方案
- 國家開放大學電大《生產(chǎn)管理》2024-2024期末試題及答案試卷號
- “搶10”游戲(教學設計)-2024-2025學年一年級上冊數(shù)學蘇教版
- 農(nóng)村建房的鄰居協(xié)議書模板
- 服裝技能大賽理論試題庫題
- 浙江省杭州市上城區(qū)2023-2024學年八年級下學期期末科學試題(解析版)
- JGJ196-2010建筑施工塔式起重機安裝、使用、拆卸安全技術規(guī)程
- 浙江省杭州市濱江區(qū)2023-2024學年八年級下學期期末科學試題(解析版)
- 大學武術智慧樹知到期末考試答案章節(jié)答案2024年浙江大學
- 國家開放大學2022《土木工程力學(本)》形考作業(yè)1-5參考答案
- 河南省許昌市2023-2024學年高一下學期期末考試生物試題(無答案)
- 廣東省金山中學、中山一中、佛山一中、寶安中學四校2023-2024學年高二下學期第一次聯(lián)考數(shù)學試卷(無答案)
評論
0/150
提交評論