SIM卡中UCS2編碼的三種格式(80,81,82)分析_第1頁(yè)
SIM卡中UCS2編碼的三種格式(80,81,82)分析_第2頁(yè)
SIM卡中UCS2編碼的三種格式(80,81,82)分析_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

SIM卡中UCS2編碼的三種格式(80,81,82)分析分類:MTK學(xué)習(xí)資料2012-04-2211:4641人閱讀評(píng)論(0)\o"收藏"收藏\o"舉報(bào)"舉報(bào)

操作SIM卡中的數(shù)據(jù)操作主要有兩個(gè)地方,一個(gè)是短信操作,還有一個(gè)通訊錄操作,兩種編碼略有差別:1、短信息操作:

在短信息中,默認(rèn)一條短信的最大長(zhǎng)度為140個(gè)字節(jié)。

純ASCII字符主要采用7-bit編碼格式,即只是利用了字符的后7位數(shù)據(jù),這樣160個(gè)ASCII字符只占用140個(gè)字節(jié)。這樣我們手機(jī)的一條短信就可以發(fā)送160個(gè)ASCII字符了。

包含漢字的字符采用UCS2編碼格式,即UNICODE的2字節(jié)編碼格式。樣每個(gè)字符占用兩個(gè)字節(jié),只要短信中包含中文,整條短信的字符都要采用UCS2編碼,這樣一條短信最多就只能發(fā)送70個(gè)字符了。2、通訊錄操作:

通訊錄中的姓名長(zhǎng)度限制不一樣,本人使用的TD模塊限制長(zhǎng)度為14個(gè)字節(jié)。

單獨(dú)的ASCII字符正常都使用8-bit編碼格式,即每個(gè)字節(jié)都占用8位,這也是最為正常的存儲(chǔ)格式了。

如果包含中文等字符,則正常采用80編碼格式,即整個(gè)姓名字符以80開頭,后面跟上UCS2數(shù)據(jù),但有些情況下又會(huì)采用81或者82開頭。

a)80開頭:

80開頭的為ucs2格式(注意:后面的字符必須有中文才行,否則可能是以80開頭的純ASCII字符串),大頭在前,小頭在后。

例1:中國(guó)

UNICODE編碼為:4E2D56FD

用ucs2的80方案表示是:804E2D56FD

例2:杜10娘

UNICODE編碼為:675C003100305A

用ucs2的80方案表示是:80675C

顯然只要有中文,數(shù)字也得占用兩個(gè)字節(jié)。

b)81開頭:

81開頭的格式中,包含一個(gè)基址(一個(gè)字節(jié))。有這個(gè)基址,就可以用一個(gè)字節(jié)表示一個(gè)ucs2字符了。

在格式上,81是標(biāo)識(shí),后一個(gè)字節(jié)表示整個(gè)字符串長(zhǎng)度,再后面一個(gè)字節(jié)是基址,再往后的就都是數(shù)據(jù)了。先舉一例:

例3:杜杜杜

UNICODE編碼為:675C

用ucs2的80方案表示是:80

用ucs2的81方案表示是:8103CEDCDCDC

分析一下UCS2的81方案:8103CEDCDCDC

81:為標(biāo)記

03:表示整個(gè)字符串為3個(gè)字符

CE:一個(gè)字節(jié)為基址。解析的方法為:將基址(CE)左移七位,并將最高位置為0,最低位再補(bǔ)一個(gè)0(這樣就16位啦)。此時(shí)基

址變?yōu)?x6700,然后再判斷后面的數(shù)據(jù)字節(jié)。

DCDCDC:3個(gè)數(shù)據(jù)字節(jié)DC,DC,DC。如果數(shù)據(jù)字節(jié)的最高位為0,則認(rèn)為此字節(jié)是一個(gè)ASCII字符。如果數(shù)據(jù)字節(jié)的最高位為

1,則低7位為基址的一個(gè)偏移,實(shí)際的UCS2字符為基址加上這個(gè)偏移值。由于此處三個(gè)數(shù)據(jù)字節(jié)最高位都為1,則實(shí)際的3個(gè)字符的

偏移值為:5C,5C,5C。實(shí)際的UCS2編碼為:0x675C0x675C0x675C,此處我們就看的明白了。

例4:一丁丂七丄丅

(注:這些字符屬于GBK字符集)

UNICODE編碼為:4E004E014E024E034E044E05

用ucs2的80方案表示是:804E004E014E024E034E044E05

用ucs2的81方案表示是:81069C

分析一下UCS2的81方案:81069C808182838485

81:為標(biāo)記

06:表示整個(gè)字符串為6個(gè)字符

9C:一個(gè)字節(jié)為基址。解析的方法為:將基址(9C)左移七位,并將最高位置為0,最低位再補(bǔ)一個(gè)0(這樣就16位啦)。此時(shí)基址

變?yōu)?x4E00,然后再判斷后面的數(shù)據(jù)字節(jié)。

808182838485:6個(gè)數(shù)據(jù)字節(jié)80,81,82,83,84,85。由于此處六個(gè)數(shù)據(jù)字節(jié)最高位都為1,則實(shí)際的6個(gè)字符的偏移值為:00,

01,02,03,04,05。實(shí)際的UCS2編碼為:0x4E00,0x4E01,0x4E02,0x4E03,0x4E04,0x4E05。OK。

c)82開頭:

82開頭的格式中,包含一個(gè)基址(兩個(gè)字節(jié))。有這個(gè)基址,就可以用一個(gè)字節(jié)表示一個(gè)ucs2字符了。

在格式上,81是標(biāo)識(shí),后一個(gè)字節(jié)表示整個(gè)字符串長(zhǎng)度,再后面兩個(gè)字節(jié)是基址,再往后的就都是數(shù)據(jù)了。先舉一例:

例5:8025EF芳

UNICODE編碼為:00380030003200350045004682B3

用ucs2的80方案表示是:8000380030003200350045004682B3

用ucs2的81方案表示是:(因?yàn)楦袷降南拗?,最多容納128個(gè)中文和127個(gè)英文,所以此處無(wú)法用81格式表示)

用ucs2的82方案表示是:82078280383032354546B3

分析一下UCS2的82方案:82078280383032354546B3

82:為標(biāo)記

07:表示整個(gè)字符串為7個(gè)字符

8280:兩個(gè)字節(jié)為基址。

383032354546B3:7個(gè)數(shù)據(jù)字節(jié)38,30,32,35,45,46,B3。如果數(shù)據(jù)字節(jié)的最高位為0,則認(rèn)為此字節(jié)是一個(gè)ASCII字符。如果

數(shù)據(jù)字節(jié)的最高位為1,低7位為基址的一個(gè)偏移,實(shí)際的UCS2字符為基址加上這個(gè)偏移值。由于此處七個(gè)數(shù)據(jù)字節(jié)的前六個(gè)字節(jié)最高

位為0,所以表示6個(gè)ASCII字符0x38,0x30,0x32,0x35,0x45,即8,0,2,5,E,F(xiàn)。第七個(gè)字節(jié)的最高位為1,則此數(shù)據(jù)的

偏移值為0x33,需要加上基址0x8280,UCS2編碼為0x82B3(芳)

例6:杜杜1

UNICODE編碼為:675C675C

用ucs2的80方案表示是:80675C

用ucs2的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論