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

公式集、全トピックの解法の要点、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.記数法ふつう
2 の補数での桁の重み1−12816403211608040201

8 ビットのパターン 1101 0000 は、符号付き整数を 2 の補数で表しています。10 進数での値 N はいくつですか?

1101 00008 bit
N =
2.記数法むずかしい
16 bit1 px512 px512 pxM = ? KiB

非圧縮の画像が 512 × 512 ピクセル、1 ピクセルあたり 16 ビットです。必要なメモリ M は何 KiB(1 KiB = 1024 バイト)ですか?

512 × 512 px16 bit/px1 KiB = 1024 B
M = KiB
3.命題論理と証明ふつう
¬(q ∨ r) → ¬¬p¬¬p → ¬(q ∨ r)¬p ∧ ¬(q ∨ r)(q ∨ r) → ¬p

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

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

前提 c → (b ∨ a); c、結論 b の論証は妥当ではありません。反例となる真理値表の行をクリックしてください。

c → (b ∨ a)c∴ b
  1. 1a = 1, b = 1, c = 1
  2. 2a = 1, b = 1, c = 0
  3. 3a = 1, b = 0, c = 1
  4. 4a = 1, b = 0, c = 0
  5. 5a = 0, b = 1, c = 1
  6. 6a = 0, b = 1, c = 0
  7. 7a = 0, b = 0, c = 1
  8. 8a = 0, b = 0, c = 0
5.デジタル論理:ゲート・カルノー図・フリップフロップふつう
ABCD000111100001111010111302141507160121130151140809011010

カルノー図を使って F(A, B, C, D) = Σm(0, 1, 3, 4, 5, 6, 13, 14) の最小の積和形(SOP)を求めてください。積項 N はいくつありますか?

F(A, B, C, D) = Σm(0, 1, 3, 4, 5, 6, 13, 14)
N =
6.デジタル論理:ゲート・カルノー図・フリップフロップむずかしい
FFQ0​Q0​FFQ1​Q1​FFQ2​Q2​FFQ3​Q3​CLKMOD-10

50 kHz のクロックが mod-10 カウンタを駆動します。計数 1 周期につき 1 周期を完了する最上位の出力の周波数 fout を求めてください。

fclk = 50 kHzN = 10
fout = kHz
7.整数論と合同式ふつう

オイラーのトーシェント関数 φ(26)、つまり 1 から 26 までの整数のうち 26 と互いに素なものの個数を求めてください。

n = 26 = 2·13
φ(26) =
8.整数論と合同式むずかしい

37 は素数です。フェルマーの小定理を使って 3067841 mod 37 を求めてください。

p = 37k = 67841
3067841 mod 37 =
9.アルゴリズムと計算量ふつう

クイックソートの最悪時間計算量は何ですか?

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

最短単純路は多項式時間で見つけられます。一般のグラフで 2 頂点間の最長単純路を見つけることについて、何が知られていますか?

  1. A決定不能である
  2. BNP 困難である
  3. C重みの符号を反転すればダイクストラ法で解ける
  4. D常に O(V + E) で解ける
11.データ構造ふつう

高さを辺の数で数えるとき、高さ h の完全(perfect)二分木にはいくつのノードがありますか。

  1. A2h
  2. Bh2
  3. C2h + 1
  4. D2h+1 − 1
12.データ構造むずかしい

セグメント木は一般的に何に使われますか。

  1. A各接頭辞を別々の木のノードに格納することで、文字列をアルファベット順にソートする
  2. Bグラフの辺を格納する
  3. Cスタックを実装する
  4. D区間クエリ(区間和など)と更新を O(log n) で処理する
13.グラフ理論ふつう

連結グラフに 7 個の頂点と 8 本の辺があります。全域木にするには、辺を何本k取り除く必要がありますか?

|V| = 7|E| = 8
k =
14.グラフ理論むずかしい
14612151194813ABCDEFG

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

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

テーブル a は 3 行、テーブル b は 4 行です。SELECT * FROM a CROSS JOIN b は何行を返しますか?

  1. A3
  2. B7
  3. C12
  4. D4
16.データベースと SQLむずかしい

customers LEFT JOIN orders の後、顧客ごとの注文数を数えるのに COUNT(*) ではなく COUNT(o.id) を使うのはなぜですか?

  1. ACOUNT(*) は NULL 値を含む行を無視するから
  2. B結合の後では COUNT(*) が使えないから
  3. CCOUNT(o.id) は異なる顧客だけを数えるから
  4. DCOUNT(*) は、注文のない顧客の NULL で埋められた行を 1 と数えるから
17.コンピュータネットワークふつう

NAT(ネットワークアドレス変換)の主な用途は何ですか?

  1. Aネットワークケーブルの速度を上げること
  2. Bプライベートアドレスを持つ多数のデバイスで 1 つのグローバル IP アドレスを共有すること
  3. Cローカルネットワーク上のデバイスのために、ドメイン名を IP アドレスに変換すること
  4. D2 つの拠点間のトラフィックを暗号化すること
18.コンピュータネットワークむずかしい

スライディングウィンドウプロトコルで 1 つのフレームが失われたとき、Go-Back-N と Selective Repeat はどう違いますか?

  1. Aどちらも失われたフレームを決して再送しない
  2. BGo-Back-N は失われたフレームとそれ以降のすべてを再送し、Selective Repeat は失われたものだけを再送する
  3. Cどちらもウィンドウ全体を最初から再送する
  4. DGo-Back-N は失われたフレームだけを再送し、Selective Repeat はそのフレームとそれ以降のすべてを再送する
19.IPv4 サブネット化ふつう
/?11111111111111111111100000000000ネットワーク部ホスト部

ある部署では、1 つのサブネット内に 1888 個のホストアドレスが必要です。十分な大きさとなる最長のプレフィックス長 p(最小のサブネット)はいくつですか?

1888 hosts
p =
20.IPv4 サブネット化むずかしい
最後のオクテット = 205112816403201618140211ネットワークホスト

あるホストのアドレスは 10.20.64.205/27 です。そのサブネットのブロードキャストアドレスの最後の数(第 4 オクテット)x はいくつですか?

10.20.64.205/27
x =

3溶液

1.記数法

答え: N = −48

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

重みを合計する

ほかのビットは通常の正の重みのままです。

−128 + 64 + 16 = −48

答え

N = −48
2.記数法

答え: M = 512 KiB

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

ビットとバイト

512·512·16 = 4194304 bit = 524288 B

KiB に換算する

524288/1024 = 512 KiB

答え

M = 512 KiB
3.命題論理と証明

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

論理的同値: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, b = q ∨ r

対偶

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

答え

¬(q ∨ r) → ¬¬p

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

4.命題論理と証明

答え: a = 1, b = 0, c = 1

量化子と論証:¬∀x P(x) ≡ ∃x ¬P(x)、¬∃x P(x) ≡ ∀x ¬P(x)。否定を内側へ移し、通過する量化子をすべて入れ替え、内側の式は ¬(a → b) ≡ a ∧ ¬b のような命題論理の法則で否定します。論証は、すべての前提が 1 であるどの行でも結論が 1 のとき、妥当です。前提が真で結論が偽になる行が 1 つでもあれば、それは反例であり、その論証が妥当でないことを示します。

前提と結論を行ごとに見る

a = 1, b = 1, c = 1: 1 1 | 1
a = 1, b = 1, c = 0: 1 0 | 1
a = 1, b = 0, c = 1: 1 1 | 0
a = 1, b = 0, c = 0: 1 0 | 0
a = 0, b = 1, c = 1: 1 1 | 1
a = 0, b = 1, c = 0: 1 0 | 1
a = 0, b = 0, c = 1: 0 1 | 0
a = 0, b = 0, c = 0: 1 0 | 0

反例

a = 1, b = 0, c = 1

答え

a = 1, b = 0, c = 1

この形の論証は妥当な規則のように見えますが、1 行あれば妥当でないことを示せます。

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

答え: N = 4

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

ABCD000111100001111010111302141507160121130151140809011010

1 をグループ化する

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

BC′D
BCD′
A′C′
A′B′D

最小の SOP 形

F = BC′D + BCD′ + A′C′ + A′B′D
N = 4

答え

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

答え: fout = 5 kHz

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

分周

fout = 50 kHz / 10 = 5 kHz

答え

fout = 5 kHz
7.整数論と合同式

答え: φ(26) = 12

逆元と合同式: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)。

素因数

26 = 2·13

トーシェント関数

φ(26) = φ(2)·φ(13) = 1·12 = 12

答え

φ(26) = 12
8.整数論と合同式

答え: 3067841 mod 37 = 21

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

指数を簡約する

67841 mod 36 = 17
3067841 ≡ 3017 (mod 37)

小さい冪

3017 mod 37 = 21

答え

3067841 mod 37 = 21
9.アルゴリズムと計算量

答え: B · O(n²)

これが答えになる理由

ピボットの選択が常に悪い場合(例:すでにソート済みの入力で先頭要素をピボットにする)、分割が偏り O(n²) になります。平均の場合は O(n log n) です。

答え

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

答え: B · NP 困難である

これが答えになる理由

長さ V − 1 の最長単純路はハミルトン路であり、これは NP 完全問題です。ただし有向非巡回グラフでは線形時間で解けます。

答え

B · NP 困難である
11.データ構造

答え: D · 2h+1 − 1

これが答えになる理由

1 + 2 + 4 + ... + 2h を合計すると 2h+1 − 1 になります。たとえば高さ 2 では 7 個のノードです。

答え

D · 2h+1 − 1
12.データ構造

答え: D · 区間クエリ(区間和など)と更新を O(log n) で処理する

これが答えになる理由

セグメント木は区間ごとの集約値を格納し、区間クエリと一点更新を O(log n) 時間で行えます。

答え

D · 区間クエリ(区間和など)と更新を O(log n) で処理する
13.グラフ理論

答え: k = 2

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

全域木の辺

7 − 1 = 6

取り除く辺

k = 8 − 6 = 2

答え

k = 2
14.グラフ理論

答え: W = 52

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

クラスカル法

GB (4): 取る
BC (6): 取る
GD (8): 取る
EF (9): 取る
DE (11): 取る
BD (12): 飛ばす(閉路ができる)
GE (13): 飛ばす(閉路ができる)
AB (14): 取る

重みの合計

W = 4 + 6 + 8 + 9 + 11 + 14 = 52

答え

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

答え: C · 12

これが答えになる理由

交差結合は直積を返し、3 × 4 = 12 行になります。

答え

C · 12
16.データベースと SQL

答え: D · COUNT(*) は、注文のない顧客の NULL で埋められた行を 1 と数えるから

これが答えになる理由

左外部結合は、そのような顧客について注文の列が NULL の行を 1 行返します。COUNT(o.id) はその NULL を飛ばすので、正しく 0 を返します。

答え

D · COUNT(*) は、注文のない顧客の NULL で埋められた行を 1 と数えるから
17.コンピュータネットワーク

答え: B · プライベートアドレスを持つ多数のデバイスで 1 つのグローバル IP アドレスを共有すること

これが答えになる理由

NAT はアドレス(およびポート)を書き換え、プライベートネットワークが少数のグローバルアドレスを通じてインターネットにアクセスできるようにします。

答え

B · プライベートアドレスを持つ多数のデバイスで 1 つのグローバル IP アドレスを共有すること
18.コンピュータネットワーク

答え: B · Go-Back-N は失われたフレームとそれ以降のすべてを再送し、Selective Repeat は失われたものだけを再送する

これが答えになる理由

Go-Back-N の受信側は順序の乱れたフレームを破棄するため、送信側は損失以降のすべてを繰り返さなければなりません。Selective Repeat はそれらをバッファーに保持し、欠けたものだけを要求します。

答え

B · Go-Back-N は失われたフレームとそれ以降のすべてを再送し、Selective Repeat は失われたものだけを再送する
19.IPv4 サブネット化

答え: p = 21

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

必要なホストビット数

210 − 2 = 1022 < 1888
211 − 2 = 2046 ≥ 1888 → h = 11

プレフィックス長

p = 32 − 11 = 21

答え

p = /21
20.IPv4 サブネット化

答え: x = 223

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

ブロックサイズ

25 = 32

このホストのサブネット

ネットワーク: ⌊205/32⌋·32 = 192
ブロードキャスト: 192 + 32 − 1 = 223
使えるホスト: 193 … 222

答え

x = 223

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