




已閱讀5頁,還剩68頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2020 1 30 中山大學(xué)計算機科學(xué)系 第2章 信息表示技術(shù)基礎(chǔ) 2020 1 30 中山大學(xué)計算機科學(xué)系 第2章信息表示技術(shù)基礎(chǔ) 數(shù)制及轉(zhuǎn)換數(shù)值型數(shù)據(jù)的表示及運算字符編碼技術(shù)數(shù)據(jù)壓縮 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 2 1 1進(jìn)位計數(shù)制數(shù)制 也稱計數(shù)制 是指用一組固定的符號和統(tǒng)一的規(guī)則來表示數(shù)值的方法 進(jìn)位計數(shù)制 按進(jìn)位的方法進(jìn)行計數(shù) 例如 十進(jìn)制 二進(jìn)制 八進(jìn)制和十六進(jìn)制等 進(jìn)位計數(shù)制三要素數(shù)位 如個 十 百 千 萬位等 基數(shù) 數(shù)碼個數(shù) 逢基數(shù)進(jìn)一 位權(quán) 與數(shù)位相關(guān)的一個固定數(shù)值 例如 十進(jìn)制數(shù)的個位位權(quán)為100 1 十位為101 10 百位為102 100而小數(shù)點后的位權(quán)依次為10 1 10 2等 對于二進(jìn)制數(shù)101 01 其位權(quán)依次是22 21 20 2 1 2 2 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 常見進(jìn)位計數(shù)制 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 位權(quán)展開式用于把任何一個R進(jìn)制數(shù)N轉(zhuǎn)換為等值的十進(jìn)制數(shù) N R ai Ri 其中 i 0 1 2 3 Ri為第i位的位權(quán) ai為第i位數(shù)碼所對應(yīng)的十進(jìn)制數(shù) 或稱系數(shù) 2020 1 30 中山大學(xué)計算機科學(xué)系 常用計數(shù)制數(shù)的對照表 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 2 1 2將非十進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)方法 采用位權(quán)展開式示例 1011 101 2 1 23 0 22 1 21 1 20 1 2 1 0 2 2 1 2 3 11 625 10 143 8 1 82 4 81 3 80 99 10 FA59 16 15 163 10 162 5 161 9 160 64089 10 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 2 1 3將十進(jìn)制數(shù)轉(zhuǎn)換為非十進(jìn)制數(shù)基本方法 將整數(shù)部分和小數(shù)部分分別進(jìn)行轉(zhuǎn)換 然后再將它們合并起來 一 對于整數(shù)部分 采用除R取余數(shù)倒排法 例2 2 89 10 1011001 2 采用 除2取余倒排法 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 例2 3 219 10 DB 16 采用 除16取余倒排法 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 二 對于小數(shù)部分 采用乘R取整順排法例2 4 0 3125 10 0 0101 2 采用 乘2取整順排法 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 2 1 4非十進(jìn)制數(shù)之間的轉(zhuǎn)換 一 二進(jìn)制轉(zhuǎn)換為八進(jìn)制 十六進(jìn)制方法 3位合1位 或4位合1位 不足補0例2 5 2020 1 30 中山大學(xué)計算機科學(xué)系 2 1數(shù)制及轉(zhuǎn)換 二 八進(jìn)制 十六進(jìn)制轉(zhuǎn)換為二進(jìn)制方法 一分為三 或 一分為四 去除頭尾多余的0 例2 6 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 2 2 1二進(jìn)制的基本運算一 算術(shù)運算二進(jìn)制加 減運算規(guī)則 逢二進(jìn)一 借一當(dāng)二例2 7 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 二 邏輯運算邏輯或 0 0 00 1 11 0 11 1 1邏輯與 0 0 00 1 01 0 01 1 1非運算 0的非是1 1的非是0 異或運算 例2 8 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 2 2 2機器數(shù)與真值機器數(shù) 數(shù)值在計算機中的二進(jìn)制表示形式 包括數(shù)的正 負(fù)符號和小數(shù)點 真值 機器數(shù)所代表的一般數(shù)學(xué)意義上用正負(fù)號和數(shù)字符號表示的實際數(shù)值 數(shù)符 機器數(shù)的最高位通常定義為符號位 表示數(shù)的正負(fù)號 一般0表示正號 1表示負(fù)號 其余位則表示數(shù)值的大小 如 0110101 2表示為 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 2 2 3整數(shù)和實數(shù)的表示方法定點數(shù)和浮點數(shù) 在計算機內(nèi)部 并不顯式地表示出小數(shù)點 而是通過對小數(shù)點的位置加以規(guī)定來表示 根據(jù)數(shù)中小數(shù)點的位置是否固定 可把機器數(shù)分為定點數(shù)和浮點數(shù)兩種表示方法 通常 使用定點數(shù)表示整數(shù) 而用浮點數(shù)表示實數(shù) 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 一 整數(shù)整數(shù)沒有小數(shù)部分 因此可以認(rèn)為小數(shù)點固定在數(shù)的最右邊 整數(shù)分為 無符號整數(shù) 所有二進(jìn)制位表示數(shù)值的大小有符號整數(shù) 最高位表示數(shù)的正負(fù)號 其他位表示數(shù)值的大小 如 65的一種機內(nèi)表示是 整數(shù)表示的數(shù)值是精確的 但數(shù)值范圍受機器字長的限制 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 二 實數(shù)基本表示方法 用階碼和尾數(shù)來表示 如 0 3429 106 尾數(shù)階碼為什么稱為浮點數(shù)表示法 由于階碼可以取不同數(shù)值 使得小數(shù)點的位置不固定 從而可以有多種形式表示同一個實數(shù) 例如 1010 1011可以表示為 10 101011 210101010 11 2 100 10101011 2 100 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 浮點數(shù)機內(nèi)表示形式尾數(shù) 表示數(shù)值的有效數(shù)字 當(dāng)尾數(shù)不為0時 其絕對值大于等于0 5 注 因為是二進(jìn)制數(shù) 要求尾數(shù)的第1位必須是1 且小于1 階碼 用來指示尾數(shù)中的小數(shù)點應(yīng)當(dāng)向左或向右移動的位數(shù) 例如 設(shè)機器字長為16位 尾數(shù)為8位 階碼為6位 則二進(jìn)制實數(shù) 1101 010 0 110101 2100 其機內(nèi)表示形式如下 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 2 2 4原碼 反碼和補碼機器數(shù)的編碼方法有多種 最常用的是原碼 反碼和補碼 一 原碼編碼規(guī)則 符號位0表示正 1表示負(fù) 數(shù)值部分用該數(shù)絕對值的二進(jìn)制數(shù)表示 例如 原碼易于乘除運算 但不易于加減運算 且零有兩種表示形式 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 二 反碼編碼規(guī)則 符號位0表示正 1表示負(fù) 正數(shù)的反碼等于原碼 負(fù)數(shù)的反碼等于原碼除符號位外按位取反 即0變1 1變0 例如 反碼不方便運算 且零也有兩種表示形式 一般在求補碼的過程中用到反碼 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 三 補碼編碼規(guī)則 符號位0表示正 1表示負(fù) 正數(shù)的補碼等于原碼 負(fù)數(shù)的補碼等于其反碼末位加1 例如 例2 9 求X 1011 Y 1101的原碼 反碼和補碼 補碼易于加減運算 且零有唯一的表示形式 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 四 BCD碼BCD碼 用一組4位二進(jìn)制碼來表示1位十進(jìn)制數(shù)的編碼方法 也稱作二 十進(jìn)制碼 通常是指8421BCD碼 例2 10 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 2 2 5數(shù)值運算一 補碼運算采用補碼進(jìn)行加減運算十分方便 通過對負(fù)數(shù)的編碼處理 允許符號位和數(shù)值一起參與運算 可以把減法運算轉(zhuǎn)化為加法運算 不論求和 求差 也不論操作數(shù)為正 為負(fù) 運算時一律只做加法 從而大大簡化運算器的設(shè)計 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 例2 11通過補碼計算9 5 9 5 9 5和 9 5 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 二 移位運算 移位的意義移位運算運算相當(dāng)于乘2n運算可以采用移位和加法相結(jié)合 實現(xiàn)乘 除運算移位運算分為 算術(shù)移位 對有符號數(shù)的移位邏輯移位 對無符號數(shù)的移位 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 算術(shù)移位規(guī)則不論是正數(shù)還是負(fù)數(shù) 移位后其符號位均不變 只對數(shù)值位進(jìn)行移位 見下表 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 示例 正數(shù) 26在不同碼制下的移位 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 示例 負(fù)數(shù) 26在不同碼制下的移位 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 邏輯移位規(guī)則邏輯左移時 高位移出 低位添0 邏輯右移時 低位移出 高位添0 例如 對于01010011 邏輯左移1位為10100110 對于10110010 邏輯右移1位為01011001 2020 1 30 中山大學(xué)計算機科學(xué)系 2 2數(shù)值型數(shù)據(jù)的表示及運算 三 精度和溢出精度 可以給出的有效數(shù)字的位數(shù) 機器字長越長 可以表示的數(shù)的范圍越大 精度越高 溢出 一個數(shù)的大小超出了計算機所能表示的數(shù)的范圍 上溢 兩個正數(shù)相加 結(jié)果大于機器所能表示的最大正數(shù) 下溢 兩個負(fù)數(shù)相加 結(jié)果小于機器所能表示的最小負(fù)數(shù) 程序狀態(tài)字寄存器 PSW 標(biāo)記溢出 即將其溢出標(biāo)志位自動置為1 否則為0 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 1字符編碼的基本知識字符是各種文字和符號的總稱 包括各國文字 標(biāo)點符號 圖形符號 數(shù)字以及一般不可見的控制符等字符編碼是指將字符表示為一個二進(jìn)制數(shù) 字符集是字符的集合 也稱為編碼字符集 強調(diào)字符集為每個字符分配一個唯一整數(shù) 代碼點是指可用于編碼字符集的整數(shù) 由編碼字符集定義的代碼點整數(shù)取值范圍稱為編碼空間 每個代碼點表示一個字符或被聲明為未使用 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 字符編碼方案 是從編碼空間的每個代碼點到1個或多個固定寬度編碼單元序列的映射 編碼單元 表示代碼點整數(shù)的基本二進(jìn)制位序列 一般為8位 16位或32位 最終將轉(zhuǎn)換為字節(jié)序列 字節(jié)序 Endian 是指多字節(jié)整數(shù)在內(nèi)存中的存放順序 分為 大序 Big Endian 高位在前 低位在后 例如 將整數(shù)6C49H編排為字節(jié)序列6C49小序 Little Endian 低位在前 高位在后 例如 將整數(shù)6C49H編排為字節(jié)序列496C字符的編碼過程 分配代碼點 用1個或多個編碼單元表示 字節(jié)序列 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 2十六進(jìn)制編輯器簡介Hex編輯器能夠以字節(jié)和二進(jìn)制位為單位來修改文件 由于任何文件可看成字節(jié)流 因此Hex編輯器可查看 編輯任何文件的二進(jìn)制表示W(wǎng)inHex簡介 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 3ASCII碼及其ANSI擴展ASCII碼是美國信息交換標(biāo)準(zhǔn)碼 AmericanStandardCodeforInformationInterchange 的簡稱 用于編碼國際上最通用的西文字符 ASCII碼一般使用8位 1個字節(jié) 編碼單元表示字符 最高位恒為0 只用低7位對字符進(jìn)行編碼 能表示27 128種字符 ASCII字符集包括26個大寫字母A Z 26個小寫字母a z 10個數(shù)字0 9 32個標(biāo)點符號和運算符 1個空格 碼值32 以及33個控制字符 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 每個ASCII碼由一個高3位組b6b5b4和一個低4位組b3b2b1b0構(gòu)成 例如 回車符 CR 的ASCII碼是0001101 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 例2 12驗證編輯文本文檔時通過按回車鍵產(chǎn)生的換行符通常稱為回車換行符 CR LF 啟動 記事本 輸入 abc 回車鍵 ABC 存盤 啟動WinHex編輯器 打開第1步保存的文件 中間2個字節(jié)0D 0A分別是回車符 CR 和換行符 LF 的十六進(jìn)制數(shù)表示 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) ASCII擴展字符集由于ASCII碼只使用單字節(jié)編碼單元中的低7位 因此ASCII碼可被擴展 ANSI擴展標(biāo)準(zhǔn) ASCII擴展字符集仍然使用單字節(jié)編碼單元 要求ASCII碼必須用1個等值的高位為0的編碼單元表示 但對于其他高位為1的編碼單元則依賴于特定字符集的具體定義ANSI字符集 是指按ANSI標(biāo)準(zhǔn)派生的ASCII擴展字符集 如 Latin 1 GB2312 Big 5等 有時也稱為多字節(jié)字符集 簡稱MBCS 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 4漢字編碼常用編碼 GB2312 BIG 5 GBK和GB180302 3 4 1GB2312一 國標(biāo)字符集與區(qū)位碼GB2312字符集包括6763個常用簡體漢字和682個圖形符號 并為每個字符給出國標(biāo)碼和區(qū)位碼 所有字符排成一個94 94的矩陣 矩陣中每一行稱為一個區(qū) 每一列稱為一個位 矩陣中的每個字符可用區(qū)碼和位碼表示 稱為區(qū)位碼 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 區(qū)位碼也是一種漢字輸入碼 例如 在 區(qū)位輸入法 或稱 內(nèi)碼輸入法 狀態(tài)下輸入0102 0103 0104可輸入全角符號 輸入1601 1602 1603可輸入一級漢字 啊阿埃 輸入5601 5602 5603可輸入二級漢字 亍丌兀 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 二 國標(biāo)碼 區(qū)位碼和機內(nèi)碼之間的換算關(guān)系國標(biāo)碼采用兩個字節(jié)表示 國標(biāo)碼高字節(jié) 區(qū)碼 16 20H國標(biāo)碼低字節(jié) 位碼 16 20H漢字機內(nèi)碼 符合ANSI字符集標(biāo)準(zhǔn) 機內(nèi)碼高字節(jié) 國標(biāo)碼高字節(jié) 80H 區(qū)碼 16 A0H機內(nèi)碼低字節(jié) 國標(biāo)碼低字節(jié) 80H 位碼 16 A0H 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 例2 13查看漢字 國啊 的機內(nèi)碼 啟動 記事本 輸入 abc國啊 存盤 注意 編碼 下拉列表中的 ANSI 表示按ANSI字符編碼格式保存 啟動WinHex編輯器 打開剛保存的文件 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 4 2其他常用漢字編碼一 BIG 5 大五碼 通行于我國臺灣 香港等地區(qū)的繁體字編碼方案 采用雙字節(jié)編碼方案 第1字節(jié)的最高位總是1 第2字節(jié)的最高位可能是1或0 二 GBKGBK是對GB2312的擴充 仍然采用雙字節(jié)編碼方案 收錄21886個漢字和圖形符號 GB18030是對GBK的擴充 在雙字節(jié)編碼的基礎(chǔ)上對罕見漢字使用4字節(jié)編碼 收錄27484個漢字 同時還收錄日文 朝鮮語和藏 蒙等文字 ASCII GB2312 GBK GB18030向下兼容 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 5Unicode編碼Unicode 通用碼 是當(dāng)前國際上最為通用的字符編碼規(guī)范 它為全世界所有語言 超過650種 的每個字符分配一個唯一數(shù)字 以滿足跨語言 跨平臺進(jìn)行文本轉(zhuǎn)換 處理的要求 Unicode標(biāo)準(zhǔn)已經(jīng)被計算機業(yè)界主流所采用 許多操作系統(tǒng) 所有最新的瀏覽器和許多其他軟件產(chǎn)品都支持它 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 5 1Unicode字符集Unicode字符集采用四維編碼空間每個字位對應(yīng)一個Unicode代碼點 Unicode代碼點書寫格式 如U 41表示 A 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) UCS 4碼和UCS 2碼UCS 4碼定義Unicode字符集的所有代碼點 對每個代碼點使用4個8位 即32位 且最高位總是0 依次表示這個代碼點所在的組 平面 行和字位 共有231 2 147 483 648個代碼點 例如 字符 編排在00組01面04行00位 故其UCS 4碼是U 00010400 基本多文種平面 BMP 是指Unicode字符集的第1個平面 即0組0面 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) UCS 2碼只對BMP中的代碼點進(jìn)行雙8位編碼 共有216 65 536個代碼點 例如 A U 0041 U 20AC 漢 U 6C49 UCS 2碼基本上可以容納所有的歐美字符和絕大部分的亞洲字符 因此 UCS 2字符集被普通支持 小提示 在Word中 將輸入點移至某個字符的右側(cè) 按下Alt X 該字符就轉(zhuǎn)換為Unicode代碼點 再按則轉(zhuǎn)換回原字符 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 5 2UTF編碼UTF是對Unicode字符集編碼的實現(xiàn)方案 為每個Unicode字符給出機內(nèi)表示格式 Unicode字符的機內(nèi)碼UTF規(guī)范定義了三種編碼格式 即UTF 8 UTF 16和UTF 32 它們都能夠正確地編碼任何Unicode代碼點 其中 UTF 8和UTF 16被廣泛使用 而UTF 32很少使用 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 一 UTF 32UTF 32碼是定長碼 使用1個32位 即4字節(jié) 編碼單元表示每個等值的Unicode代碼點 例如 字符 A 的代碼點U 41用4個字節(jié)表示等值的無符號整數(shù)41H UTF 32的優(yōu)點在于編碼簡單 缺點是每個字符都需4字節(jié)表示 太浪費存儲空間 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 二 UTF 16UTF 16碼是變長碼 使用1個或2個16位 即2字節(jié) 編碼單元對Unicode代碼點進(jìn)行編碼 對BMP字符的表示方式等同于UCS 2 使用2個字節(jié) 例如用兩個字節(jié)6CH和49H表示字符 漢 的代碼點U 6C49對于非BMP字符則使用4個字節(jié)表示 UTF 16的優(yōu)點在于幾乎所有常見字符都使用雙字節(jié)表示 便于統(tǒng)一處理 缺點是每個ASCII字符也要用2個字節(jié)表示 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) UTF 16分類由于UTF 16使用雙字節(jié)編碼單元 因此UTF 16碼有兩種形式 大序UTF 16 UTF 16big endian 如 國 的代碼點U 56FD表示為2字節(jié)序列56FD小序UTF 16 UTF 16little endian 如 國 表示為2字節(jié)序列FD56 標(biāo)記字節(jié)序 使用BOM字符U FEFF 即如果文檔起始2個字節(jié)是FEFF 則表示文檔是大序UTF 16 若這2個字節(jié)為FFFE 則文檔為小序UTF 16 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 例2 14查看英文字符 a 和漢字 國 的小序UTF 16編碼 啟動 記事本 輸入文字 a國 然后以 Unicode 編碼格式保存 啟動WinHex編輯器查看 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 三 UTF 8UTF 8碼也是變長碼 使用1個或多個8位 即1字節(jié) 編碼單元對Unicode代碼點進(jìn)行編碼 對BMP字符使用1 3個字節(jié)序列編碼 如表2 11所示對于非BMP字符則使用4個或更多字節(jié)表示 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) UTF 8編碼示例字符 漢 的代碼點是U 6C49 根據(jù)表2 11所示格式 先將6C49寫成二進(jìn)制數(shù)0110110001001001 然后用這個比特流依次替換模板1110 xxxx10 xxxxxx10 xxxxxx中的x 得到111001101011000110001001 即UTF 8把字符 漢 編碼為3字節(jié)序列E6B189 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) UTF 8的優(yōu)點在于與ASCII兼容 容錯能力強 與字節(jié)序無關(guān) 便于在不同平臺之間交流 其缺點是所有漢 日 韓等字符必須用3個字節(jié)表示 UTF 8文檔常起始于3字節(jié)序列EFBBBF 即字符U FEFF的UTF 8編碼 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 例2 15查看字符 A 和 漢 的UTF 8編碼 啟動 記事本 輸入文字 A漢 然后以 UTF 8 編碼格式保存 啟動WinHex編輯器查看 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 5 3統(tǒng)漢字Unicode把經(jīng)過中日韓整合 CJKUnification 的漢字稱為統(tǒng)漢字 Unihan 共有2萬多個 2 3 5 4Unicode與代碼頁 代碼頁 CodePage 是某種字符集的編號 如GB2312的代碼頁是20936 BIG5是950 由代碼頁可確定相應(yīng)的字符編碼轉(zhuǎn)換表 Windows系統(tǒng)內(nèi)核已統(tǒng)一使用Unicode 但由于大量應(yīng)用軟件及文檔還未使用Unicode 因此Windows仍然保留代碼頁字符轉(zhuǎn)換機制 即通過指定的字符編碼轉(zhuǎn)換表將非Unicode的字符編碼 如GBK Big 5碼 轉(zhuǎn)換為Unicode編碼 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 6字形碼字形是指字符的外觀 相當(dāng)于一個小圖形字形碼 也稱字模 是描述字符字形的編碼 字庫 存放字模的數(shù)據(jù)文件漢字庫 主要用于存放漢字字模的字庫字符輸出 計算機在輸出 顯示或打印 字符時 要根據(jù)字符的機內(nèi)碼找出該字符的字模在字庫中的位置 從而取出字模 用于輸出 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 點陣點陣是對字符外觀的直接描述 其他描述 如矢量 輪廓方法 的最終結(jié)果仍是點陣 點陣描述方法 將字符放入一個橫豎都經(jīng)過等分的方塊中 如圖2 9所示 形成一個位圖 每個點用1位二進(jìn)制數(shù)表示 有筆劃的為1 無筆劃的為0 每8個點依次組成1個字節(jié) 例如 在16 16點陣中 每個字模需要16 16 8 32個字節(jié)表示 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 矢量字模用一種稱為形 shape 的圖形實體來定義字符 使用直線和圓弧作為字符的基本筆畫 其優(yōu)點是字模存儲量少 缺點是字形不優(yōu)美 輪廓字模輪廓技術(shù)采用直線或二次曲線的集合來描述一個字符的輪廓線 對輪廓線構(gòu)成的一個或若干個封閉平面區(qū)域 采用適當(dāng)?shù)膮^(qū)域填充算法 生成字符的位圖點陣 兼有字模存儲量少 字形又美觀的雙重優(yōu)點 輪廓字符可以任意放大 縮小及變化形體 TrueType字形技術(shù)采用這種輪廓技術(shù) Windows的絕大多數(shù)字庫都屬于TrueType字庫 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 7漢字輸入碼漢字輸入碼是指從鍵盤上輸入的代表漢字的編碼 又稱漢字外碼 漢字輸入碼分為以下4類 流水碼 將漢字按一定的順序排列 依次編排一個號碼 如區(qū)位碼 流水碼輸入法簡單 唯一 但較難記憶和掌握 音碼 根據(jù)漢字的讀音進(jìn)行編碼 如全拼 雙拼 智能ABC等 音碼輸入法易于掌握 懂得漢語拼音即可 但重碼率高 不便盲打 2020 1 30 中山大學(xué)計算機科學(xué)系 2 3字符編碼技術(shù) 2 3 7漢字輸入碼 2 形碼 根據(jù)漢字的字形進(jìn)行編碼 如五筆字型 鄭碼 形碼輸入法較難掌握 但重碼率低 便于盲打 音形碼 根據(jù)漢字的字音和字形進(jìn)行編碼 如首尾碼 此外 多數(shù)漢字輸入法都提供了重碼字輔助選擇 詞組輸入 聯(lián)想輸入等功能 2020 1 30 中山大學(xué)計算機科學(xué)系 2 4數(shù)據(jù)壓縮 2 4 1基本概念數(shù)據(jù)壓縮是指對數(shù)據(jù)重新進(jìn)行編碼 以減少所需存儲空間解壓縮是指將壓縮的數(shù)據(jù)恢復(fù)成原狀壓縮比 壓縮前和壓縮后的數(shù)據(jù)量之比 如壓縮比為20 1表示壓縮后的數(shù)據(jù)量是原始數(shù)據(jù)的1 20數(shù)據(jù)壓縮技術(shù)用于壓縮文本 圖像 音頻和視頻等數(shù)據(jù) 有些壓縮技術(shù)需要特殊的硬件 而有些壓縮技術(shù)則完全由軟件實現(xiàn) 2020 1 30 中山大學(xué)計算機科學(xué)系 2 4數(shù)據(jù)壓縮 數(shù)據(jù)為什么能被壓縮呢 數(shù)據(jù)中常存在一些冗余 如重復(fù)符號數(shù)據(jù)中間尤其是相鄰的數(shù)據(jù)之間 常存在著相關(guān)性 如圖像中常常有色彩均勻的背影 視頻的相鄰兩幀之間可能只有少量的變化影物是不同的 音頻信號有時具有一定的規(guī)律性和周期性等等耳 目對信號的時間變化和幅度變化的感受能力都有一定的局限性 因此可以將信號中感覺不出的分量隱蔽掉 2020 1 30 中山大學(xué)計算機科學(xué)系 2 4數(shù)據(jù)壓縮 數(shù)據(jù)壓縮技術(shù)的指標(biāo) 壓縮比 顯然壓縮比越大就越好恢復(fù)效果 盡量能夠解壓縮回原始數(shù)據(jù)速度 實現(xiàn)壓縮的算法要簡單 壓縮 解壓速度快 盡可能支持實時壓縮 解壓 對稱性 壓縮和解壓縮占用相同的處理能力和時間 適用于實時壓縮的視頻傳送 如視頻會議 而不對稱編碼意味著壓縮和解壓縮占用不同的處理能力和時間
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)培訓(xùn)課件制作指南
- 油氣管線不動火機械冷切割方案
- 企業(yè)培訓(xùn)總結(jié)課件
- 優(yōu)化維護(hù)服務(wù)策略
- 信息技術(shù)采購合同知識產(chǎn)權(quán)保護(hù)與技術(shù)創(chuàng)新條款
- 生態(tài)停車場投資建設(shè)與運營管理合同
- 餐飲行業(yè)特色飲品技術(shù)與品牌合作協(xié)議
- 餐飲連鎖品牌跨區(qū)域經(jīng)營股份合作協(xié)議
- 礦業(yè)開發(fā)項目股權(quán)交割與收益分成協(xié)議
- 車輛掛靠與汽車租賃平臺運營合同
- 會計領(lǐng)軍人才試題及答案
- 2025年 呼倫貝爾農(nóng)墾集團(tuán)公司招聘筆試試卷附答案
- 基礎(chǔ)護(hù)理學(xué)練習(xí)題庫(含參考答案)
- 繪畫授權(quán)協(xié)議書
- 防暑降溫試題及答案
- 高考一輪生物復(fù)習(xí)講義 晨背晚默
- 項目管理年度述職
- 成人用品的購買渠道分析
- 粉店合伙合同協(xié)議書范本
- 2.2.2影響化學(xué)平衡的因素 課件高二上學(xué)期化學(xué)人教版(2019)選擇性必修1
- 2025年度河南省鐵路建設(shè)投資集團(tuán)有限公司招聘筆試參考題庫附帶答案詳解
評論
0/150
提交評論