HOME»応用情報技術者試験掲示板»平成29年秋期  問3
投稿する

[3540] 平成29年秋期  問3

 んんさん(No.1) 
解説最後の「変換前(固定長2進符号)には1文字が2ビットだったので、変換前に対する変換後のビット列の長さの比は、1.9÷2=0.95」とありますが、なぜこのような計算をするのかが分かりません。
根本的な質問になりますが、よろしくお願いいたします。
2022.08.10 11:11
chihiroさん(No.2) 
AP シルバーマイスター
>なぜこのような計算をするのかが分かりません。

なぜビット列の比を計算するのかという意味であれば、
>各アルファベットの符号を表のような可変長2進符号に変換する場合,符号化されたテキストの,変換前に対する変換後のビット列の長さの比は,およそ幾つか。
と問われているからです。
2022.08.10 11:47
 んんさん(No.3) 
可変長2進符号に変換する場合、なぜ2で割るのですか?
2022.08.10 11:52
chihiroさん(No.4) 
AP シルバーマイスター
この投稿は投稿者により削除されました。(2022.08.10 12:05)
2022.08.10 12:05
chihiroさん(No.5) 
AP シルバーマイスター
>四つのアルファベットa~d から成るテキストがあり,各アルファベットは2ビットの固定長2進符号で符号化されている。
とあるので、変換前はa,b,c,dのビット列の長さはどれも2です。よって変換前のテキストのビット列の長さは2×テキストの文字数です。
一方変換後のアルファベット1文字当りのビット列の長さは平均1.9なので、変換後のテキストのビット列の長さは1.9×テキストの文字数です。
よってビット列の長さの比は
(1.9×テキストの文字数)/(2×テキストの文字数)=0.95  となります。
上記の通り、テキストの文字数はビット列の長さの比に影響しないので、アルファベット1文字当りのビット列の長さを比較しても同じ答えが得られます。よって1.9/2と計算してもいいです。2とは変換前の1文字のビット列の長さです。
2022.08.10 12:05
 んんさん(No.6) 
比とあるので、比例式で表すことは可能でしょうか?
2022.08.10 19:38
chihiroさん(No.7) 
AP シルバーマイスター
>比例式で表すことは可能でしょうか?
変換前のビット列長さ:変換後のビット列長さ=2:1.9
のように書けばいいと思います。
2022.08.10 20:03
boyonboyonさん(No.8) 
AP シルバーマイスター
具体的に、四つのアルファベットa~d から成るテキストを
アルファベット100文字の文字列として考えてみました。

2ビットの固定長2進符号→2x100 200ビット
可変長2進符号に変換(100文字なので出現率が、文字数になる)
a→  0→  1x40 40ビット
b→ 10→  2x30 60ビット
c→110→  3x20 60ビット
d→111→  3x10 30ビット
合計  190ビット

変換前  200ビット
変換後  190ビット
になります。

比で表すと  200:190  または  190:200  です。

>変換前に対する変換後のビット列の長さの比は,およそ幾つか。

なので、190:200の方で考え、比の値は、190/200=0.95  になります。
「~の比は,およそ幾つか。」というのは比の値のことだと思いました。

100文字でなく1文字で考えれば、解説と同じです。
これを比例式で表せば、190:200=1.9:2 ですか。
2022.08.10 21:51
 んんさん(No.9) 
了解です。解いてみます。丁寧な解説ありがとうございます!
2022.08.11 18:39

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop