基礎理論と情報メディアのミニテスト(全39問)
数とデータの表し方、誤り検出、AIの基礎を問う39問。2の補数の作り方、浮動小数点の誤差の呼び分け、2進数と16進数の行き来、算術シフトと論理シフト、待ち行列の分母、1,000刻みと1,024刻みの差、時間を扱うXMLの規格、ずれを二乗してから足す理由、角だけ調べれば足りる理由など、手順を覚えていないと解けないところを集めています。
この単元は、意味を知っているかではなく、手順を覚えているかが問われます。
2の補数の作り方、2進数と16進数の区切り方、シフトで空いた場所に何を入れるか。どれも一度手を動かしておけば確実に取れる代わりに、うろ覚えだと確実に点を失います。
計算で解く問題がいくつも入っています。紙に書いて解いてください。 頭の中だけで進めると、反転と1を足すの順番や、引く向きを取り違えます。
問1
8ビットの2の補数表現で、−5 を表すビット列はどれか。
正解は 2番:11111011
2の補数は、全ビットを反転して1を足すと作れます。+5 は 00000101、反転して 11111010、これに1を足して 11111011 です。
ほかの選択肢は
11111010 は1を足す前の形で、これは1の補数にあたります。10000101 は先頭のビットだけを1にしたもので、符号と絶対値で表す別の方式です。00000101 は +5 そのものです。先頭のビットが1なら負、0なら正と決まっているので、そこでも絞り込めます。戻すときも同じ手順で、反転して1を足せば元の数が分かります。
問2
1の補数表現と2の補数表現の違いとして、適切なものはどれか。
正解は 2番:1の補数では0の表し方が2通りあるが、2の補数では1通りしかない
1の補数はビットを反転するだけ、2の補数はさらに1を足します。1を足さないと 00000000(プラスの0)と 11111111(マイナスの0)という2つの0ができてしまい、扱いにくくなります。2の補数なら0は1通りで、引き算のあとにあふれた桁を足し戻す手間も要りません。そのため2の補数のほうが主流になりました。8ビットで表せる範囲も違っていて、1の補数は −127〜127、2の補数は −128〜127 です。
ほかの選択肢は
0の表し方が逆、作り方が逆、と書かれた選択肢は、どちらも1の補数と2の補数を入れ替えたものです。作り方も範囲も違うので、同じ作り方で範囲だけが違う、というのも誤りになります。
問3
IEEE 754 の単精度では、指数部に127を足してから格納する。その理由として、最も適切なものはどれか。
正解は 4番:指数が負になる数も、指数部を符号なしの数として扱えるようにするため
0.5 のような1より小さい数は、指数が負になります。127を足しておけば指数部はいつも0以上になり、大小の比較も単純になります。この足す数をバイアスと呼びます。
ほかの選択肢は
仮数部で表せる桁数を1桁増やしているのは別の工夫のほうで、正規化すると先頭は必ず1になるため、その1を書かずに省いています。丸め誤差は表せる桁数の限界から生じるもので、バイアスとは関係がありません。境目の位置はあらかじめ決まっているので、見分けるための工夫も要りません。
問4
大きさが大きく違う2つの数を足したときに、小さいほうの数の桁が結果に反映されなくなる現象はどれか。
正解は 2番:情報落ち
単精度では意味のある桁がおよそ7桁なので、1億に 0.0001 を足しても、0.0001 は仮数部の桁に収まりきらず結果から消えてしまいます。これが情報落ちです。
ほかの選択肢は
桁落ちは逆で、ほぼ等しい2つの数を引き算したときに、意味のある桁が大きく減る現象です。丸め誤差は表せる桁数に合わせて切り捨てや四捨五入をしたときのずれ、打切り誤差は無限に続く計算を途中でやめたときのずれです。引き算で桁が減るのが桁落ち、足し算で小さいほうが消えるのが情報落ち。演算の種類で分けると取り違えません。
問5
2進数 11010110 を16進数で表したものはどれか。
正解は 3番:D6
2進数と16進数は、4桁ずつ区切って読み替えられます。16が2の4乗なので、2進数の4桁がちょうど16進数の1桁に対応するためです。11010110 を 1101 と 0110 に分けると、1101 は 8+4+1 で13、つまり D。0110 は 4+2 で 6。並べて D6 になります。
ほかの選択肢は
6D は前後を取り違えた形、B6 は 1101 を 1011 と読み違えた形です。10進数をいったん経由しなくても、区切って読むだけで済むのがこの組合せの便利なところです。
問6
8ビットの2の補数で −8 を表した 11111000 を、右へ1ビット算術シフトした結果はどれか。
正解は 1番:11111100(−4)
算術シフトは、空いた場所に符号ビットと同じ値を入れます。−8 は先頭が1なので、右へずらすと左端に1が入って 11111100、これは −4 で正しく半分になります。
ほかの選択肢は
同じビット列を論理右シフトすると左端に0が入って 01111100 となり、先頭が0なので 124 という正の数になってしまいます。負の数を2で割りたいときに算術シフトを使うのは、このためです。右へ1ビットで半分、左へ1ビットで2倍。空いた場所に0を入れるのが論理シフト、符号を守るのが算術シフトです。
問7
逆ポーランド記法で書かれた式「8 2 − 3 ×」を計算した値はどれか。
正解は 1番:18
逆ポーランド記法は、演算子が出てきたら、その直前にある2つの数に対して計算します。まず 8 2 − で 8−2 = 6。残った 6 と 3 に × が働いて 6×3 = 18 です。
ほかの選択肢は
24 は 8×3 だけを計算して引き算を飛ばした値、−18 は 2−8 と引く向きを逆にしてから3を掛けた値、6 は 8−2 で止めて掛け算を忘れた値です。引き算や割り算は順番を入れ替えると答えが変わるので、先に書いてあるほうが左側になる、と決めておくと迷いません。
問8
M/M/1の待ち行列モデルで、平均処理時間は変えずに、利用率だけが 0.5 から 0.8 に上がった。平均待ち時間はどう変わるか。
正解は 2番:4倍に増える
平均待ち時間は、平均処理時間 × ρ ÷(1 − ρ)で求めます。平均処理時間が同じなら、変わるのは ρ ÷(1 − ρ)の部分だけです。ρ が 0.5 なら 0.5 ÷ 0.5 で1倍、0.8 なら 0.8 ÷ 0.2 で4倍。利用率が1.6倍になっただけで、待ち時間は4倍になります。要点は分母が(1 − ρ)だという一点で、利用率が1に近づくほど分母が小さくなり、待ち時間は比例ではなく跳ね上がります。遊ばせないよう目一杯まで詰め込むと、かえって全体が待たされる。利用率を上げすぎないという設計判断の根拠が、この式の形そのものにあります。
ほかの選択肢は
待ち時間が利用率と同じ割合で増える、という読み方は、分母の(1 − ρ)を見落としています。0.5倍から0.8倍というのも、ρ をそのまま掛けただけで、割り算をしていません。待ち時間が変わらないこともありません。なお、平均処理時間そのものが変われば待ち時間も変わるので、この問題では「平均処理時間は変えずに」と断ってあります。利用率は到着率 × 平均処理時間なので、処理時間が変わっても利用率は動くためです。
問9
文字化けが起きる理由として、最も適切なものはどれか。
正解は 3番:書いたときと読むときで、使った符号化方式が違うため
同じバイトの並びでも、UTF-8として読むかShift_JISとして読むかで、どの文字だと判断されるかが変わります。3バイトを1文字と見るか、2バイトずつ2文字と見るかが違えば、まったく別の文字が並びます。つまり文字化けは、データが壊れたのではなく読み方を間違えている状態で、多くの場合は正しい方式で読み直せば元に戻ります。
ほかの選択肢は
データが失われているなら、読み直しても戻りません。番号の割り当ては文字集合として決まっているもので、読むたびに変わることはありません。
問10
100Mバイトのファイルを圧縮したところ、25Mバイトになった。この結果の言い表し方として、適切なものはどれか。
正解は 4番:元の25%の大きさになったとも、75%削減できたとも言える
圧縮率という言葉には2通りの使われ方があります。圧縮後÷圧縮前なら 25 ÷ 100 で25%、1−(圧縮後÷圧縮前)なら 1 − 0.25 で75%。同じ結果なのに25%とも75%とも言えてしまいます。試験では、問題文が「圧縮率25%」と言っているのか「75%圧縮した」と言っているのかで、選ぶ数字が変わります。どちらの言い方をしているのかを先に確かめる、というのがこの計算の要点です。
ほかの選択肢は
圧縮前を圧縮後で割った4は、何分の1に縮んだかを表す数で、率ではありません。
問11
標本化周波数8,000Hz、量子化ビット数16ビット、モノラル(1チャネル)で10秒ぶんの音声を記録した。このデータ量は何バイトか。
正解は 3番:160,000バイト
データ量 = 標本化周波数 × 量子化ビット数 × チャネル数 × 秒数、というかけ算です。8,000 × 16 × 1 × 10 = 1,280,000ビット。問われているのはバイトなので、8で割って160,000バイトになります。量子化ビット数はビットで与えられるため、バイトで答えるときは必ず8で割ります。
ほかの選択肢は
1,280,000バイトは、8で割るのを忘れた値です。ビットのままなら正しい数字なので、単位だけ確かめれば気づけます。320,000バイトはステレオ(2チャネル)として計算した値、20,000バイトは8で2回割ってしまった値です。この計算で最も多い誤りは、ビットとバイトの取り違えになります。
問12
偶数パリティで、データ 1011001 にパリティビットを1つ付けて送る。パリティビットの値はどれか。
正解は 3番:0
偶数パリティは、パリティビットを含めた全体で1の個数が偶数になるようにそろえる決まりです。1011001 の1の個数は4個で、すでに偶数です。したがって付け足すビットは0にして、個数を変えないようにします。もし1の個数が3個なら、1を付けて4個にそろえます。
ほかの選択肢は
1を付けると全体の1が5個になり、奇数になってしまいます。末尾のビットと同じ値にする決まりや、1の個数そのものを書く決まりもありません。パリティビットは1ビットなので、個数のような大きい数は入りません。
問13
水平垂直パリティで、1ビットの誤りを訂正できる理由として、最も適切なものはどれか。
正解は 3番:合わない行と合わない列が1つずつ分かり、その交点が化けたビットだと決まるから
データを縦横の表の形に並べ、行ごとと列ごとにパリティを付けます。1ビットだけ化けると、その行の横の検査と、その列の縦の検査だけが合わなくなります。合わないのが1行と1列だけなら、化けたビットはその交点以外にありえません。場所が決まれば、0と1を入れ替えるだけで直せます。
ほかの選択肢は
誤りの個数を精度よく求めているのではなく、場所を1つに絞り込んでいます。検査ビットに正しい値が入っているわけでもありません。送り直しの要求は訂正ではなく、訂正できないときの対処です。
問14
ハミング符号で、位置1の検査と位置4の検査だけが合わなかった。化けたビットの位置はどれか。
正解は 3番:5
ハミング符号では、合わなかった検査ビットの位置を足すと、化けたビットの位置になります。位置1と位置4の検査が合わないので、1 + 4 で5です。検査ビットの見る範囲が少しずつ重なるように置かれているため、どの検査が合わないかの組合せで位置が1つに決まります。
ほかの選択肢は
3になるのは位置1と位置2の検査が合わないとき、7になるのは位置1・2・4の3つとも合わないときです。14は符号の長さを超えており、7ビットのハミング符号では起こりません。足すのは検査ビットの位置であって、検査の個数ではありません。
問15
ハミング符号で、訂正できる誤りの範囲を広げたい。そのために必要なこととして、最も適切なものはどれか。
正解は 3番:検査ビットを増やす。そのぶん、送るデータの量も増える
何ビットまで直せるかは、検査ビットを何本持つかで決まります。検査の数が増えるほど、合わない組合せの種類が増え、特定できる位置も広がります。ただし検査ビットも一緒に送るので、そのぶん送るデータの量は増えます。直す力と、増える量は引き換えの関係です。
ほかの選択肢は
データビットを増やしても、検査の仕組みが強くなるわけではありません。検査ビットを減らせば直せる範囲はむしろ狭まります。置き場所を変えても能力は変わらず、位置1・2・4に置くのは、合わない検査の位置を足せば誤りの位置になるようにするためです。
問16
有限オートマトンで、どの状態が開始状態かを見分ける方法として、最も適切なものはどれか。
正解は 2番:どの状態からも出ていない矢印が、外から1本だけ刺さっている状態を探す
開始状態は、どの状態からも出ていない短い矢印が外から刺さっている形で示されます。「start」や「開始」と書き添えてあることもあります。この書き方が決まっているので、図を見ればすぐに特定できます。
ほかの選択肢は
入ってくる矢印が無い状態を探す方法は当てになりません。開始状態にも、ほかの状態から戻る矢印が入っていることがよくあります。二重丸は受理状態を示す書き方で、開始状態とは別です。位置はただの描き方で、左にあるとは限りません。
問17
有限オートマトンで、ある文字列が受理されるかどうかを判定する方法として、最も適切なものはどれか。
正解は 1番:開始状態から1文字ずつ状態をたどり、読み終わった時点の状態が受理状態かを見る
見るのは読み終わった場所だけです。開始状態から1文字ずつ指でたどり、最後の文字を読み終えた時点でいる状態が受理状態なら受理、そうでなければ受理されません。計算も暗記も要らず、たどるだけで必ず答えが出ます。
ほかの選択肢は
途中で受理状態を通っていても、最後にそこにいなければ受理されません。ここが取り違えの中心になります。通った状態の数や文字列の長さは、受理の判定とは関係がありません。
問18
BNFで用いる記号 ::= と | の意味の組合せとして、最も適切なものはどれか。
正解は 2番:::= は「左辺を右辺のように定義する」、| は「どちらかを選ぶ」
::= は定義の記号で、左辺に書いた名前が右辺の形であることを表します。| は選択肢の区切りで、並んでいるもののうちどれか1つを選ぶという意味です。この2つが読めれば、BNFで書かれた規則はたどれます。
ほかの選択肢は
::= は等号ではありません。左辺は定義される名前で、右辺はその中身なので、入れ替えられる関係ではないからです。代入でも省略でもなく、| も繰返しや区切り文字を表すものではありません。
問19
BNFで、定義の右辺に左辺と同じ名前が現れる書き方をする目的として、最も適切なものはどれか。
正解は 4番:長さに上限のない並びを、有限の規則で表すため
右辺に左辺と同じ名前を書くと、その名前を何度でも置きかえられます。置きかえるたびに文字が1つずつ増えるので、何文字でも作れる並びを数行の規則で表せます。名前や数値のように、長さが決まっていないものを定義するときに使います。
ほかの選択肢は
記述が短くなるのは結果であって、目的はそこではありません。短くするだけなら別の書き方もあります。誤りの自動検出や優先順位の決定は、右辺に同じ名前を書くこととは関係がありません。
問20
エキスパートシステムを構成する2つの部品の組合せとして、最も適切なものはどれか。
正解は 2番:知識ベースと推論エンジン
エキスパートシステムは、専門家の判断を「もし〜ならば〜」という規則の形で書き集めて機械に判断させる仕組みです。規則を貯めておくところが知識ベース、貯めた規則を当てはめて答えを出すところが推論エンジンです。規則を人が書き下ろす方式なので、機械学習を使わないAIにあたります。
ほかの選択肢は
訓練データは機械学習で使うもので、エキスパートシステムでは使いません。学習エンジンという部品も登場しません。規則を人が書くのか、データから見つけさせるのか。この向きの違いが、エキスパートシステムと機械学習の分かれ目です。
問21
人が規則を書く方式ではなく、機械学習が選ばれる場面として、最も適切なものはどれか。
正解は 1番:正解は分かるが、なぜそう判断できるのかを規則として書き出せないとき
猫の写真を見れば猫だと分かりますが、どこがどうだから猫なのかを規則として書き出すのは困難です。こうした場面では、正解の付いたデータを大量に与えて、規則のほうを機械に見つけさせます。これが機械学習が向く条件です。
ほかの選択肢は
規則が明確なら、条件を書き並べるほうが速く、確実で、動きも説明できます。データが数件しかないときは学習が成り立ちません。根拠を必ず説明する必要がある場面は、むしろ機械学習が苦手とするところです。
問22
機械学習における教師あり学習の説明として、最も適切なものはどれか。
正解は 1番:正解のラベルを付けたデータを与えて、入力と正解の対応を学習させる
教師あり学習では、入力と、それに対する正解の組をデータとして与えます。この写真は猫、この写真は犬、という具合です。機械は入力から正解を導く対応を学び、学習に使っていない新しい入力にも答えられるようになります。
ほかの選択肢は
正解を与えずにまとまりを見つけさせるのは教師なし学習、報酬を手がかりに行動を学ばせるのは強化学習です。人が書いた規則にしたがうだけのものは、そもそも学習ではありません。3つの学習の区別は、正解を与えるかどうかが最初の分かれ目になります。
問23
機械学習で過学習(オーバフィッティング)が起きているかどうかを見分ける方法として、最も適切なものはどれか。
正解は 4番:学習に使ったデータでは正答率が高いのに、使っていないデータでは低いかを見る
過学習は、学習に使ったデータに合わせ込みすぎて、そのデータ特有の細かい癖まで覚えてしまった状態です。学習に使ったデータでは高い正答率が出るのに、はじめて見るデータでは当たらなくなります。そこで、学習に使っていないデータで試して差を見ます。
ほかの選択肢は
学習に使ったデータでの正答率だけを見ると、過学習しているほど高く出るので、かえって見分けられません。学習時間の長さは過学習の有無とは別です。データの件数と特徴の数の関係は過学習の起きやすさに影響しますが、起きているかどうかを確かめる方法にはなりません。
問24
文字コードにおける「文字集合」と「符号化方式」の説明の組合せとして、最も適切なものはどれか。
正解は 4番:文字集合はどの文字に何番を割り当てるかを決め、符号化方式はその番号を何バイトの並びにするかを決める
文字コードの話は2段に分かれています。1段目の文字集合が、どの文字に何番を割り当てるかを決めます。Unicode や JIS X 0208 がこれにあたります。2段目の符号化方式が、その番号を実際に何バイトの並びとして書くかを決めます。UTF-8、UTF-16、Shift_JIS がこれにあたります。
ほかの選択肢は
2つを入れ替えた説明は誤りです。Unicode は文字集合、UTF-8 は符号化方式なので、同じ Unicode でも UTF-8 と UTF-16 ではファイルの中身のバイト列が変わります。字形を決めるのはフォントの仕事で、言語によって段が分かれているのでもありません。
問25
非可逆圧縮を使ってはならないデータとして、最も適切なものはどれか。
正解は 1番:文書やプログラム
非可逆圧縮は、人の目や耳が気づきにくいところを選んで捨てることで小さくします。文書やプログラムでは、この前提が成り立ちません。1文字消えれば意味が変わり、1ビット消えれば動かなくなります。元どおりに戻せることが必要なので、可逆圧縮を使います。
ほかの選択肢は
写真はJPEG、動画はMPEG、音声はMP3と、いずれも非可逆圧縮の代表的な形式があります。人が気づきにくい違いを捨てられるためです。ただし非可逆圧縮した画像を何度も編集して保存し直すと、そのたびに劣化が重なる点には注意が要ります。
問26
ある窓口に1時間あたり12人が到着し、1人あたりの平均処理時間は3分である。この窓口の利用率はいくらか。
正解は 2番:0.6
利用率は、窓口がふさがっている時間の割合です。12人が3分ずつで 12 × 3 = 36分ふさがり、1時間は60分なので 36 ÷ 60 = 0.6 になります。式にすると、利用率は到着率と平均処理時間の積です。単位をそろえて、3分を 3 ÷ 60 = 0.05時間に直してから 12 × 0.05 と計算しても同じ値になります。
ほかの選択肢は
0.36 や 36 は、掛ける前に単位をそろえ忘れたときに出てくる値です。12 × 3 = 36 は分の数であって割合ではないので、60で割る必要があります。4 は 12 ÷ 3 の値で、利用率の求め方とは関係がありません。利用率は割合なので、通常は0以上1未満の値になります。
問27
10進数の 25 を2進数で表したものはどれか。
正解は 2番:11001
10進数を2進数にするには、2で割り続けて余りを拾います。25÷2は商12余り1、12÷2は商6余り0、6÷2は商3余り0、3÷2は商1余り1、1÷2は商0余り1。余りを下から読み上げて 11001 です。確かめるには重みを足します。16 + 8 + 1 で25になります。
ほかの選択肢は
10101 は 16+4+1 で21、11010 は 16+8+2 で26、10011 は 16+2+1 で19です。いずれも25にはなりません。余りを拾う向きを取り違えると、逆から読んだ値を選んでしまうので、最後に重みを足して確かめる習慣をつけると安全です。
問28
逆ポーランド記法で式を表すと、ふだんの書き方で必要だったものが要らなくなる。それはどれか。
正解は 1番:かっこ
ふだんの書き方では、計算の順序を変えたいときにかっこを使います。逆ポーランド記法は演算子を材料のうしろに書くので、書いた順序がそのまま計算の順序になります。順序が並びだけで決まるため、かっこを書く必要がなくなります。
ほかの選択肢は
演算子も変数も、逆ポーランド記法の中に現れます。位置が変わるだけで、無くなるわけではありません。等号はもともと式の計算そのものには現れないので、この記法によって要らなくなったものではありません。
問29
音声をデジタル化するとき、量子化ビット数を8ビットから16ビットに増やした。このとき起こることとして、最も適切なものはどれか。
正解は 1番:段階の数が256から65,536に増え、量子化誤差は小さくなるが0にはならない
量子化ビット数は、測った高さを丸めるときの段階の数を決めます。8ビットなら2の8乗で256段階、16ビットなら2の16乗で65,536段階です。段階が細かくなるほど丸める幅が狭くなり、誤差は小さくなります。ただし段階の数が有限であるかぎり、誤差が0になることはありません。
ほかの選択肢は
ビット数が1つ増えるごとに段階は2倍になるので、8ビット増えれば2倍ではなく256倍です。1秒あたりに測る回数を決めるのは標本化周波数のほうで、量子化ビット数とは別です。ビット数を増やせば1回あたりのデータ量も増えるので、全体のデータ量も増えます。
問30
論理シフトと算術シフトの違いとして、最も適切なものはどれか。
正解は 4番:算術シフトは符号ビットを保ったままずらすが、論理シフトは符号を考えずにずらす
算術シフトは、符号付きの数として扱うシフトです。右へずらすとき、空いた左端には符号ビットと同じ値を入れるので、負の数は負のままになります。論理シフトは符号を考えず、空いた側には常に0を入れます。符号付きの数を右へずらすときに、この違いが表に出ます。
ほかの選択肢は
2つを入れ替えた説明は誤りです。方向によって使い分けるのでもなく、どちらも左右に使えます。10進数に用いるシフトというものはなく、どちらも2進数の桁をずらす操作です。
問31
1,000種類の文字を区別して表すには、最低何ビット必要か。
正解は 3番:10ビット
nビットで表せる値の種類は2ⁿ通りです。2を掛けながら数え上げると、2⁹ = 512、2¹⁰ = 1,024。512では1,000種類に足りず、1,024なら足りるので10ビットです。公式を思い出せなくても、2・4・8・16…と数えていけば答えは出ます。
ほかの選択肢は
9ビットは512通りで、1,000種類には足りません。ここを選ばせるために、答えの1つ手前の値が必ず選択肢に入ります。1,000ビットは「種類の数=ビット数」と取り違えた値です。125ビットは1,000を8で割った値で、ビットとバイトの関係を持ち込んでしまった形です。
問32
1GHz=10⁹Hzとするとき、クロック周波数が2GHzのCPUのクロック周期は何ナノ秒か。
正解は 4番:0.5ナノ秒
周期は周波数の逆数なので、1 ÷ (2×10⁹) = 0.5×10⁻⁹秒 = 0.5ナノ秒です。ギガ(10⁹)とナノ(10⁻⁹)は符号が逆の同じ数なので打ち消し合います。そのため 1 ÷ 2 = 0.5 と計算して、単位をナノ秒と書くだけで終わります。「ギガの逆数はナノ」「メガの逆数はマイクロ」「キロの逆数はミリ」と対で覚えておくと、この形は暗算で解けます。
ほかの選択肢は
2ナノ秒は、逆数を取らずに周波数の数字をそのまま書いた値です。500ナノ秒はギガ(10⁹)をメガ(10⁶)と取り違えた値で、3桁ずれています。0.0005ナノ秒はテラ(10¹²)で計算した値です。どれも「1段=1,000倍」を取り違えた形なので、答えの桁がおかしいと思ったら接頭語の段を数え直してください。
問33
「1kバイトは1,024バイト、1Mバイトは1,024kバイトとする」とことわりがある問題で、2Mバイトは何バイトか。
正解は 1番:2,097,152バイト
ことわり書きのとおり1,024刻みで数えます。まず 2Mバイト = 2 × 1,024kバイト = 2,048kバイト。これをバイトに直すと 2,048 × 1,024 = 2,097,152バイトです。1,024は2¹⁰なので、2 × 2¹⁰ × 2¹⁰ = 2 × 2²⁰ と書いても同じ値になります。試験で1,024刻みで数えさせたいときは、記号ではなくこのようにことわり書きで示されます。
ほかの選択肢は
2,000,000バイトは、ことわり書きを読み飛ばして1,000刻みで計算した値です。この単元でいちばん多い間違いで、問題文の前提を読んだかどうかだけで差が付きます。2,048バイトはkバイトに直したところで止めた値、2,048,000バイトは1,024を1回だけ使い、もう1回を1,000で済ませた値です。
問34
容量が1Tバイト(=10¹²バイト)と表示されて売られているSSDを、1,024刻みで数えるOSにつないだとき、表示される容量に近いものはどれか。
正解は 1番:約931Gバイト
売る側は1,000刻みで数えて1Tバイト(10¹²バイト)と書き、OSは1,024刻みで数えて表示します。1,024で3回割ると、10¹² ÷ 1,024 ≒ 9.77×10⁸、9.77×10⁸ ÷ 1,024 ≒ 9.54×10⁵、9.54×10⁵ ÷ 1,024 ≒ 931 です。容量が減っているわけでも壊れているわけでもなく、同じバイト数を違う刻みで数えているだけです。
ほかの選択肢は
約1,000Gバイトは、両方を1,000刻みで数えた場合の値です。約1,074Gバイトは1,024刻みで割るかわりに掛けてしまった値(2³⁰ = 1,073,741,824 から来る数)で、1,024で割るのだから表示は小さくなるはずだと向きで気づけます。約1,099Gバイトは、テラの側の差(2⁴⁰ ≒ 1.0995×10¹²)を取り違えた値です。
問35
複数のメディアを、いつ・どこに表示するかを時間軸に沿って記述する言語はどれか。
正解は 3番:SMIL
SMIL(スマイル)は、画像・音声・動画・文字を、何秒から何秒まで画面のどこに出すか、という台本だけを書く言語です。メディアの本体は持たず、別々のファイルを指します。名前の Synchronized は「同期した」という意味で、ばらばらのものを時間の上でそろえるところが中心にあります。
ほかの選択肢は
SVGは図形を座標や線の情報で表す画像形式、MathMLは数式を表す言語で、どちらも時間を扱いません。この3つはいずれもXMLで書かれた規格ですが、時間を扱うのはSMILだけです。CSSはWebページの見せ方を指定する言語で、XMLでは書かれていません。
問36
最小二乗法で、直線と点のずれをそのまま合計せず、二乗してから合計するのはなぜか。
正解は 2番:そのまま合計すると、上へのずれと下へのずれが打ち消し合ってしまうため
直線より上にある点のずれと、下にある点のずれは、符号が逆になります。そのまま足すと互いに打ち消し合い、まったく合っていない直線でも合計が0になってしまいます。二乗すればどちらも正の数になるので、ずれの大きさだけを足し合わせられます。
ほかの選択肢は
二乗するぶん計算はむしろ増えますし、単位ももとのままではなくなります。点の数が増えれば合計も増えていきます。打ち消し合わせずに足す、というただ一点のために、この形になっています。
問37
線形計画法で、条件を満たす範囲の内側にある点を調べなくてよいのはなぜか。
正解は 4番:目的の式も直線なので、値がいちばん大きくなるのは必ず範囲の角のどれかになるため
条件を直線で区切ると、満たす範囲は多角形になります。目的の式も直線なので、その直線を平行にずらしていくと、範囲から出ていく直前に触れているのは必ず角のどれかです。内側に、角より良い点は現れません。そのため角だけを計算して比べれば答えが出ます。
ほかの選択肢は
範囲の内側の点も条件は満たしていますし、整数で表せる点もあります。値も場所によって変わります。調べなくてよいのは、角より良くなることがないからであって、点として成り立たないからではありません。
問38
bppとbpsの違いとして、最も適切なものはどれか。
正解は 3番:bppは1画素あたりのビット数、bpsは1秒あたりのビット数である
ppはpixel(画素)、psはsecond(秒)の略です。bppは1画素を何ビットで表すかという色の細かさ、bpsは1秒あたりに送れるビット数という通信の速さを表します。1文字しか違いませんが、別の量です。
ほかの選択肢は
2つを入れ替えた選択肢が誤りです。1コマあたりのビット数には決まった略語を使わず、画素数とbppをかけて求めます。どちらも1秒あたりの量、というわけでもありません。
問39
動画の圧縮が静止画の圧縮より小さくできる理由として、最も適切なものはどれか。
正解は 4番:前のコマから変わった部分だけを記録できるため
動画の圧縮は2つの重なりを取り除きます。1枚の中の重なりをまとめるのは静止画でも行います。動画ならではの部分は、コマとコマの間の重なり、つまり前のコマから変わった部分だけを記録するところです。動きが少ない映像ほど小さくなります。
ほかの選択肢は
1枚の中の重なりをまとめるのは、静止画の圧縮と共通の仕組みです。音声は別に符号化して一緒に収めるもので、取り除くわけではありません。コマの大きさを統一することも、量が小さくなる理由になりません。
この結果の使い方
間違えた用語は復習リストに自動でたまります。 用語ページのミニクイズで正解し直すと、リストから消えます。 記録は自分のブラウザ内(localStorage)にのみ保存され、サーバーには送信していません。