可逆圧縮と非可逆圧縮(lossless compression / lossy compression)
データを小さくする方法の2つの型。元に完全に戻せるのが可逆、戻せないかわりに小さくなるのが非可逆。
もう少し詳しい説明
圧縮は、データの中身を工夫して、記録する量を減らすことです。送る時間も、置いておく場所も節約できます。
型は2つしかありません。元に完全に戻せるかどうかで分かれます。
可逆圧縮:戻せる
1ビット(0か1のどちらかを入れる1けた)も欠けずに元どおりに戻せるのが可逆圧縮です。
戻せなければ困るものに使います。
- 文書ファイル(1文字変わると意味が変わる)
- プログラム(1ビット変わると動かない)
- 表計算のデータ(数値が変わったら別物)
代表的なファイル形式は ZIP、PNG、GIF です。
仕組みは2つ押さえれば足ります。
| 方式 | やっていること |
|---|---|
| ランレングス法 | 同じ値の連続を「値と個数」に置き換える |
| ハフマン符号 | よく出る値ほど短いビット列を割り当てる |
ランレングス法を具体的に見ます。AAAAABBBCCCCCCCC という16文字を、
A5 B3 C8… 6文字
に置き換えます。16文字が6文字になったので、元の 6 ÷ 16 = 0.375、つまり約38%の大きさになりました。
白と黒がずっと続くFAXの画像のように、同じ値が長く並ぶデータほどよく縮みます。逆に ABABABAB のように毎回変わるデータでは、A1 B1 A1 B1… となってかえって大きくなります。
非可逆圧縮:戻せない
元には戻せないかわりに、可逆圧縮よりずっと小さくできるのが非可逆圧縮です。
なぜ戻せないかというと、捨てているからです。ただし、むやみに捨てるのではありません。人の目や耳が気づきにくいところを選んで捨てます。
- 写真の、隣り合う色のごくわずかな違い
- 大きい音に隠れて聞こえない小さい音
代表的なファイル形式は JPEG(写真)、MPEG(動画)、MP3(音声) です。
文書やプログラムには使えません。 「気づきにくいから消していい」が成り立たないからです。1文字消えれば意味が変わり、1ビット消えれば動かなくなります。
なお、非可逆圧縮した画像を何度も編集して保存し直すと、そのたびに劣化が重なります。戻せない圧縮を繰り返しているためです。
圧縮率の計算
試験では計算でも問われます。「圧縮率」という言葉には2通りの使われ方があるので、どちらを聞かれているかを問題文から読み取ってください。
100Mバイト(ビットを8個まとめた単位)のファイルが 25M バイトになったとします。
圧縮後 ÷ 圧縮前 = 25 ÷ 100 = 0.25(25%) … 「元の25%の大きさになった」
1 −(圧縮後 ÷ 圧縮前)= 1 − 0.25 = 0.75(75%) … 「75%削減できた」
同じ結果なのに、25% とも 75% とも言えます。 問題文が「圧縮率25%」なのか「75%圧縮した」なのかで、選ぶ数字が変わります。どちらの言い方をしているかを先に確かめてください。
覚え方:引っ越しの荷造り
- 可逆圧縮 … 服をきれいにたたんで箱に詰める。開ければ元どおり着られる。かさばる荷物はそこまで小さくならない
- 非可逆圧縮 … いらない服を捨ててから詰める。荷物はぐっと減るが、捨てた服は戻ってこない
「たたむ」か「捨てる」か。 捨てたほうが小さくなるが、戻せない。この対応で、性質がそのまま出てきます。
試験ではこう出る
科目A(旧・午前)の情報メディアの分野で出ます。多いのは、可逆か非可逆かを判断させる問題と、ファイル形式がどちらに属するかを答えさせる問題です。ITパスポートでも同じ形で出ます。応用情報では、圧縮率の計算や、どの場面でどちらを選ぶかまで問われます。
判断の軸は1つです。元に完全に戻せるかどうか。 文書・プログラムなら可逆(ZIP・PNG・GIF)、写真・音声・動画なら非可逆(JPEG・MPEG・MP3)。そして、ランレングス法とハフマン符号は、どちらも可逆側です。この2つを非可逆の選択肢に混ぜた出題があるので、名前と側をセットで覚えておいてください。
関連する用語
- 文字コード
- 文字を数値に対応づけた決まり。文書はこの並びなので、1文字でも変わると意味が壊れる
- ハフマン符号
- よく出る値ほど短いビット列を割り当てる可逆圧縮の方式。ZIPなどで使われている
- ランレングス法
- 同じ値の連続を「値と個数」に置き換える可逆圧縮。単純で、白黒のFAXなどに向く
- 標本化
- 音や画像を一定の間隔で数値にすること。非可逆圧縮は、その数値から削れるところを削る
- 伝送時間
- データを送るのにかかる時間。圧縮して送る量を減らすと、この時間が短くなる
ミニクイズ
非可逆圧縮の説明として、最も適切なものはどれか。
正解は 4番:圧縮前の状態には完全には戻せないが、可逆圧縮より高い圧縮率が得られる
非可逆圧縮は、人の目や耳が気づきにくい情報を捨てることで小さくします。捨てた情報は取り戻せないため元には戻せませんが、そのぶん圧縮率は高くなります。写真や音楽、動画に使われます。「完全に戻せる」のは可逆圧縮の説明です。「同じ値の連続を値と個数に置き換える」のはランレングス法、「出現頻度の高い値に短いビット列を割り当てる」のはハフマン符号で、どちらも可逆圧縮の方式です。この3つは非可逆圧縮の選択肢として並びやすいので、可逆側だと分かるようにしておいてください。
この分野をまとめて解く → 基礎理論と情報メディアのミニテスト(全39問)
最終更新:2026-09-29