民國114年 第2梯次 電腦軟體設計丙級 學科

第46題

假設有一個文字碼稱為M-code,可以包含全世界各種不同語言的文字共十萬個字,請問M-code 每 一個字碼至少需要幾個bytes 才能容納這十萬個字?

題目

假設有一個文字碼稱為M-code,可以包含全世界各種不同語言的文字共十萬個字,請問M-code 每 一個字碼至少需要幾個bytes 才能容納這十萬個字?

  1. (1) 4 Bytes
  2. (2) 3 Bytes
  3. (3) 1 Byte
  4. (4) 2 Bytes

官方答案

(2) 3 Bytes

解析

編碼需容納 N=100,000 個字,所需位元數 n 滿足 2ⁿ ≥ N。計算:2¹⁶ = 65,536 < 100,000(不足),2¹⁷ = 131,072 ≥ 100,000,故至少需 17 個位元。因 1 Byte = 8 bits,17 bits ÷ 8 = 2.125 Bytes,位元組必須取整數;2 Bytes 僅 16 bits(最多 65,536 字)不夠,故至少需 3 Bytes(24 bits,可表 16,777,216 字)才足夠,選項 2 正確。選項 4(2 Bytes)容量不足;選項 3(1 Byte,256 字)更不足;選項 1(4 Bytes)雖可容納但超過最小需求。關鍵在「取 2 的冪次剛好大於等於總字數,再向上取整到位元組」。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料