免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
SIM卡中UCS2編碼的三種格式(80,81,82)分析

    操作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開(kāi)頭,后面跟上UCS2數(shù)據(jù),但有些情況下又會(huì)采用81或者82開(kāi)頭。

  a) 80 開(kāi)頭:

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

    例1:中國(guó)

    UNICODE編碼為:4E2D56FD

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

    例2:杜10娘

    UNICODE編碼為:675C003100305A18

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

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


   b) 81 開(kāi)頭:

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

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

     例3:杜杜杜

     UNICODE編碼為:675C675C675C

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

     用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編碼為: 0x675C 0x675C 0x675C, 此處我們就看的明白了。

     例4:一丁丂七丄丅               (注:這些字符屬于GBK字符集)

     UNICODE編碼為:4E004E014E024E034E044E05

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

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

     分析一下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,0x4E020x4E03,0x4E04,0x4E05。 OK。

 

   c) 82 開(kāi)頭:

     82開(kāi)頭的格式中,包含一個(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)楦袷降南拗疲?/span>最多容納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,EF。第七個(gè)字節(jié)的最高位為1,則此數(shù)據(jù)的

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

     例6:杜杜1

     UNICODE編碼為:675C675C0031

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

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

     用ucs2的82方案表示是:82036700DCDC31

     分析一下UCS2的82方案:82036700DCDC31

     82:為標(biāo)記

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

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

     DCDC31:36個(gè)數(shù)據(jù)字節(jié) DC,DC,31。由于此處三個(gè)字節(jié)的前兩個(gè)字節(jié)最高位為1,則此數(shù)據(jù)的偏移值為0x5C,需要加上基址

     0x6700,UCS2編碼為:0x675C()。第三個(gè)字節(jié)的最高位為0,所以表示一個(gè)ASCII字符:0x31,即 1


     此處只是稍微分析了一下UCS2三種格式(80,81,82)的解碼,想必知道了各個(gè)字段的含義,編碼也就輕松多了
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
ASCII, GB2312, Unicode , UTF-8 - 靈感點(diǎn)滴
字符集與編碼[下]
深入分析Oracle字符集(轉(zhuǎn)載)
GSM MODEM/GSM終端編程開(kāi)發(fā)PDU碼/短信格式短信規(guī)則解析
叫板阮一峰老師:你真的理解了 Unicode 與 UTF
UTF—8與UTF—8(無(wú)bom)格式相比有什么不同
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服