コンピュータサイエンス基礎:直前対策パック

公式集、全トピックの解法の要点、20 問の演習問題。完全な解答は巻末にあります。

新しい問題科目に戻る

印刷ウィンドウで「PDF として保存」を選ぶと、コピーを端末に保存できます。

1公式と解法

記数法

位取り
2 進数 2k、8 進数 8k、16 進数 16k
10 進数へ
Σ dk·bk
10 進数から
基数で割り、余りを下から上へ読む
16 進数 ↔ 2 進数
16 進数 1 桁 = 4 ビット
2 の補数
ビットを反転して 1 を足す

命題論理と証明

真理値表の行
2ⁿ
含意
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
含意の否定
¬(p → q) ≡ p ∧ ¬q
同値(双条件)
p ↔ q ≡ (p → q) ∧ (q → p)
ド・モルガンの法則
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
分配法則
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
量化子の否定
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
肯定式(modus ponens)、否定式(modus tollens)
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

解き方

  1. 異なる変数の数を数えます:真理値表の行数は 2ⁿ で、最初の行はすべて 1 です。
  2. 部分式ごとに列を用意し、内側から順に列を埋めていきます。
  3. 各結合子の規則を適用します:→ が 0 になるのは 1 → 0 のときだけ、↔ は両辺が一致するとき 1 です。
  4. 同値の判定では最後の列を行ごとに比べます。論証の判定では、すべての前提が 1 である行だけを見ます。
  5. 量化された文を否定するには、¬ を内側へ移し、∀ と ∃ を入れ替え、内側の式を否定します。

デジタル論理:ゲート・カルノー図・フリップフロップ

基本ゲート
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
ブールの規則
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
ド・モルガンの法則
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
カルノー図の並び順
00, 01, 11, 10 (Gray code)
2ᵏ 個のセルのグループ
k 個の変数が消える
4 対 1 マルチプレクサ
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
フリップフロップ
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
カウンタ
n ビット:2ⁿ 状態; mod-N:2ⁿ ≥ N を満たす最小の n; fout = fclk/N
リップルカウンタ
fmax = 1/(n·tpd)
リングカウンタとジョンソンカウンタ
n 状態と 2n 状態

解き方

  1. 回路では、入力から出力へ向かってゲートを 1 つずつ進み、各配線に値を書き込むか、式を書いて真理値表を埋めましょう。
  2. 簡単化するには、1(とドントケアは X として)を、行と列がグレイコード 00, 01, 11, 10 のカルノー図に書き込みましょう。
  3. 1 を、1, 2, 4, 8, 16 個のセルからなる、できるだけ少なくできるだけ大きなグループで、端をまたぎながら覆いましょう。各グループは、一定のままの変数からなる 1 つの積項です。POS 形には 0 をグループ化します。
  4. フリップフロップとカウンタでは、各有効クロックエッジで入力を読み取り、エッジごとの状態を書き出し、n ビットのカウンタは 2ⁿ 個の状態で折り返すことを忘れないようにしましょう。

整数論と合同式

余りのある割り算
a = q·n + r, 0 ≤ r < n
ユークリッド
gcd(a, b) = gcd(b, a mod b)
最小公倍数
lcm(a, b) = a·b/gcd(a, b)
逆行列
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
一次合同式
a·x ≡ b → x ≡ a⁻¹·b (mod n)
オイラーのトーシェント関数
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
フェルマー
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

解き方

  1. まずすべての数を n で割った余りに直します。余りは 0 から n − 1 の間です。
  2. 最大公約数は、ユークリッドの互除法で割り算を繰り返して求めます。最後の 0 でない余りが最大公約数です。
  3. 逆元は拡張ユークリッドの互除法で求め、a の係数を取ります。負なら n を足します。
  4. a·x ≡ b は a⁻¹ を掛けて解きます。2 つの合同式は x = r₁ + m₁k とおいて組み合わせます。
  5. べき乗では、指数を 2 進数で書いて平方を繰り返します。RSA では d = e⁻¹ mod φ(n)、φ(n) = (p − 1)(q − 1) です。

グラフ理論

握手補題
Σ deg(v) = 2|E|
完全グラフ
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
正則グラフ
|E| = n·k/2
木と森
|E| = n − 1, |E| = n − c
木の葉
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
オイラー
閉路:すべての次数が偶数; 路:奇数次数がちょうど 2 つ
Kn のハミルトン閉路
(n − 1)!/2
ダイクストラ法の更新
d(v) = min(d(v), d(u) + w(u, v))
長さ L の歩道
(Mᴸ)ij

解き方

  1. 各頂点の次数を書き出します。次数の総和は辺の数の 2 倍になります。
  2. オイラーの問題では、グラフが連結であることを確かめ、奇数次数の頂点を数えます。
  3. 木では、辺が n − 1 本であることと握手補題を使います。
  4. ダイクストラ法では、暫定距離の表をつくり、毎回、未確定の頂点のうち最小のものを確定します。
  5. 最小全域木では、辺を重みの順に並べ、閉路をつくる辺を飛ばす方法(クラスカル法)か、始点から 1 本の木を成長させる方法(プリム法)を使います。

IPv4 サブネット化

サブネットあたりのホスト数
2(32 − prefix) − 2 (/31: 2, /32: 1)
ブロックサイズ
256 − (mask octet)
ネットワークアドレス
IP AND マスク
ブロードキャストアドレス
IP OR (NOT マスク):ホスト部のビットをすべて 1 にする
n ビット借りたときのサブネット数
2n

2演習問題

1.記数法ふつう
8 ビットの 2 の補数0−12806403201608040201

8 ビットの 2 の補数で −91 を格納するようにビットを設定します。符号なしの数として読むと、このパターンの値 U はいくつですか?

N = −918 bit
U =
2.記数法むずかしい
ビットをクリックして設定します012806403201608040201

ビットを 1010 1001 << 3 の 8 ビットの結果に設定します。結果の値 R は 10 進でいくつですか?

1010 1001<< 3
R =
3.命題論理と証明ふつう
恒真式矛盾(恒偽式)恒真でも矛盾でもない式

(q → p) ∧ (q ∧ ¬p) は恒真式、矛盾、そのどちらでもない式のうちのどれですか? 答えをクリックしてください。

(q → p) ∧ (q ∧ ¬p)
  1. 1恒真式
  2. 2矛盾(恒偽式)
  3. 3恒真でも矛盾でもない式
4.命題論理と証明むずかしい

真理値表の 16 行のうち、((p → r) ∨ q) ∧ (s → (p ∨ ¬r)) が真になるのは何行ですか? この数を N とします。

((p → r) ∨ q) ∧ (s → (p ∨ ¬r))
N =
5.デジタル論理:ゲート・カルノー図・フリップフロップふつう
ABC00011110010011030204051716

カルノー図を使って F(A, B, C) = Σm(1, 6, 7) の最小の和積形(POS)を求めてください。和項(因数)N はいくつありますか?

F(A, B, C) = Σm(1, 6, 7)
N =
6.デジタル論理:ゲート・カルノー図・フリップフロップむずかしい
CLKJK123456

正エッジトリガの JK フリップフロップが Q = 0 から始まり、図の入力を受け取ります。Q が 1 から 0 に戻る最初のクロックエッジをクリックしてください。

Q₀ = 0JK
  1. 1クロックエッジ 1
  2. 2クロックエッジ 2
  3. 3クロックエッジ 3
  4. 4クロックエッジ 4
  5. 5クロックエッジ 5
  6. 6クロックエッジ 6
7.整数論と合同式ふつう

64 を法とする 47 の逆元を求めてください:0 < x < 64 かつ 47·x ≡ 1 (mod 64) を満たす数 x です。

a = 47n = 64
47−1 mod 64 =
8.整数論と合同式むずかしい

反復二乗法を使って 13189 mod 93 を求めてください。

a = 13k = 189n = 93
13189 mod 93 =
9.アルゴリズムと計算量ふつう

1,000,000 要素のソート済み配列に対して、二分探索は最悪の場合およそ何回の比較を必要としますか?

  1. A約 100 回
  2. B約 1,000 回
  3. C約 500,000 回
  4. D約 20 回
10.アルゴリズムと計算量むずかしい

極大マッチングのすべての辺の両端点をとると頂点被覆が得られます。この被覆はどれくらいよいですか?

  1. A常に最小頂点被覆
  2. B最小頂点被覆のサイズの高々 2 倍
  3. C最小値の高々 log n 倍
  4. D最適解と比べた品質は不明
11.データ構造ふつう

深さ優先探索(反復版)で使われるデータ構造はどれですか。

  1. Aキュー
  2. Bハッシュテーブルのみ
  3. Cスタック
  4. Dヒープ
12.データ構造むずかしい

ソート済み連結リストと比べたスキップリストの主な利点は何ですか。

  1. Aキーを順序なしで格納する
  2. B複数レベルの前方ポインタにより期待値 O(log n) で探索できる
  3. C追加のメモリを使わない
  4. Dすべてのノードが他のすべてのノードへのポインタを持つので、O(1) の探索が保証される
13.グラフ理論ふつう

木に 次数 3 の頂点が 2 個, 次数 4 の頂点が 3 個, 次数 2 の頂点が 2 個 があり、ほかのすべての頂点は葉(次数 1)です。葉は何枚Lありますか?

2 × deg 33 × deg 42 × deg 2
L =
14.グラフ理論むずかしい
ABCDEF

E から F への長さ 2 の歩道はいくつありますか? 歩道では頂点や辺を繰り返してもかまいません。その数を N とします。

M = 隣接行列L = 2
N =
15.データベースと SQLふつう

SELECT price * 2 AS double_price FROM t WHERE double_price > 10 が多くのデータベースで失敗するのはなぜですか?

  1. A別名にアンダースコアを含めてはいけないから
  2. BSELECT リストでは算術演算が許されないから
  3. CWHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
  4. DWHERE はテキスト列しか比較できないから
16.データベースと SQLむずかしい

あるレポート用データベースは、結合を避けるために顧客名を orders テーブルにコピーしています。この非正規化の主なコストは何ですか?

  1. Aorders テーブルへのクエリが遅くなる
  2. B顧客データが変わるたびに、冗長なコピーの整合性を保たなければならない
  3. Cデータベースがインデックスを使えなくなる
  4. D主キーが使えなくなる
17.コンピュータネットワークふつう

偶数パリティを使うとき、データビット 1011001 に付け加えるパリティビットはどれですか?

  1. A0
  2. B1
  3. C2
  4. D4
18.コンピュータネットワークむずかしい

標準的なイーサネット(Ethernet)のペイロードの最大転送単位(MTU)はいくつですか?

  1. A65,535 バイト
  2. B64 バイト
  3. Cすべてのネットワークで 9000 バイト
  4. D1500 バイト
19.IPv4 サブネット化ふつう
/24 → /2711111111111111111111111111100000ネットワーク部ホスト部

ネットワーク 192.168.10.0/24 を、少なくとも 5 個の同じ大きさのサブネットに分けます。借りるビットをできるだけ少なくすると、各サブネットで使えるホスト数 H はいくつですか?

192.168.10.0/245 subnets
H =
20.IPv4 サブネット化むずかしい

ネットワーク 192.168.99.0/24 を、次の LAN 用に VLSM で分割します:A: 118 ホスト, B: 55 ホスト, C: 7 ホスト, D: 4 ホスト。サブネットは .0 から順に、ホスト数が最も多い LAN から、収まる最小のサブネットで割り当てます。LAN D のネットワークアドレスの第 4 オクテット x はいくつですか?

A: 118B: 55C: 7D: 4
x =

3溶液

1.記数法

答え: U = 165

ビットの設定:各ビットは 2 のべき乗(128、64、…、1)の値をもちます。16 進の 1 桁はちょうど 4 ビットで、8 ビットの 2 の補数では、いちばん左のビットの値は −128 です。ビット演算は、各ビット位置を別々に扱います。

反転して 1 を足す

91 = 0101 1011
反転後: 1010 0100
+1 → 1010 0101

符号なしとして読む

1010 0101₂ = 256 − 91 = 165

答え

U = 165
2.記数法

答え: R = 72

ビットの設定:各ビットは 2 のべき乗(128、64、…、1)の値をもちます。16 進の 1 桁はちょうど 4 ビットで、8 ビットの 2 の補数では、いちばん左のビットの値は −128 です。ビット演算は、各ビット位置を別々に扱います。

ビットごとに

3 だけ左にシフトすると、すべてのビットが 3 桁左へ動きます。左端からはみ出したビットは失われ、右側には 0 が入ります。

1010 1001 << 3
= 0100 1000

結果の値

0100 1000₂ = 72

答え

R = 72
3.命題論理と証明

答え: 矛盾(恒偽式)

論理的同値:2 つの論理式は、真理値表のすべての行で同じ値をとるとき同値(≡)です。恒真式(トートロジー)はすべての行で 1、矛盾(恒偽式)はすべての行で 0、どちらでもないものは充足可能な非恒真式です。役に立つ法則:ド・モルガンの法則 ¬(a ∧ b) ≡ ¬a ∨ ¬b と ¬(a ∨ b) ≡ ¬a ∧ ¬b、a → b ≡ ¬a ∨ b ≡ ¬b → ¬a(対偶)、¬(a → b) ≡ a ∧ ¬b、そして分配法則 a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c)。

真理値表を行ごとに見る

p = 1, q = 1: q → p = 1, ¬p = 0, q ∧ ¬p = 0, (q → p) ∧ (q ∧ ¬p) = 0
p = 1, q = 0: q → p = 1, ¬p = 0, q ∧ ¬p = 0, (q → p) ∧ (q ∧ ¬p) = 0
p = 0, q = 1: q → p = 0, ¬p = 1, q ∧ ¬p = 1, (q → p) ∧ (q ∧ ¬p) = 0
p = 0, q = 0: q → p = 1, ¬p = 1, q ∧ ¬p = 0, (q → p) ∧ (q ∧ ¬p) = 0

分類

(q → p) ∧ (q ∧ ¬p): 0, 0, 0, 0
すべての行で 0:矛盾です。

答え

矛盾(恒偽式)
4.命題論理と証明

答え: N = 12

真理値表:n 個の異なる変数をもつ論理式には、真理値のすべての組み合わせに対応する 2ⁿ 行があります(1 = 真、0 = 偽)。内側から順に進め、部分式ごとに列を用意します。¬a は値を反転させ、a ∧ b は両方が 1 のときだけ 1、a ∨ b は両方が 0 のときだけ 0、a → b は a = 1 かつ b = 0 のときだけ 0、a ↔ b は両辺が等しいとき 1 です。

列

p → r; (p → r) ∨ q; ¬r; p ∨ ¬r; s → (p ∨ ¬r); ((p → r) ∨ q) ∧ (s → (p ∨ ¬r))

p で分ける

p = 1: 6
p = 0: 6
N = 6 + 6 = 12

答え

N = 12
5.デジタル論理:ゲート・カルノー図・フリップフロップ

答え: N = 3

カルノー図:セルはグレイコード(00, 01, 11, 10)の順に並んでいるので、端をまたぐものも含め、隣り合うセルはちょうど 1 つの変数だけが異なります。1 を、1, 2, 4, 8, 16 個のセルからなる長方形で、できるだけ大きく、できるだけ少ない数でグループ化し、すべての 1 を覆います。各グループは 1 つの積項で、グループの中で一定のままの変数からなります。2ᵏ 個のセルのグループでは k 個の変数が消えます。ドントケア(X)はグループを大きくするために使えますが、覆う必要はありません。代わりに 0 をグループ化すると、最小の POS 形が得られます。

ABC00011110010011030204051716

0 をグループ化する

各グループは 2ᵏ 個のセルからなる長方形です。端のセルは、反対側の端のセルと隣り合っています。

(B + C)
(A + B′)
(A′ + B)

最小の POS 形

F = (B + C)(A + B′)(A′ + B)
N = 3

答え

N = 3

同じ大きさの別のグループ分けもあります。項の数もリテラルの数も同じです。

6.デジタル論理:ゲート・カルノー図・フリップフロップ

答え: クロックエッジ 4

フリップフロップとカウンタ:フリップフロップは、有効なクロックエッジでだけ変化します。D は入力をコピーし(Q⁺ = D)、T は T = 1 のときトグルし、JK は 00 で保持、01 でリセット、10 でセット、11 でトグルします。n ビットの 2 進カウンタには 2ⁿ 個の状態があり、2ⁿ を法として数えます。mod-N カウンタは 0, 1, …, N − 1 と数えて 0 に戻り、2ⁿ ≥ N を満たす最小の n 個のフリップフロップが必要です。リップルカウンタの各段は周波数を半分にするので、mod-N カウンタの最後の出力は fclk/N で動作します。n 個のフリップフロップのジョンソンカウンタには 2n 個の状態があり、リングカウンタには n 個あります。

エッジごとの Q

JK フリップフロップ:00 は保持、01 はリセット(Q = 0)、10 はセット(Q = 1)、11 はトグルです。

1: J = 0, K = 1 → Q = 0
2: J = 0, K = 0 → Q = 0
3: J = 1, K = 1 → Q = 1
4: J = 1, K = 1 → Q = 0
5: J = 1, K = 0 → Q = 1
6: J = 1, K = 1 → Q = 0

1 から 0 への最初の変化

クロックエッジ 4

答え

クロックエッジ 4
7.整数論と合同式

答え: 47−1 mod 64 = 15

逆元と合同式:a が n を法として逆元をもつのは、gcd(a, n) = 1 のときに限ります。拡張ユークリッドの互除法で 1 = s·n + t·a と書くと、a⁻¹ ≡ t (mod n) です。gcd(a, n) = 1 のとき、合同式 a·x ≡ b (mod n) の解は x ≡ a⁻¹·b です。法が互いに素な 2 つの合同式 x ≡ r₁ (mod m₁) と x ≡ r₂ (mod m₂) には、m₁·m₂ を法として 1 つの解があります(中国の剰余定理)。オイラーの φ(n) は、1 から n までの数のうち n と互いに素なものの個数です:φ(n) = n·∏(1 − 1/p)。

拡張ユークリッドの互除法

各余り r は r ≡ t·47 (mod 64) と書けます。

r = 64, t = 0
r = 47, q = 1, t = 1
r = 17, q = 2, t = −1
r = 13, q = 1, t = 3
r = 4, q = 3, t = −4
r = 1, q = 4, t = 15

逆行列

1 ≡ 15·47 (mod 64)
x = 15
確認: 47·15 = 705 = 11·64 + 1

答え

47−1 mod 64 = 15
8.整数論と合同式

答え: 13189 mod 93 = 91

冪剰余と RSA:aᵏ mod n は反復二乗法で計算します:k を 2 進数で書き、二乗し、毎回簡約し、ビットが 1 の冪を掛けます。フェルマー:素数 p が a を割り切らないとき aᵖ⁻¹ ≡ 1 (mod p) なので、指数は p − 1 を法として簡約できます。RSA:素数 p と q を選び、n = p·q、φ(n) = (p − 1)(q − 1) とします。公開指数 e は φ(n) と互いに素で、秘密指数は d = e⁻¹ mod φ(n) です。暗号化は c = mᵉ mod n、復号は m = cᵈ mod n で行います。

2 進数の指数

189 = 101111012 = 128 + 32 + 16 + 8 + 4 + 1

反復二乗法

131 ≡ 13 (mod 93)
132 ≡ 76 (mod 93)
134 ≡ 10 (mod 93)
138 ≡ 7 (mod 93)
1316 ≡ 49 (mod 93)
1332 ≡ 76 (mod 93)
1364 ≡ 10 (mod 93)
13128 ≡ 7 (mod 93)

必要な冪を掛ける

13189 ≡ 13·10·7·49·76·7 ≡ 91 (mod 93)

答え

13189 mod 93 = 91
9.アルゴリズムと計算量

答え: D · 約 20 回

これが答えになる理由

220 ≈ 1,048,576 なので、約 20 回半分にすると要素は 1 つだけ残ります。

答え

D · 約 20 回
10.アルゴリズムと計算量

答え: B · 最小頂点被覆のサイズの高々 2 倍

これが答えになる理由

マッチングの辺は頂点を共有しないので、最適解には辺ごとに少なくとも 1 頂点が必要ですが、この方法は 2 頂点をとります。つまり 2 近似です。

答え

B · 最小頂点被覆のサイズの高々 2 倍
11.データ構造

答え: C · スタック

これが答えになる理由

DFS はできるだけ深く探索するため、自然にスタック(または再帰の呼び出しスタック)を使います。BFS はキューを使います。

答え

C · スタック
12.データ構造

答え: B · 複数レベルの前方ポインタにより期待値 O(log n) で探索できる

これが答えになる理由

ランダムに決まるレベルによって探索で多くのノードを飛ばせるため、探索・挿入・削除の期待計算量は O(log n) になります。

答え

B · 複数レベルの前方ポインタにより期待値 O(log n) で探索できる
13.グラフ理論

答え: L = 10

オイラー、ハミルトン、木:連結グラフは、すべての頂点の次数が偶数のときオイラー閉路(すべての辺を 1 回ずつ通って始点に戻る)をもち、ちょうど 2 つの頂点の次数が奇数のとき、閉路でないオイラー路をもちます。その路は、一方の奇数次数の頂点から他方へ通ります。ハミルトン閉路はすべての頂点を 1 回ずつ訪れ、Kn には (n − 1)!/2 個あります。n 個の頂点をもつ木には n − 1 本の辺があり、m 本の辺をもつ連結グラフは、m − n + 1 本の辺を取り除いても全域木が残ります。

木の握手補題

L + 22 = 2(L + 7) − 2
L = 10

答え

L = 10

近道:次数 d ≥ 3 の頂点について L = 2 + Σ (d − 2) です。

14.グラフ理論

答え: N = 1

次数:頂点の次数は、その頂点に接する辺の数です。どの辺にも端が 2 つあるので、次数の和は辺の数の 2 倍になります:Σ deg(v) = 2|E|(握手補題)。したがって、奇数次数の頂点の数は偶数です。Kn には n(n − 1)/2 本の辺があり、n 個の頂点をもつ k 正則グラフには nk/2 本、n 個の頂点をもつ木には n − 1 本の辺があります。

隣接行列

A: 0 1 1 0 0 0
B: 1 0 1 0 1 0
C: 1 1 0 0 0 0
D: 0 0 0 0 1 1
E: 0 1 0 1 0 1
F: 0 0 0 1 1 0

共通の隣接頂点

(M²)EF = 0·0 + 1·0 + 0·0 + 1·1 + 0·1 + 1·0 = 1

答え

N = 1
15.データベースと SQL

答え: C · WHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから

これが答えになる理由

論理的には FROM と WHERE が SELECT より先に実行されるため、WHERE で式を繰り返すかサブクエリを使います。ORDER BY は SELECT の後に実行されるので別名を使えます。

答え

C · WHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
16.データベースと SQL

答え: B · 顧客データが変わるたびに、冗長なコピーの整合性を保たなければならない

これが答えになる理由

非正規化は読み取りを速くしますが冗長性を戻してしまうため、更新ではすべてのコピーを変更しなければならず、そうしないと異常が生じます。

答え

B · 顧客データが変わるたびに、冗長なコピーの整合性を保たなければならない
17.コンピュータネットワーク

答え: A · 0

これが答えになる理由

1011001 には 1 のビットが 4 つあり、すでに偶数なので、パリティビットは 0 です。奇数パリティなら 1 になります。

答え

A · 0
18.コンピュータネットワーク

答え: D · 1500 バイト

これが答えになる理由

標準イーサネットは最大 1500 バイトのペイロードを運びます。これより大きな IP パケットはフラグメント化するか、パス MTU 探索(path MTU discovery)を使う必要があります。

答え

D · 1500 バイト
19.IPv4 サブネット化

答え: H = 30

IPv4 サブネット化:アドレスは 32 ビットです。プレフィックス /p は先頭の何ビットがネットワークを表すかを示し、残りの 32 − p ビットでホストを番号付けします。サブネットには 2³²⁻ᵖ 個のアドレスがありますが、最初(ネットワークアドレス)と最後(ブロードキャストアドレス)はホストに割り当てられないため、2³²⁻ᵖ − 2 台のホストが収まります。 例外:/31(ポイントツーポイントリンク、RFC 3021)は 2 つのアドレスを両方ともホストに使い、/32 は単一のアドレス(単一ホストまたはループバック)です。

借りるビット数

23 = 8 ≥ 5 → b = 3, /27

サブネットあたりのホスト数

25 − 2 = 30

答え

H = 30
20.IPv4 サブネット化

答え: x = 208

VLSM:各 LAN には 2ʰ − 2 ≥ ホスト数 となる最小のサブネット、つまりプレフィックス 32 − h を割り当てます。大きいサブネットから割り当てると、各ブロックは自身のサイズの倍数にそろうので、ネットワークアドレスはブロックサイズを足し合わせて求まります。

LAN ごとのブロックサイズ

A: 118 ホスト → 27 = 128 (/25)
B: 55 ホスト → 26 = 64 (/26)
C: 7 ホスト → 24 = 16 (/28)
D: 4 ホスト → 23 = 8 (/29)

割り当て(大きい順)

A: .0 – .127
B: .128 – .191
C: .192 – .207
D: .208 – .215

答え

x = 208

LAN D:192.168.99.208/29。

ExamProblems · examproblems.com/courses/computer-science-fundamentals