青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大龍的博客

常用鏈接

統(tǒng)計(jì)

最新評(píng)論

7BIT壓縮編碼長(zhǎng)度計(jì)算方法(C編程實(shí)現(xiàn))

大家都知道,ASCII(不包括擴(kuò)展ASCII)的最高位是0,所以,我們可以利用這一空位來(lái)存儲(chǔ)數(shù)據(jù),“7BIT壓縮編碼”就是這么做的。關(guān)于7BIT壓縮編碼的詳細(xì)算法,可以在網(wǎng)上找到(Simple)。這里,我說(shuō)一下自己的一種關(guān)于計(jì)算7BIT編碼長(zhǎng)度的C語(yǔ)言實(shí)現(xiàn)方法。(應(yīng)該有更好的方法啦~) 
  
1。如果給出已經(jīng)7BIT編碼的字符串,在不解碼的情況下,計(jì)算出解碼后的長(zhǎng)度,也就是源碼(ASCII)的長(zhǎng)度。 
  
pSrc -- 已經(jīng)編碼的字符串地址
nSrc -- 通過(guò)函數(shù)strlen(pSrc)計(jì)算出來(lái)的長(zhǎng)度
nLength -- 原編碼的長(zhǎng)度(就是我們想知道的結(jié)果) 
        
if (nSrc%7 == 0)
{
    if (*(pSrc+nSrc-1) >> 1)
        nLength = (nSrc/7)*8;
    else
        nLength = (nSrc/7)*8 - 1;
}
else
{
    if (*(pSrc+nSrc-1) >> (8-nSrc%7))
        nLength = (nSrc/7)*8 + nSrc%7 + 1;
    else
        nLength = (nSrc/7)*8 + nSrc%7;

  
解釋:
    第一個(gè)判斷編碼后的長(zhǎng)度是不是7的倍數(shù),我們都知道,7BIT壓縮編碼可以將8字節(jié)ASCII壓縮成7字節(jié)。如果編碼后的長(zhǎng)度恰好是7的倍數(shù),那么就“很可能"源碼是8的倍數(shù)長(zhǎng)度。這里只能說(shuō)是“很可能”,因?yàn)?8*n-1 個(gè)ASCII編碼后也會(huì)占用 7*n 個(gè)字節(jié)(也有可能是 7*n-1 字節(jié))。也就是說(shuō),160個(gè)ASCII編碼后為140字節(jié),159個(gè)ASCII編碼后也為140字節(jié)(或者139字節(jié)),那么現(xiàn)在我們知道編碼后是140字節(jié),原編碼ASCII到底是160個(gè),還是159個(gè)呢? 

    if (*(pSrc+nSrc-1) >> 1) 做出了判斷,如果結(jié)果為真,那么就是 8*n 個(gè)原編碼,如果為假,那么就是 8*n-1 個(gè)原編碼。這里,相信大家稍微思考一下就明白了;)嘻嘻,有不明白的,email問(wèn)我啦~
    
    如果編碼后的長(zhǎng)度,不是7的倍數(shù),那么對(duì)最后一位的移位判斷稍微復(fù)雜一些,道理是和上面一樣的,只是移位的位數(shù)不一樣而已。計(jì)算長(zhǎng)度的時(shí)候,先取出8位ASCII的整數(shù)倍(nSrc/7)*8,然后再取余數(shù)nSrc%7,然后根據(jù)對(duì)最后一位的移位判斷結(jié)果,判斷到底是否還得加一位。(這是為什么呢?為什么不是和上面7的整數(shù)被時(shí)的減一位呢?哈哈~思考一下就知道了)
    
2。如果給出原ASCII字符串,在不編碼的情況下,計(jì)算出7BIT編碼后的長(zhǎng)度。 
  
pSrc -- 源ASCII字符串地址
nSrc -- 通過(guò)函數(shù)strlen(pSrc)計(jì)算出來(lái)的長(zhǎng)度
nLength -- 7BIT編碼后的長(zhǎng)度(就是我們想知道的結(jié)果) 
  
if (nSrc%8 == 0)
{
    nLength = (nSrc/8)*7;
}
else
{
    if (*(pSrc+nSrc-1) >> nSrc%8-1)
        nLength = (nSrc/8)*7 + ((nSrc%8)*7)/8 + 1;
    else
        nLength = (nSrc/8)*7 + ((nSrc%8)*7)/8;

  
解釋:
    如果長(zhǎng)度是8的整數(shù)倍,那非常簡(jiǎn)單,如果不是呢,那么又得對(duì)最后一位進(jìn)行移位判斷了,所移位的位數(shù)為 nSrc%8-1 位,如果移位后,還“剩”數(shù)據(jù),那么就得多加一位了:)
    
好了,就說(shuō)到這里,如果有什么不明白,或者發(fā)現(xiàn)我有不對(duì)的地方,或者有更好的計(jì)算方法,可以一起討論哦! 
  
順便提一下,7BIT編碼在發(fā)送短信時(shí),如果短信內(nèi)容都是ASCII,那么將會(huì)采用7BIT壓縮編碼,將160個(gè)ASCII壓縮為140字節(jié)進(jìn)行傳輸。:) 

posted on 2011-11-17 22:34 大龍 閱讀(611) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲综合色网站| 国产午夜精品一区二区三区视频| 91久久久久久国产精品| 欧美三区在线视频| 亚洲国产欧美另类丝袜| 暖暖成人免费视频| 欧美高清视频在线播放| 亚洲观看高清完整版在线观看| 欧美激情中文字幕乱码免费| 亚洲激情av在线| 一区二区三区四区国产精品| 亚洲欧美精品| 久久综合给合久久狠狠狠97色69| 你懂的视频欧美| 欧美性猛交xxxx乱大交蜜桃| 国产视频自拍一区| 最近中文字幕日韩精品 | 亚洲在线观看免费| 亚洲免费人成在线视频观看| 欧美亚洲系列| 欧美剧在线免费观看网站| 国产精品有限公司| 99精品视频免费全部在线| 久久国产欧美精品| 亚洲欧洲日韩在线| 久久爱www.| 欧美日韩国产系列| 一区二区在线观看视频在线观看| 亚洲精品一区二区三区99| 午夜国产精品影院在线观看 | 国产三区精品| 日韩视频专区| 另类av一区二区| 亚洲一区视频| 欧美日本精品| 亚洲国产成人久久综合一区| 欧美一级片在线播放| 最近看过的日韩成人| 久久精品人人爽| 国产免费成人av| 亚洲视频每日更新| 亚洲国产成人不卡| 久久久xxx| 国产色综合久久| 亚洲一区999| 最新国产成人在线观看| 久久久久久久久伊人| 国产欧美一区二区精品忘忧草| 99精品视频免费观看视频| 免费欧美日韩国产三级电影| 香蕉久久a毛片| 国产精品一区三区| 一区二区三区黄色| 亚洲黄页视频免费观看| 欧美v国产在线一区二区三区| 国产在线精品成人一区二区三区| 欧美日韩一区二区三区免费 | 国产女主播视频一区二区| 亚洲伊人色欲综合网| 夜夜嗨av色一区二区不卡| 欧美精品七区| 99天天综合性| 亚洲欧洲综合另类在线| 欧美成人一区二区| 亚洲精一区二区三区| 欧美激情亚洲激情| 欧美激情第1页| 99精品欧美一区二区三区 | 欧美中文在线观看| 欧美一级久久| 黄色成人片子| 农村妇女精品| 欧美高清在线一区二区| 亚洲毛片av| 亚洲美女在线看| 国产精品久久久久久久久久三级| 亚洲欧美影音先锋| 久久精品盗摄| 亚洲乱亚洲高清| 一区二区三区日韩欧美| 国产欧美一区二区精品忘忧草| 久久免费国产| 欧美国产专区| 午夜在线精品偷拍| 久久噜噜噜精品国产亚洲综合| 日韩视频在线观看免费| 亚洲网站啪啪| ●精品国产综合乱码久久久久| 91久久中文| 国产曰批免费观看久久久| 欧美高清在线精品一区| 欧美性大战xxxxx久久久| 久久婷婷国产综合国色天香| 欧美国产精品| 久久精品30| 欧美精品成人一区二区在线观看| 亚洲一区二区免费看| 久久久99精品免费观看不卡| 亚洲精品网站在线播放gif| 亚洲一区免费在线观看| 91久久黄色| 欧美综合国产| 亚洲小说区图片区| 免费不卡在线观看av| 欧美亚洲系列| 欧美精品麻豆| 你懂的成人av| 国产偷国产偷亚洲高清97cao| 亚洲日本一区二区| 影音先锋日韩资源| 亚洲欧美日韩精品久久| 日韩视频免费在线| 久久精品伊人| 欧美在线啊v| 欧美日韩一区在线观看| 欧美国产日韩一区二区三区| 欧美在线观看视频在线| 老司机久久99久久精品播放免费 | 99热在线精品观看| 久久大香伊蕉在人线观看热2| 99精品福利视频| 久热精品在线| 久久综合图片| 国产久一道中文一区| av72成人在线| 亚洲国产成人91精品| 久久国产一区二区| 欧美在线视屏| 国产视频一区在线观看一区免费| 一区二区三区.www| 亚洲色图自拍| 欧美日韩和欧美的一区二区| 亚洲黄色视屏| 日韩视频在线播放| 欧美大片在线影院| 91久久久久久久久久久久久| 最新国产成人av网站网址麻豆| 久久人人97超碰精品888| 久久精品在线视频| 国产在线播精品第三| 欧美尤物巨大精品爽| 久久久久综合| 亚洲第一免费播放区| 久久女同精品一区二区| 欧美成人日韩| 亚洲日韩视频| 欧美连裤袜在线视频| 日韩天堂在线观看| 亚洲自拍电影| 国产色婷婷国产综合在线理论片a| 亚洲女人av| 免费国产一区二区| 亚洲精品视频在线看| 欧美性猛交一区二区三区精品| 亚洲免费在线视频| 老司机免费视频久久| 亚洲清纯自拍| 国产精品高清在线| 久久高清免费观看| 亚洲黄色尤物视频| 亚洲免费视频在线观看| 国产欧美日韩一区二区三区在线| 性色av一区二区怡红| 嫩草国产精品入口| 亚洲色图在线视频| 国产在线视频欧美| 欧美精品免费在线| 欧美一级片久久久久久久| 欧美成人dvd在线视频| 日韩视频在线免费观看| 国产精品日韩一区二区三区| 久久深夜福利| 亚洲男女毛片无遮挡| 欧美激情亚洲激情| 欧美一区二区成人6969| 91久久久久久久久久久久久| 欧美体内she精视频| 久久久久国色av免费看影院| 9人人澡人人爽人人精品| 久久综合九色综合欧美狠狠| 日韩一级在线观看| 尤物精品国产第一福利三区| 欧美色视频日本高清在线观看| 久久精品国产久精国产一老狼 | 欧美精品首页| 亚洲乱码一区二区| 欧美在线视频导航| 夜夜夜久久久| 激情综合自拍| 国产精品久久综合| 欧美激情精品久久久久久大尺度| 亚洲女人天堂av| 亚洲精品一二三区| 欧美高清视频| 久久夜色精品国产欧美乱| 亚洲免费综合| 一区二区三区波多野结衣在线观看| 伊人久久综合97精品| 国产一区二区三区高清| 国产精品一国产精品k频道56|