日刊ドットコムマスター★

ドットコムマスターに合格するためのブログです。

第21回 第2部 第37問

2013-09-25 10:38:11 | 第3章

Aさんが利用しているメールサービスでは1通あたり5MBまでのメールを受信できる。
Bさんから4.8MBのJPEG形式の画像を送ってもらったが、1通あたりの容量制限を超えてしまった。
この原因として考えられるものを1つ選びなさい。

a.画像がBase64でエンコードされたため
b.画像ファイルの形式がBMP形式ではなかったため
c.メールヘッダにContent-typeの情報が設定されていなかったため
d.Aさんのメールボックスに未受信のメールが残っていたため



コムたろう「どうしてー!?容量は足りてるよねー??」


ドット先生「メールは規格上、テキストデータしか送信ができないんだ。」
「なので実は、添付ファイルを送信する際にはバイナリデータからテキストデータに変換を行ってから送信をするんだけど、この処理をエンコードと言うんだ。」


コムたろう「テキストデータとバイナリデータってどんな違いがあるの?」


ドット先生「簡単に言うとテキストデータは文字だけ構成されるデータで、メモ帳に書いた文字をそのまま送るようなものだね。」
「バイナリデータは様々なアプリケーションで作成したデータや音楽・画像データとかテキストファイル以外のもの全てバイナリデータというんだ。」


コムたろう「そうなんだ!?」
「ワードに文字だけ入力したデータでもバイナリデータになるの?」

ドット先生「ユーザーが文字だけ入力した場合でも、ワードではデフォルトでページやフォントや書式などに関する情報を含んでいるからバイナリデータだね。」

コムたろう「なるほど!」


ドット先生「そしてエンコードされたデータを元に戻す処理をデコードと言うんだ。」
「メールの添付ファイルに使われるエンコード/デコードのための規格は現在ではBase64形式が事実上の標準的な方式で、エンコード処理の結果、容量が大きくなるんだ。」


コムたろう「エンコードしたら何故データが大きくなるの?」


ドット先生「では、なぜエンコードしたらデータが大きくなってしまうのを説明しよう。」
「Base64は、データを64種類の英数字のみを用いて、それ以外の文字を扱うことの出来ない通信環境でもマルチバイト(全角)文字やバイナリデータを扱うためのエンコード方式なんだ。」
「具体的には、A~Z, a~z, 0~9 までの62文字と、記号2つ (+ , /) 、これで64種類なんだけどあと余白を詰める為の記号として『=』が使われるんだ。」


コムたろう「なるほどねー。」


ドット先生「この変換によって、データ量は3分の4(約133%)になると言われているんだ。」
「また、MIME(インターネットメールの規格)の基準では76文字ごとに改行コードが入るため、この分もデータが増えて計算上では約137%になるんだ。」


コムたろう「へぇ~。」


ドット先生「何かを初心者に説明をする時には、専門用語を使わずにいくつかの簡単な言葉の組み合わせを使って説明が長くなってしまうのと似たようなものだね。」


コムたろう「なるほど、詳しい計算方法は良くわかんないけど、とにかくエンコードするとデータが増えてしまうんだね。」


ドット先生「そういうこと!」






【 第21回 第2部 第37問 解答&解説 】
[解答]a.
[解説]
a.正しい。添付ファイルのJPEG形式の画像がエンコードされたことによってサイズが大きくなり、5MBを超えたことが原因である。
b.誤り。
c.誤り。
d.誤り。


最新の画像もっと見る

コメントを投稿