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

公式集、全トピックの解法の要点、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

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

N = −568 bit
U =
2.記数法むずかしい
3834 個の符号、b = ? ビット?2ᵇ⁻¹…?4?2?1

あるシステムで、3834 個の項目それぞれに同じ長さの固有の 2 進コードを割り当てます。必要なビット数 b は最小でいくつですか?

3834
b = bit
3.命題論理と証明ふつう
恒真式矛盾(恒偽式)恒真でも矛盾でもない式

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

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

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

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

カルノー図を使って F(A, B, C, D) = Σm(0, 1, 2, 5, 8, 13, 15) の最小の積和形(SOP)を求めてください。リテラル L は合計でいくつ含まれますか(プライム付きの変数も 1 つのリテラルと数えます)?

F(A, B, C, D) = Σm(0, 1, 2, 5, 8, 13, 15)
L =
6.デジタル論理:ゲート・カルノー図・フリップフロップむずかしい
TQ0​Q0​TQ1​Q1​TQ2​Q2​CLKUP

3 ビット 2 進アップカウンタ は 1(10 進数、Q = 001)から始まります。17 クロックパルスのあとの計数値 Q(10 進数)はいくつですか?

Q0 = 117n = 3
Q =
7.整数論と合同式ふつう

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

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

15x ≡ 18 (mod 21) を解いてください。最小の正の解 x を答えてください。

15x ≡ 18 (mod 21)
x =
9.アルゴリズムと計算量ふつう

O(n²) のアルゴリズムは O(n³) でもあると言うのは正しいですか?

  1. Aはい。ただし n が 100 より小さい場合に限る
  2. Bはい。Big O は上界であり、n² は n³ より速く増加しないから
  3. Cいいえ。n が大きいとき n³ は n² より小さいから
  4. Dいいえ。Big O は常に関数の正確な増加率を述べなければならないから
10.アルゴリズムと計算量むずかしい

停止問題(halting problem)が示していることはどれですか?

  1. Aすべてのプログラムはいずれ停止する
  2. B一部のプログラムは高速なコンピュータでより速く動作するので、停止するかどうかはハードウェアに依存するから
  3. Cすべてのプログラムと入力について、それが停止するかどうかを判定できるアルゴリズムは存在しない
  4. Dループは避けるべきである
11.データ構造ふつう

キー 50, 30, 70, 20, 40 をこの順に空の二分探索木に挿入します。30 の左の子は何ですか。

  1. A50
  2. B40
  3. C70
  4. D20
12.データ構造むずかしい

ブルームフィルタは「この要素は集合に含まれるか」という問いにどのように答えますか。

  1. A数値に対してのみ答えられる
  2. B偽陰性はあり得るが、偽陽性はない
  3. C常に正確な答えを返す
  4. D偽陽性はあり得るが、偽陰性はない
13.グラフ理論ふつう
ABCDEFオイラー閉路オイラー路あり、閉路なしどちらでもない

この連結グラフには、オイラー閉路、閉路でないオイラー路、またはどちらもないのうち、どれがありますか? 答えをクリックしてください。

|V| = 6|E| = 6
  1. 1オイラー閉路
  2. 2オイラー路あり、閉路なし
  3. 3どちらでもない
14.グラフ理論むずかしい
18813161714691220ABCDEFG

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

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

第三正規形(3NF)で取り除かれるのは次のうちどれですか?

  1. A複合キー
  2. B非キー属性間の推移的関数従属
  3. C原子的な値
  4. Dキーに含まれない列に対する冗長なインデックス
16.データベースと SQLむずかしい

二相ロック(2PL)が保証するのは次のうちどれですか?

  1. Aトランザクションが決して待たないこと
  2. Bロックが不要であること
  3. C競合直列化可能なスケジュール
  4. Dデッドロックが決して発生しないこと
17.コンピュータネットワークふつう

送信側がデータの送信を終えたことを示す TCP フラグはどれですか?

  1. AURG
  2. BFIN
  3. CPSH
  4. DSYN
18.コンピュータネットワークむずかしい

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

  1. A64 バイト
  2. B65,535 バイト
  3. C1500 バイト
  4. Dすべてのネットワークで 9000 バイト
19.IPv4 サブネット化ふつう
/?11111111111111111111110000000000ネットワーク部ホスト部

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

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

あるホストのアドレスは 10.20.108.61/30 です。そのネットワークアドレスの第 4 オクテット x はいくつですか?

10.20.108.61/30
x =

3溶液

1.記数法

答え: U = 200

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

反転して 1 を足す

56 = 0011 1000
反転後: 1100 0111
+1 → 1100 1000

符号なしとして読む

1100 1000₂ = 256 − 56 = 200

答え

U = 200
2.記数法

答え: b = 12 bit

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

2 のべき乗

211 = 2048 < 3834
212 = 4096 ≥ 3834

答え

b = 12
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)。

真理値表を行ごとに見る

a = 1, c = 1: c ∧ a = 1, (c ∧ a) → c = 1, ¬((c ∧ a) → c) = 0
a = 1, c = 0: c ∧ a = 0, (c ∧ a) → c = 1, ¬((c ∧ a) → c) = 0
a = 0, c = 1: c ∧ a = 0, (c ∧ a) → c = 1, ¬((c ∧ a) → c) = 0
a = 0, c = 0: c ∧ a = 0, (c ∧ a) → c = 1, ¬((c ∧ a) → c) = 0

分類

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

答え

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

答え: N = 10

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

列

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

p で分ける

p = 1: 4
p = 0: 6
N = 4 + 6 = 10

答え

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

答え: L = 12

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

ABCD000111100001111010110312041507060121131150141809011010

1 をグループ化する

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

B′C′D′
A′C′D
A′B′D′
ABD

最小の SOP 形

F = B′C′D′ + A′C′D + A′B′D′ + ABD
L = 12

答え

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

答え: Q = 2

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

完全な周期

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

17 = 2·8 + 1

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

Q = (1 + 1) mod 8 = 2
Q = 010₂

答え

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

答え: 49−1 mod 53 = 13

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

r = 53, t = 0
r = 49, q = 1, t = 1
r = 4, q = 12, t = −1
r = 1, q = 4, t = 13

逆行列

1 ≡ 13·49 (mod 53)
x = 13
確認: 49·13 = 637 = 12·53 + 1

答え

49−1 mod 53 = 13
8.整数論と合同式

答え: x = 4

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

gcd で割る

gcd(15, 21) = 3
5x ≡ 6 (mod 7)

簡約した合同式を解く

5−1 ≡ 3 (mod 7) → x ≡ 4 (mod 7)

21 を法とする解

x ∈ {4, 11, 18}
x = 4

答え

x = 4
9.アルゴリズムと計算量

答え: B · はい。Big O は上界であり、n² は n³ より速く増加しないから

これが答えになる理由

Big O は上界なので、この記述は正しいですがタイトではありません。正確な増加率を述べるのは Θ(n²) です。

答え

B · はい。Big O は上界であり、n² は n³ より速く増加しないから
10.アルゴリズムと計算量

答え: C · すべてのプログラムと入力について、それが停止するかどうかを判定できるアルゴリズムは存在しない

これが答えになる理由

Turing は停止問題が決定不能(undecidable)であることを示しました。判定器が存在すると仮定すると、その逆の動作をするプログラムとの間で矛盾が生じます。

答え

C · すべてのプログラムと入力について、それが停止するかどうかを判定できるアルゴリズムは存在しない
11.データ構造

答え: D · 20

これが答えになる理由

20 は 50 より小さく 30 より小さいので、30 の左の子になります。40 は 30 の右の子になります。

答え

D · 20
12.データ構造

答え: D · 偽陽性はあり得るが、偽陰性はない

これが答えになる理由

ある要素に対応するビットのどれかが 0 なら確実に存在せず、すべて 1 ならおそらく存在します。ブルームフィルタは精度と引き換えに非常に少ないメモリで済みます。

答え

D · 偽陽性はあり得るが、偽陰性はない
13.グラフ理論

答え: オイラー路あり、閉路なし

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

次数

deg(A) = 1, deg(B) = 2, deg(C) = 2, deg(D) = 2, deg(E) = 4, deg(F) = 1

奇数次数の頂点

A, F → 2
オイラー路あり、閉路なし

答え

オイラー路あり、閉路なし

オイラー路は、一方の奇数次数の頂点から始まり、他方で終わります。

14.グラフ理論

答え: W = 67

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

クラスカル法

EF (6): 取る
BC (8): 取る
GB (9): 取る
GD (12): 取る
BD (13): 飛ばす(閉路ができる)
DF (14): 取る
CE (16): 飛ばす(閉路ができる)
DE (17): 飛ばす(閉路ができる)
AC (18): 取る

重みの合計

W = 6 + 8 + 9 + 12 + 14 + 18 = 67

答え

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

答え: B · 非キー属性間の推移的関数従属

これが答えになる理由

3NF では、非キー属性が別の非キー属性に従属しません。たとえば、都市が郵便番号に従属するのに都市と郵便番号の両方を格納する場合がこれに当たります。

答え

B · 非キー属性間の推移的関数従属
16.データベースと SQL

答え: C · 競合直列化可能なスケジュール

これが答えになる理由

2PL は直列化可能性を保証しますが、デッドロックは依然として起こりうるため、検出または防止する必要があります。

答え

C · 競合直列化可能なスケジュール
17.コンピュータネットワーク

答え: B · FIN

これが答えになる理由

各側は送るデータがなくなると FIN を送り、相手側がそれを確認応答します。SYN はコネクションを開くためのもので、RST はコネクションを中止します。

答え

B · FIN
18.コンピュータネットワーク

答え: C · 1500 バイト

これが答えになる理由

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

答え

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

答え: p = 22

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

必要なホストビット数

29 − 2 = 510 < 798
210 − 2 = 1022 ≥ 798 → h = 10

プレフィックス長

p = 32 − 10 = 22

答え

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

答え: x = 60

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

ブロックサイズ

22 = 4

このホストのサブネット

ネットワーク: ⌊61/4⌋·4 = 60
ブロードキャスト: 60 + 4 − 1 = 63
使えるホスト: 61 … 62

答え

x = 60

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