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

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

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

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

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

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

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

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

前提 p → r; ¬r が与えられています。そこから導かれる結論はどれですか? クリックしてください。

p → r¬r
  1. 1¬p
  2. 2¬p ∧ r
  3. 3r
  4. 4p
5.デジタル論理:ゲート・カルノー図・フリップフロップふつう
ABCD000111100001111000011302041507060120131151140809111010

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

F(A, B, C, D) = Σm(3, 5, 11, 14, 15)
N =
6.デジタル論理:ゲート・カルノー図・フリップフロップむずかしい
DQ0​Q0​DQ1​Q1​DQ2​Q2​CLKJOHNSON

ジョンソン(ツイストリング)カウンタが 3 個の D フリップフロップでつくられ、反転した最後の出力が最初の入力に戻されていて、すべて 0 から始まります。いくつの異なる状態 N を通りますか?

n = 3
N =
7.整数論と合同式ふつう

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

a = 23n = 71
23−1 mod 71 =
8.整数論と合同式むずかしい
mc = me​ mod n506m = cd​ mod n?(n, e) = (1247, 13)d

ある RSA 鍵は p = 29、q = 43、e = 13 を使います。暗号文 c = 506 を復号して、メッセージ m を求めてください。

p = 29q = 43e = 13c = 506
m =
9.アルゴリズムと計算量ふつう

漸化式 T(n) = T(n/2) + O(1) の解は何ですか?

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

動的計画法で解く 0/1 ナップサック問題は O(nW) 時間かかります。これが擬多項式(pseudo-polynomial)と呼ばれるのはなぜですか?

  1. An が常に小さいから
  2. BW は数値なので、実行時間は W を書くのに使うビット数に対して指数的になるから
  3. CW = 0 の場合にしか動作しないから
  4. Dアルゴリズムが乱択(randomised)で、実行時間が入力ごとに変わるから
11.データ構造ふつう

ある二分木の根は 1 で、左の子が 2、右の子が 3 です。ノード 2 の子は 4(左)と 5(右)です。行きがけ順の走査はどれですか。

  1. A4 5 2 3 1
  2. B1 2 3 4 5
  3. C1 2 4 5 3
  4. D4 2 5 1 3
12.データ構造むずかしい

データベースやファイルシステムで B 木が使われるのはなぜですか。

  1. Aどの配列よりもメモリ使用量が少ないので、索引全体が常に主記憶に収まるから
  2. Bデータをソートせずに格納するから
  3. C分岐数が大きいため木が浅く保たれ、遅いディスク読み込みが減るから
  4. D再平衡化が不要だから
13.グラフ理論ふつう

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

K7
H =
14.グラフ理論むずかしい
15129215135315141ABCDEFG

ダイクストラ法を使って、重み付きグラフで A から F までの最短経路の長さd(F)を求めてください。

始点:A終点:F
d(F) =
15.データベースと SQLふつう

SELECT name, CASE WHEN grade >= 5.5 THEN 'pass' ELSE 'fail' END FROM results は何を返しますか?

  1. A合格した学生だけ
  2. B合格した学生と不合格の学生の人数
  3. CSELECT では CASE が使えないためエラー
  4. D成績に応じて 'pass' か 'fail' のラベルが付いた各名前
16.データベースと SQLむずかしい

SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales は何を計算しますか?

  1. A1 日あたりの平均 amount
  2. Bすべての行に全 amount の合計
  3. Cday の順に並べた amount の累計
  4. Dその日の合計だけを持つ、1 日 1 行
17.コンピュータネットワークふつう

192.168.0.0/24 と 192.168.1.0/24 の両方を集約する 1 つのプレフィックスはどれですか?

  1. A192.168.0.0/25
  2. B192.168.0.0/23
  3. C192.168.1.0/23
  4. D192.168.0.0/22
18.コンピュータネットワークむずかしい

DNS キャッシュポイズニング攻撃の目的は何ですか?

  1. Aサーバーをトラフィックで過負荷にして、問い合わせに応答できなくすること
  2. Bリゾルバーにドメインの偽の IP アドレスを保存させること
  3. CWi-Fi のパスワードを盗むこと
  4. DDNS サーバーを削除すること
19.IPv4 サブネット化ふつう
/22 → /2711111111111111111111111111100000ネットワーク部ホスト部

ネットワーク 10.167.124.0/22 を、プレフィックス /27 の等しいサブネットに分割します。サブネットはいくつ N ありますか?

10.167.124.0/22/27
N =
20.IPv4 サブネット化むずかしい
最後のオクテット = 218112816403211618041201ネットワークホスト

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

10.20.194.218/30
x =

3溶液

1.記数法

答え: N = −56

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

重みを合計する

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

−128 + 64 + 8 = −56

答え

N = −56
2.記数法

答え: R = 24

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

ビットごとに

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

1100 0110 >> 3
= 0001 1000

結果の値

0001 1000₂ = 24

答え

R = 24
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)。

真理値表を行ごとに見る

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

分類

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

答え

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

答え: ¬p

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

すべての前提が真の行

p = 0, r = 0: ¬p = 1, ¬p ∧ r = 0, r = 0, p = 0

結論

¬p (否定式(modus tollens))

答え

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

答え: N = 5

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

ABCD000111100001111000011302041507060120131151140809111010

0 をグループ化する

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

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

最小の POS 形

F = (C + D)(B + D)(B + C)(A′ + C)(A + B′ + C′)
N = 5

答え

N = 5

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

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

答え: N = 6

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

3 個のフリップフロップの系列

000 → 100 → 110 → 111 → 011 → 001

状態の数

N = 6

答え

N = 6
7.整数論と合同式

答え: 23−1 mod 71 = 34

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

r = 71, t = 0
r = 23, q = 3, t = 1
r = 2, q = 11, t = −3
r = 1, q = 2, t = 34

逆行列

1 ≡ 34·23 (mod 71)
x = 34
確認: 23·34 = 782 = 11·71 + 1

答え

23−1 mod 71 = 34
8.整数論と合同式

答え: m = 908

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

秘密指数

n = 1247, φ(n) = 1176
d = 13−1 mod 1176 = 181

反復二乗法で復号する

181 = 128 + 32 + 16 + 4 + 1
5061 ≡ 506 (mod 1247)
5062 ≡ 401 (mod 1247)
5064 ≡ 1185 (mod 1247)
5068 ≡ 103 (mod 1247)
50616 ≡ 633 (mod 1247)
50632 ≡ 402 (mod 1247)
50664 ≡ 741 (mod 1247)
506128 ≡ 401 (mod 1247)
506181 ≡ 506·1185·633·402·401 ≡ 908 (mod 1247)

メッセージ

m = 908
確認: 90813 mod 1247 = 506

答え

m = 908
9.アルゴリズムと計算量

答え: A · O(log n)

これが答えになる理由

問題は各ステップで半分になり、各ステップの作業量は定数なので、ステップ数は約 log₂ n です。

答え

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

答え: B · W は数値なので、実行時間は W を書くのに使うビット数に対して指数的になるから

これが答えになる理由

実行時間は W の値に対しては多項式ですが、その長さ(log W ビット)に対しては指数的です。0/1 ナップサック問題は NP 完全です。

答え

B · W は数値なので、実行時間は W を書くのに使うビット数に対して指数的になるから
11.データ構造

答え: C · 1 2 4 5 3

これが答えになる理由

行きがけ順では 1、次にその左部分木(2, 4, 5)、次に 3 を訪問します。他の選択肢は通りがけ順、帰りがけ順、レベル順です。

答え

C · 1 2 4 5 3
12.データ構造

答え: C · 分岐数が大きいため木が浅く保たれ、遅いディスク読み込みが減るから

これが答えになる理由

B 木は 1 つのノードに多くのキーを格納するため高さが小さく、1 回の検索に必要なブロック読み込みが少なくて済みます。B+ 木はさらに範囲走査のために葉同士をつなぎます。

答え

C · 分岐数が大きいため木が浅く保たれ、遅いディスク読み込みが減るから
13.グラフ理論

答え: H = 360

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

数える

H = (7 − 1)!/2 = 720/2 = 360

答え

H = 360
14.グラフ理論

答え: d(F) = 22

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

ダイクストラ法をラウンドごとに

各行:確定した頂点、その最終距離、距離が改善される隣接頂点。

A (0): B: 15, C: 12
C (12): E: 27, G: 26
B (15): D: 17
D (17): F: 22, G: 18
G (18)
F (22): E: 25
E (25)

最短経路

A → B → D → F
d(F) = 22

答え

d(F) = 22
15.データベースと SQL

答え: D · 成績に応じて 'pass' か 'fail' のラベルが付いた各名前

これが答えになる理由

CASE 式は行ごとに条件を評価し、一致する値を返すため、すべての行にラベルが付きます。

答え

D · 成績に応じて 'pass' か 'fail' のラベルが付いた各名前
16.データベースと SQL

答え: C · day の順に並べた amount の累計

これが答えになる理由

ORDER BY があって明示的なフレームがない場合、ウィンドウは最初の行から現在の行(とその同順位の行)までとなり、累積和が得られます。

答え

C · day の順に並べた amount の累計
17.コンピュータネットワーク

答え: B · 192.168.0.0/23

これが答えになる理由

0 と 1 は第 3 オクテットの最後のビット以外をすべて共有するので、プレフィックスを 1 ビット短くした 192.168.0.0 から始まる /23 が両方をちょうどカバーします。

答え

B · 192.168.0.0/23
18.コンピュータネットワーク

答え: B · リゾルバーにドメインの偽の IP アドレスを保存させること

これが答えになる理由

ポイズニングはリゾルバーのキャッシュに偽造レコードを挿入します。DNSSEC は署名を追加し、リゾルバーがレコードを検証できるようにします。

答え

B · リゾルバーにドメインの偽の IP アドレスを保存させること
19.IPv4 サブネット化

答え: N = 32

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).

借りたビット

27 − 22 = 5

サブネット数

N = 25 = 32

答え

N = 32

各 /27 サブネットには 25 − 2 = 30 個の使えるホストがあります。

20.IPv4 サブネット化

答え: x = 216

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

ブロックサイズ

22 = 4

このホストのサブネット

ネットワーク: ⌊218/4⌋·4 = 216
ブロードキャスト: 216 + 4 − 1 = 219
使えるホスト: 217 … 218

答え

x = 216

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