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

公式集、全トピックの解法の要点、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 の補数?−128?64?32?16?8?4?2?1

−19 を 8 ビットの 2 の補数パターンで表しなさい。そのパターンを符号なし 2 進数として読むと、10 進数での値 U はいくつですか?

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

ビットを 0001 0110 >> 2 の 8 ビットの結果に設定します。結果の値 R は 10 進でいくつですか?

0001 0110>> 2
R =
3.命題論理と証明ふつう
¬¬r → ¬(p ∨ q)¬r → (p ∨ q)(p ∨ q) ∧ ¬¬r¬(p ∨ q) → ¬¬r

(p ∨ q) → ¬r を対偶によって証明しようとしています。代わりに証明する含意はどれですか? クリックしてください。

(p ∨ q) → ¬r
  1. 1¬¬r → ¬(p ∨ q)
  2. 2¬r → (p ∨ q)
  3. 3(p ∨ q) ∧ ¬¬r
  4. 4¬(p ∨ q) → ¬¬r
4.命題論理と証明むずかしい

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

(s ∧ ¬(¬q ∧ p)) → ¬(r → (¬r ∧ q))
N =
5.デジタル論理:ゲート・カルノー図・フリップフロップふつう
MUXCI0​C′I1​CI2​CI3​ABS1​S0​F

4 対 1 マルチプレクサの選択入力が S₁ = A、S₀ = B で、データ入力は I₀ = C、I₁ = C′、I₂ = C、I₃ = C につながれています。A, B, C の 8 通りの組み合わせのうち、出力 F = 1 になるのはいくつですか? N を求めてください。

I₀ = CI₁ = C′I₂ = CI₃ = C
N =
6.デジタル論理:ゲート・カルノー図・フリップフロップむずかしい
TQ0​Q0​TQ1​Q1​TQ2​Q2​TQ3​Q3​CLKMOD-10

同期式 十進(mod-10)カウンタ は 0, 1, …, 9 と数えて 0 に戻ります。初期値は 2 です。21 クロックパルスのあとの計数値 Q(10 進数)はいくつですか?

Q0 = 221N = 10
Q =
7.整数論と合同式ふつう

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

a = 33n = 71
33−1 mod 71 =
8.整数論と合同式むずかしい
553c = me​ mod n?m = cd​ mod nm(n, e) = (1147, 23)d

メッセージ m = 553 を RSA 公開鍵 (n, e) = (1147, 23) で暗号化してください。暗号文 c を求めてください。

n = 1147e = 23m = 553
c =
9.アルゴリズムと計算量ふつう

ある関数は n 回反復するループを 1 つ実行し、その後別に n 回反復するループをもう 1 つ実行します。時間計算量は何ですか?

  1. AO(n)
  2. BO(2ⁿ)
  3. CO(n²)
  4. DO(log n)
10.アルゴリズムと計算量むずかしい

P と NP に関する記述として正しいものはどれですか?

  1. AP ≠ NP であることが証明されている
  2. BNP は "not polynomial" を意味する
  3. CP に属するすべての問題は NP にも属する
  4. DNP の問題は高速に検証できない
11.データ構造ふつう

隣接行列を使って辺 (u, v) が存在するかを調べるのにどれだけ時間がかかりますか。

  1. AO(V)
  2. BO(1)
  3. CO(E)
  4. DO(log V)
12.データ構造むずかしい

ある AVL ノードは、その左の子の右部分木が高くなりすぎたために平衡が崩れています(左右の場合)。どのような修正が適用されますか。

  1. Aそのノードで 1 回の右回転
  2. B左の子で左回転し、次にそのノードで右回転
  3. Cそのノードで 1 回の左回転
  4. D左の子で右回転し、次にそのノードで左回転
13.グラフ理論ふつう

完全グラフ K5 には、異なるハミルトン閉路が何個Hありますか? 始点や向きだけが異なる閉路は同じものとして数えます。

K5
H =
14.グラフ理論むずかしい
184891721451213ABCDEFG

重み付きグラフの最小全域木の重みの合計 W を求めてください。

|V| = 7|E| = 10
W =
15.データベースと SQLふつう

テーブルに col が NULL の行があります。WHERE col = NULL はどの行を返しますか?

  1. Aテーブルのすべての行
  2. B比較が不明(UNKNOWN)になるので、行を返さない
  3. CIS NULL の場合と同様に、col が NULL の行だけ
  4. Dどのデータベースでもエラー
16.データベースと SQLむずかしい

並行トランザクションのスケジュールが直列化可能と呼ばれるのはどのような場合ですか?

  1. Aトランザクションが 1 つの CPU だけで実行される場合
  2. Bどのトランザクションもデータを読まない場合
  3. Cすべてのトランザクションに通し番号が付けられる場合
  4. Dその効果が、同じトランザクションの何らかの直列実行と等価である場合
17.コンピュータネットワークふつう

ライブのビデオ通話で UDP がよく選ばれるのはなぜですか?

  1. Aすべての動画で UDP が必須だから
  2. B失われたパケットをすべて再送するよりも、遅延が小さいことのほうが重要だから
  3. CUDP はすべてのパケットの到着を保証するので、映像が止まることはないから
  4. DUDP はデータを自動的に暗号化するから
18.コンピュータネットワークむずかしい

ある経路の帯域幅は 100 Mbit/s、往復時間は 40 ms です。経路を十分に使い切るには、どれだけのデータを送信中にしておく必要がありますか?

  1. A4 kB
  2. B500 kB
  3. C2.5 MB
  4. D50 kB
19.IPv4 サブネット化ふつう
/24 → /2811111111111111111111111111110000ネットワーク部ホスト部

ネットワーク 192.168.244.0/24 を /28 のサブネットに分割し、最も小さいアドレスから 1、2、3、… と番号をつけます(サブネット 1 は .0 から始まる)。サブネット 12 のネットワークアドレスの第 4 オクテット x はいくつですか?

192.168.244.0/24/28サブネット 12 (サブネット 1 は .0 から始まる)
x =
20.IPv4 サブネット化むずかしい

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

A: 24B: 26C: 4D: 12E: 6
x =

3溶液

1.記数法

答え: U = 237

位取り記数法:各桁の値は、その数字に基数のべき乗を掛けたものです。2 進数では各桁の重みが 1、2、4、8、16、…、16 進数では 1、16、256、… で、A–F は 10–15 を表します。8 ビットの 2 の補数では、最上位ビットの重みが +128 ではなく −128 になり、こうして負の数を表します。

反転して 1 を足す

19 = 0001 0011
反転後: 1110 1100
+1 → 1110 1101

符号なしとして読む

1110 1101₂ = 256 − 19 = 237

答え

U = 237
2.記数法

答え: R = 5

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

ビットごとに

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

0001 0110 >> 2
= 0000 0101

結果の値

0000 0101₂ = 5

答え

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

答え: ¬¬r → ¬(p ∨ q)

論理的同値: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)。

含意の各部分

a = p ∨ q, b = ¬r

対偶

¬b → ¬a = ¬¬r → ¬(p ∨ q)

答え

¬¬r → ¬(p ∨ q)

対偶は元の主張と同値なので、それを証明すれば元の主張が証明できます。

4.命題論理と証明

答え: N = 13

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

列

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

p で分ける

p = 1: 7
p = 0: 6
N = 7 + 6 = 13

答え

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

答え: N = 4

マルチプレクサ:2ⁿ 対 1 のマルチプレクサは、データ入力の 1 つを出力に通します。選択線を 2 進数として読んだ値が、どれを通すかを決めます。選択線 S₁S₀ = AB の 4 対 1 MUX では、F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃ です。データ入力を 0, 1, C, C′ につなぐと、MUX は A, B, C の任意の関数を出力でき、1 つのチップで論理をつくる一般的な方法です。

出力の式

F = A′B′C + A′BC′ + AB′C + ABC

F = 1 の行

ABC = 001, 010, 101, 111
N = 4

答え

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

答え: Q = 3

フリップフロップとカウンタ:フリップフロップは、有効なクロックエッジでだけ変化します。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 個あります。

完全な周期

10 パルスごとに、カウンタは同じ状態に戻ります。

21 = 2·10 + 1

残りのパルスのあとの計数値

Q = (2 + 1) mod 10 = 3
Q = 0011₂

答え

Q = 3
7.整数論と合同式

答え: 33−1 mod 71 = 28

逆元と合同式: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·33 (mod 71) と書けます。

r = 71, t = 0
r = 33, q = 2, t = 1
r = 5, q = 6, t = −2
r = 3, q = 1, t = 13
r = 2, q = 1, t = −15
r = 1, q = 2, t = 28

逆行列

1 ≡ 28·33 (mod 71)
x = 28
確認: 33·28 = 924 = 13·71 + 1

答え

33−1 mod 71 = 28
8.整数論と合同式

答え: c = 254

冪剰余と 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 で行います。

反復二乗法

23 = 16 + 4 + 2 + 1
5531 ≡ 553 (mod 1147)
5532 ≡ 707 (mod 1147)
5534 ≡ 904 (mod 1147)
5538 ≡ 552 (mod 1147)
55316 ≡ 749 (mod 1147)
55323 ≡ 553·707·904·749 ≡ 254 (mod 1147)

暗号文

c = 254

答え

c = 254
9.アルゴリズムと計算量

答え: A · O(n)

これが答えになる理由

n + n = 2n で、定数倍は取り除かれるので、この関数は O(n) です。

答え

A · O(n)
10.アルゴリズムと計算量

答え: C · P に属するすべての問題は NP にも属する

これが答えになる理由

P ⊆ NP です。問題を高速に解けるなら、解も高速に検証できます。P = NP かどうかは未解決です。

答え

C · P に属するすべての問題は NP にも属する
11.データ構造

答え: B · O(1)

これが答えになる理由

行 u、列 v の要素を見れば、辺が存在するかどうかがすぐにわかります。隣接リストでは u の隣接頂点を走査する必要があるかもしれません。

答え

B · O(1)
12.データ構造

答え: B · 左の子で左回転し、次にそのノードで右回転

これが答えになる理由

最初の回転によって左右の場合が左左の場合に変わり、それを平衡が崩れたノードでの右回転で修正します。

答え

B · 左の子で左回転し、次にそのノードで右回転
13.グラフ理論

答え: H = 12

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

数える

H = (5 − 1)!/2 = 24/2 = 12

答え

H = 12
14.グラフ理論

答え: W = 46

最短経路と全域木:ダイクストラ法は毎ラウンド 1 つの頂点を確定します:暫定距離が最小の未確定の頂点です。その距離は最終となり、各隣接頂点 v は d(v) = min(d(v), d(u) + w(u, v)) と更新されます。クラスカル法は、辺を軽い順に取り、閉路をつくる辺を飛ばして最小全域木をつくります。プリム法は、始点から 1 本の木を成長させ、その木から出る最も軽い辺を常に加えます。n 個の頂点の全域木には n − 1 本の辺があります。

クラスカル法

EF (2): 取る
BC (4): 取る
GC (5): 取る
BD (8): 取る
CE (9): 取る
GD (12): 飛ばす(閉路ができる)
GE (13): 飛ばす(閉路ができる)
GB (14): 飛ばす(閉路ができる)
DE (17): 飛ばす(閉路ができる)
AB (18): 取る

重みの合計

W = 2 + 4 + 5 + 8 + 9 + 18 = 46

答え

W = 46
15.データベースと SQL

答え: B · 比較が不明(UNKNOWN)になるので、行を返さない

これが答えになる理由

= を使った NULL とのどんな比較も UNKNOWN になり、WHERE は TRUE の行だけを残します。代わりに col IS NULL を使います。

答え

B · 比較が不明(UNKNOWN)になるので、行を返さない
16.データベースと SQL

答え: D · その効果が、同じトランザクションの何らかの直列実行と等価である場合

これが答えになる理由

直列化可能性は並行処理の主な正しさの基準です。交互に実行した結果は、何らかの 1 つずつの順序での結果と等しくなければなりません。

答え

D · その効果が、同じトランザクションの何らかの直列実行と等価である場合
17.コンピュータネットワーク

答え: B · 失われたパケットをすべて再送するよりも、遅延が小さいことのほうが重要だから

これが答えになる理由

失われたパケットを再送すると遅延が増えます。リアルタイムメディアはある程度の損失を許容できるため、RTP のような UDP ベースのプロトコルが使われます。

答え

B · 失われたパケットをすべて再送するよりも、遅延が小さいことのほうが重要だから
18.コンピュータネットワーク

答え: B · 500 kB

これが答えになる理由

帯域幅遅延積は 100 × 10⁶ bit/s × 0.04 s = 4 × 10⁶ ビット = 500 kB です。送信側のウィンドウは少なくともこの大きさが必要です。

答え

B · 500 kB
19.IPv4 サブネット化

答え: x = 176

IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).

ブロックサイズ

24 = 16

サブネット番号 12

ネットワーク: (12 − 1)·16 = 176
ブロードキャスト: 176 + 16 − 1 = 191

答え

x = 176
20.IPv4 サブネット化

答え: x = 64

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

LAN ごとのブロックサイズ

B: 26 ホスト → 25 = 32 (/27)
A: 24 ホスト → 25 = 32 (/27)
D: 12 ホスト → 24 = 16 (/28)
E: 6 ホスト → 23 = 8 (/29)
C: 4 ホスト → 23 = 8 (/29)

割り当て(大きい順)

B: .0 – .31
A: .32 – .63
D: .64 – .79
E: .80 – .87
C: .88 – .95

答え

x = 64

LAN D:192.168.131.64/28。

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