พื้นฐานวิทยาการคอมพิวเตอร์: ชุดสรุปเร่งรัด

สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 20 ข้อ พร้อมเฉลยละเอียดไว้ท้ายเล่ม

โจทย์ใหม่กลับไปที่รายวิชา

ในหน้าต่างพิมพ์ ให้เลือก “บันทึกเป็น PDF” เพื่อเก็บสำเนาไว้ในอุปกรณ์ของคุณ

1สูตรและวิธีทำ

ระบบเลข

ค่าประจำตำแหน่ง
ฐานสอง 2k, ฐานแปด 8k, ฐานสิบหก 16k
เป็นเลขฐานสิบ
Σ dk·bk
จากเลขฐานสิบ
หารด้วยฐาน อ่านเศษจากล่างขึ้นบน
ฐานสิบหก ↔ ฐานสอง
เลขฐานสิบหกหนึ่งหลัก = 4 บิต
two’s complement
กลับบิตแล้วบวก 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)
โมดัสโพเนนส์ โมดัสโทลเลนส์
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ⁿ สถานะ; มอด N: n ที่น้อยที่สุดที่ 2ⁿ ≥ N; fout = fclk/N
ตัวนับริปเปิล
fmax = 1/(n·tpd)
ตัวนับริงและตัวนับจอห์นสัน
n และ 2n สถานะ

วิธีการ

  1. สำหรับวงจร ให้ทำจากอินพุตไปถึงเอาต์พุตทีละเกตและเขียนค่าบนทุกเส้น หรือเขียนนิพจน์ของมันแล้วเติมตารางค่าความจริง
  2. สำหรับการทำให้ง่าย ให้ใส่ 1 (และค่าไม่สนใจเป็น X) ลงในแผนที่คาร์โนห์ที่มีแถวและคอลัมน์เรียงตามรหัสเกรย์: 00, 01, 11, 10
  3. ครอบคลุม 1 ด้วยกลุ่ม 1, 2, 4, 8 หรือ 16 เซลล์ให้น้อยที่สุดและใหญ่ที่สุดเท่าที่เป็นไปได้ โดยพันข้ามขอบ แต่ละกลุ่มคือหนึ่งพจน์ผลคูณที่ประกอบด้วยตัวแปรที่คงที่ จัดกลุ่ม 0 สำหรับรูป POS
  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. สำหรับ ห.ร.ม. ให้หารซ้ำด้วยขั้นตอนวิธีของยูคลิด เศษที่ไม่เป็นศูนย์ตัวสุดท้ายคือ ห.ร.ม.
  3. สำหรับตัวผกผัน ให้ทำขั้นตอนวิธีแบบขยาย และเก็บสัมประสิทธิ์ของ a ถ้าเป็นลบให้บวก n
  4. แก้ a·x ≡ b โดยคูณด้วย a⁻¹ รวมสองความสอดคล้องโดยเขียน x = r₁ + m₁k
  5. สำหรับเลขยกกำลัง ให้เขียนเลขชี้กำลังเป็นเลขฐานสองแล้วยกกำลังสองซ้ำ ใน 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. สำหรับโจทย์ออยเลอร์ ให้ตรวจว่ากราฟเชื่อมโยงกัน และนับจุดยอดที่มีดีกรีคี่
  3. สำหรับต้นไม้ ให้ใช้ว่ามี n − 1 เส้นเชื่อม และเล็มมาการจับมือ
  4. สำหรับไดก์สตรา ให้เก็บตารางระยะทางชั่วคราว และยืนยันจุดยอดที่ยังไม่ยืนยันซึ่งมีค่าน้อยที่สุดในแต่ละรอบ
  5. สำหรับต้นไม้ทอดข้ามค่าน้อยที่สุด ให้เรียงเส้นเชื่อมตามน้ำหนักและข้ามทุกเส้นที่ทำให้เกิดวัฏจักร (ครัสคัล) หรือขยายต้นไม้ต้นเดียวจากจุดยอดเริ่มต้น (พริม)

การแบ่งซับเน็ต IPv4

โฮสต์ต่อซับเน็ต
2(32 − prefix) − 2 (/31: 2, /32: 1)
ขนาดบล็อก
256 − (mask octet)
ที่อยู่เครือข่าย
IP AND มาสก์
ที่อยู่บรอดคาสต์
IP OR (NOT mask): บิตโฮสต์ทั้งหมดเป็น 1
ซับเน็ตจาก n บิตที่ยืม
2n

2โจทย์ฝึก

1.ระบบเลขปานกลาง
ค่าประจำตำแหน่งใน two's complement1−12806403201618041201

รูปแบบ 8 บิต 1000 1010 เก็บจำนวนเต็มมีเครื่องหมายแบบ two's complement ค่าของมัน N ในเลขฐานสิบคือเท่าใด

1000 10108 bit
N =
2.ระบบเลขยาก
32 บิต แบบไม่มีเครื่องหมาย, N = ?????????????????????????????????

จำนวนเต็มไม่มีเครื่องหมายที่มากที่สุด N ที่ใส่ได้ใน 32 บิตคือเท่าใด

32 bit
N =
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
r ∧ (p → q)(r → p) → qr → (p → q)(r → q) ∧ (p → q)

สูตรใดสมมูลเชิงตรรกะกับ (r ∧ p) → q ให้คลิกสูตรนั้น

(r ∧ p) → q
  1. 1r ∧ (p → q)
  2. 2(r → p) → q
  3. 3r → (p → q)
  4. 4(r → q) ∧ (p → q)
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก

ตารางค่าความจริง 16 แถวมีกี่แถวที่ทำให้ (¬c ∨ a) ↔ (¬(¬b ∧ d) ↔ (a ↔ b)) เป็นจริง เรียกจำนวนนี้ว่า N

(¬c ∨ a) ↔ (¬(¬b ∧ d) ↔ (a ↔ b))
N =
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABC000111100101324576

จงทำ F = A′C′ + ABC + B′C′ + A′B′C′ ให้เป็นรูปผลบวกของผลคูณที่น้อยที่สุด นิพจน์ที่ทำให้ง่ายแล้วมีกี่ลิเทอรัล L

F = A′C′ + ABC + B′C′ + A′B′C′
L =
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKRING

ตัวนับริง 4 บิต Q₃Q₂Q₁Q₀ เริ่มที่ 1100 ทุกขอบสัญญาณนาฬิกา บิตเลื่อนไปทางขวาหนึ่งตำแหน่ง (Q₃ → Q₂ → Q₁ → Q₀) และ Q₃ รับค่า Q₀ จงหาสถานะ Q = Q₃Q₂Q₁Q₀ เป็นเลขฐานสิบหลัง 5 ขอบสัญญาณนาฬิกา

Q₃Q₂Q₁Q₀ = 11005
Q =
7.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ปานกลาง

จงแก้ 22x ≡ 30 (mod 39) ให้คำตอบ x ที่ 0 < x < 39

22x ≡ 30 (mod 39)
x =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก

ใช้การยกกำลังสองซ้ำเพื่อหา 5795 mod 64

a = 57k = 95n = 64
5795 mod 64 =
9.อัลกอริทึมและความซับซ้อนปานกลาง

ความซับซ้อนเชิงเวลาของการคูณเมทริกซ์ n × n สองเมทริกซ์ด้วยลูปสามชั้นมาตรฐานคือเท่าใด

  1. AO(n²)
  2. BO(n)
  3. CO(n³)
  4. DO(n² log n)
10.อัลกอริทึมและความซับซ้อนยาก

ปัญหา 0/1 knapsack ที่แก้ด้วยการโปรแกรมพลวัตใช้เวลา O(nW) เหตุใดจึงเรียกว่าเวลาแบบกึ่งพหุนาม (pseudo-polynomial)

  1. Aเพราะ n มีค่าน้อยเสมอ
  2. Bเพราะใช้ได้เฉพาะ W = 0
  3. CW เป็นตัวเลข เวลาจึงเป็นเอกซ์โพเนนเชียลเมื่อเทียบกับจำนวนบิตที่ใช้เขียน W
  4. Dเพราะอัลกอริทึมเป็นแบบสุ่มและเวลาทำงานแปรผันไปตามอินพุตแต่ละครั้ง
11.โครงสร้างข้อมูลปานกลาง

ในคิววงกลมที่เก็บในอาร์เรย์ความจุ n ตำแหน่งถัดจากดัชนี i คำนวณอย่างไร

  1. Ai + 1
  2. B(i − 1) mod n
  3. C(i + 1) mod n
  4. D2i + 1
12.โครงสร้างข้อมูลยาก

คู่การท่องใดกำหนดต้นไม้ทวิภาคที่มีคีย์ไม่ซ้ำได้เพียงแบบเดียวเสมอ

  1. Apreorder และ inorder
  2. Blevel-order เพียงอย่างเดียว
  3. Cpreorder และ postorder
  4. Dpreorder เพียงอย่างเดียว
13.ทฤษฎีกราฟปานกลาง

ต้นไม้มี 3 จุดยอดดีกรี 4, 4 จุดยอดดีกรี 2 และจุดยอดอื่นทั้งหมดเป็นใบ (ดีกรี 1) มีกี่ใบ L

3 × deg 44 × deg 2
L =
14.ทฤษฎีกราฟยาก
ABCDEF

มีวอล์กปิดความยาว 2 ที่เริ่มและจบที่ F กี่วอล์ก วอล์กอาจซ้ำจุดยอดและเส้นเชื่อมได้ เรียกจำนวนนี้ว่า N

M = เมทริกซ์ประชิดL = 2
N =
15.ฐานข้อมูลและ SQLปานกลาง

WHERE EXISTS (subquery) เป็นจริงสำหรับแถวเมื่อใด?

  1. Aเมื่อซับคิวรีคืนหนึ่งแถวพอดี
  2. Bเมื่อซับคิวรีไม่คืนค่า NULL
  3. Cเมื่อซับคิวรีคืนอย่างน้อยหนึ่งแถว
  4. Dเมื่อซับคิวรีคืนตัวเลขที่มากกว่าศูนย์
16.ฐานข้อมูลและ SQLยาก

ตาราง employee(emp_id, dept_id, dept_name) มีคีย์ emp_id และ dept_id → dept_name ข้อใดถูกต้อง?

  1. Aไม่อยู่ใน 1NF
  2. Bไม่อยู่ใน 2NF
  3. Cอยู่ใน BCNF จึงอยู่ใน 3NF ด้วย
  4. Dอยู่ใน 2NF แต่ไม่อยู่ใน 3NF
17.เครือข่ายคอมพิวเตอร์ปานกลาง

เกตเวย์เริ่มต้น (default gateway) บนโฮสต์มีบทบาทอะไร?

  1. Aเป็นเราเตอร์ที่ใช้สำหรับทราฟฟิกไปยังเครือข่ายอื่น
  2. Bเป็นพอร์ตสวิตช์ที่โฮสต์เชื่อมต่ออยู่
  3. Cเป็นผู้กำหนดที่อยู่ MAC
  4. Dเป็นเซิร์ฟเวอร์ DNS
18.เครือข่ายคอมพิวเตอร์ยาก

เหตุใด TCP จึงเลือกหมายเลขลำดับเริ่มต้นที่คาดเดาไม่ได้สำหรับแต่ละการเชื่อมต่อ?

  1. Aเพื่อบีบอัดข้อมูลได้มีประสิทธิภาพขึ้น
  2. Bเพื่อเลือกเส้นทางที่ดีที่สุดไปยังปลายทางสำหรับเซกเมนต์ของการเชื่อมต่อนั้น
  3. Cเพื่อหลีกเลี่ยงความสับสนกับเซกเมนต์เก่าและทำให้แทรกเซกเมนต์ปลอมได้ยากขึ้น
  4. Dเพื่อเข้ารหัสเพย์โหลดของแต่ละเซกเมนต์
19.การแบ่งซับเน็ต IPv4ปานกลาง
/24 → /2511111111111111111111111110000000บิตเครือข่ายบิตโฮสต์

เครือข่าย 192.168.73.0/24 ถูกแบ่งเป็นซับเน็ต /25 หมายเลข 1, 2, 3, … จากแอดเดรสต่ำสุด (ซับเน็ต 1 เริ่มที่ .0) ออกเท็ตที่สี่ x ของเน็ตเวิร์กแอดเดรสของซับเน็ต 2 คือเท่าใด

192.168.73.0/24/25ซับเน็ต 2 (ซับเน็ต 1 เริ่มที่ .0)
x =
20.การแบ่งซับเน็ต IPv4ยาก
ออคเต็ตสุดท้าย = 156112806403211618140201เครือข่ายโฮสต์

โฮสต์มีที่อยู่ 10.20.147.156/30 ออคเต็ตที่สี่ x ของที่อยู่โฮสต์ที่ใช้ได้สุดท้ายในซับเน็ตคือเท่าใด

10.20.147.156/30
x =

3สารละลาย

1.ระบบเลข

คำตอบ: N = −118

ระบบเลขตามตำแหน่ง: แต่ละหลักมีค่าเท่ากับค่าของหลักนั้นคูณกำลังของฐาน ในเลขฐานสองแต่ละตำแหน่งมีค่า 1, 2, 4, 8, 16, …; ในเลขฐานสิบหก 1, 16, 256, … โดย A–F แทน 10–15 ในระบบ two's complement 8 บิต บิตซ้ายสุดมีค่า −128 แทนที่จะเป็น +128 ซึ่งเป็นวิธีเก็บจำนวนลบ

บวกค่าประจำตำแหน่ง

บิตอื่นยังคงมีค่าเป็นบวกตามปกติ

−128 + 8 + 2 = −118

คำตอบ

N = −118
2.ระบบเลข

คำตอบ: N = 4.295 × 10⁹

ระบบเลขตามตำแหน่ง: แต่ละหลักมีค่าเท่ากับค่าของหลักนั้นคูณกำลังของฐาน ในเลขฐานสองแต่ละตำแหน่งมีค่า 1, 2, 4, 8, 16, …; ในเลขฐานสิบหก 1, 16, 256, … โดย A–F แทน 10–15 ในระบบ two's complement 8 บิต บิตซ้ายสุดมีค่า −128 แทนที่จะเป็น +128 ซึ่งเป็นวิธีเก็บจำนวนลบ

ค่าที่มากที่สุด

232 − 1 = 4294967295

คำตอบ

N = 4294967295
3.ตรรกศาสตร์ประพจน์และการพิสูจน์

คำตอบ: r → (p → q)

ความสมมูลเชิงตรรกะ: สูตรสองสูตรสมมูลกัน (≡) เมื่อมีค่าเท่ากันทุกแถวของตารางค่าความจริง ซ้ำซ้อน (tautology) เป็น 1 ทุกแถว ขัดแย้ง (contradiction) เป็น 0 ทุกแถว และ contingency ไม่ใช่ทั้งสองอย่าง กฎที่มีประโยชน์: กฎของเดอมอร์แกน ¬(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 ∧ b) → c ≡ a → (b → c) ทั้งสองเป็น 0 เฉพาะเมื่อ a = 1, b = 1 และ c = 0
(r ∧ p) → q ≡ r → (p → q)

ตรวจสอบด้วยตารางค่าความจริง

p = 1, q = 1, r = 1: 1 | 1 1 1 1
p = 1, q = 1, r = 0: 1 | 0 1 1 1
p = 1, q = 0, r = 1: 0 | 0 0 0 0
p = 1, q = 0, r = 0: 1 | 0 0 1 0
p = 0, q = 1, r = 1: 1 | 1 1 1 1
p = 0, q = 1, r = 0: 1 | 0 1 1 1
p = 0, q = 0, r = 1: 1 | 1 1 1 0
p = 0, q = 0, r = 0: 1 | 0 0 1 1

คำตอบ

r → (p → q)

คอลัมน์หลังเส้นคั่นคือตัวเลือกตามลำดับที่แสดง

4.ตรรกศาสตร์ประพจน์และการพิสูจน์

คำตอบ: N = 10

ตารางค่าความจริง: สูตรที่มีตัวแปรต่างกัน n ตัวมี 2ⁿ แถว หนึ่งแถวต่อทุกชุดของค่าความจริง (1 = จริง, 0 = เท็จ) ทำจากด้านในออกมาและให้ทุกประพจน์ย่อยมีคอลัมน์ของตัวเอง ¬a กลับค่า a ∧ b เป็น 1 เฉพาะเมื่อทั้งสองเป็น 1 a ∨ b เป็น 0 เฉพาะเมื่อทั้งสองเป็น 0 a → b เป็น 0 เฉพาะเมื่อ a = 1 และ b = 0 a ↔ b เป็น 1 เมื่อทั้งสองข้างเท่ากัน

คอลัมน์

¬c; ¬c ∨ a; ¬b; ¬b ∧ d; ¬(¬b ∧ d); a ↔ b; ¬(¬b ∧ d) ↔ (a ↔ b); (¬c ∨ a) ↔ (¬(¬b ∧ d) ↔ (a ↔ b))

แยกตาม a

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

คำตอบ

N = 10
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อป

คำตอบ: L = 7

พีชคณิตแบบบูล: กฎที่ทำให้นิพจน์ง่ายขึ้นได้แก่ X + X′ = 1 และ X·X′ = 0, X + X = X, การดูดกลืน X + X·Y = X, กฎการรวม X·Y + X·Y′ = X, X + X′Y = X + Y และทฤษฎีบทฉันทามติ XY + X′Z + YZ = XY + X′Z กฎของเดอมอร์แกนเปลี่ยน (X·Y)′ เป็น X′ + Y′ และ (X + Y)′ เป็น X′·Y′ แผนที่คาร์โนห์ใช้กฎเหล่านี้ในรูปภาพ: ทุกกลุ่มของสองเซลล์ที่อยู่ติดกันคือการใช้ XY + XY′ = X หนึ่งครั้ง

มินเทอมของนิพจน์

A′C′ → m(0, 2)
ABC → m(7)
B′C′ → m(0, 4)
A′B′C′ → m(0)
ABC00011110011001031214051706

จัดกลุ่มและอ่านค่า

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

นับลิเทอรัล

L = 7

คำตอบ

L = 7
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อป

คำตอบ: Q = 6

ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา D คัดลอกอินพุต (Q⁺ = D); T สลับค่าเมื่อ T = 1; JK คงค่าสำหรับ 00 รีเซ็ตสำหรับ 01 เซตสำหรับ 10 และสลับค่าสำหรับ 11 ตัวนับฐานสอง n บิตมี 2ⁿ สถานะและนับมอดูโล 2ⁿ ตัวนับมอด N นับ 0, 1, …, N − 1 แล้ววนกลับเป็น 0 และต้องใช้ฟลิปฟล็อปจำนวน n ที่น้อยที่สุดที่ 2ⁿ ≥ N แต่ละภาคของตัวนับริปเปิลลดความถี่ลงครึ่งหนึ่ง ดังนั้นเอาต์พุตสุดท้ายของตัวนับมอด N ทำงานที่ fclk/N ตัวนับจอห์นสันที่มีฟลิปฟล็อป n ตัวมี 2n สถานะ ตัวนับริงมี n

สถานะหลังทุกขอบ

1100 → 0110 → 0011 → 1001 → 1100 → 0110

ค่าฐานสิบ

0110₂ = 6

คำตอบ

Q = 6
7.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์

คำตอบ: x = 12

ตัวผกผันและความสอดคล้อง: a มีตัวผกผันมอดูโล n เมื่อ gcd(a, n) = 1 เท่านั้น ขั้นตอนวิธีของยูคลิดแบบขยายเขียน 1 = s·n + t·a แล้ว a⁻¹ ≡ t (mod n) ความสอดคล้อง a·x ≡ b (mod n) ที่ gcd(a, n) = 1 มีคำตอบ x ≡ a⁻¹·b ความสอดคล้องสองข้อ x ≡ r₁ (mod m₁) และ x ≡ r₂ (mod m₂) ที่มอดูลัสเป็นจำนวนเฉพาะสัมพัทธ์กันมีคำตอบเดียวมอดูโล m₁·m₂ (ทฤษฎีบทเศษเหลือของจีน) φ(n) ของออยเลอร์นับจำนวนตั้งแต่ 1 ถึง n ที่เป็นจำนวนเฉพาะสัมพัทธ์กับ n: φ(n) = n·∏(1 − 1/p)

ตัวผกผันของ 22

r = 39, t = 0
r = 22, q = 1, t = 1
r = 17, q = 1, t = −1
r = 5, q = 3, t = 2
r = 2, q = 2, t = −7
r = 1, q = 2, t = 16
22−1 ≡ 16 (mod 39)

แก้สมการ

x ≡ 16·30 = 480 ≡ 12 (mod 39)
ตรวจสอบ: 22·12 = 264 ≡ 30 (mod 39)

คำตอบ

x = 12
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์

คำตอบ: 5795 mod 64 = 9

เลขยกกำลังมอดูลาร์และ RSA: คำนวณ aᵏ mod n ด้วยการยกกำลังสองซ้ำ: เขียน k เป็นเลขฐานสอง ยกกำลังสอง ลดค่าหลังทุกขั้นตอน และคูณเลขยกกำลังที่บิตเป็น 1 แฟร์มา: aᵖ⁻¹ ≡ 1 (mod p) สำหรับจำนวนเฉพาะ p ที่หาร a ไม่ลงตัว ดังนั้นลดเลขชี้กำลังมอดูโล 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

เลขชี้กำลังฐานสอง

95 = 10111112 = 64 + 16 + 8 + 4 + 2 + 1

การยกกำลังสองซ้ำ

571 ≡ 57 (mod 64)
572 ≡ 49 (mod 64)
574 ≡ 33 (mod 64)
578 ≡ 1 (mod 64)
5716 ≡ 1 (mod 64)
5732 ≡ 1 (mod 64)
5764 ≡ 1 (mod 64)

คูณเลขยกกำลังที่ต้องใช้

5795 ≡ 57·49·33·1·1·1 ≡ 9 (mod 64)

คำตอบ

5795 mod 64 = 9
9.อัลกอริทึมและความซับซ้อน

คำตอบ: C · O(n³)

เหตุผลที่เป็นคำตอบนี้

มี n² ช่องและแต่ละช่องต้องคูณ n ครั้ง ได้ n³ การดำเนินการ

คำตอบ

C · O(n³)
10.อัลกอริทึมและความซับซ้อน

คำตอบ: C · W เป็นตัวเลข เวลาจึงเป็นเอกซ์โพเนนเชียลเมื่อเทียบกับจำนวนบิตที่ใช้เขียน W

เหตุผลที่เป็นคำตอบนี้

เวลาทำงานเป็นพหุนามเมื่อเทียบกับค่าของ W แต่เป็นเอกซ์โพเนนเชียลเมื่อเทียบกับความยาวของมัน (log W บิต) ปัญหา 0/1 knapsack เป็น NP-complete

คำตอบ

C · W เป็นตัวเลข เวลาจึงเป็นเอกซ์โพเนนเชียลเมื่อเทียบกับจำนวนบิตที่ใช้เขียน W
11.โครงสร้างข้อมูล

คำตอบ: C · (i + 1) mod n

เหตุผลที่เป็นคำตอบนี้

การดำเนินการ modulo วนดัชนี n − 1 กลับเป็น 0 อาร์เรย์จึงถูกนำกลับมาใช้โดยไม่ต้องเลื่อนสมาชิก

คำตอบ

C · (i + 1) mod n
12.โครงสร้างข้อมูล

คำตอบ: A · preorder และ inorder

เหตุผลที่เป็นคำตอบนี้

Preorder ให้ราก และตำแหน่งของมันในลำดับ inorder แบ่งต้นไม้ย่อยซ้ายและขวา preorder กับ postorder ไม่ชัดเจนเมื่อโหนดมีลูกตัวเดียว

คำตอบ

A · preorder และ inorder
13.ทฤษฎีกราฟ

คำตอบ: L = 8

ออยเลอร์ แฮมิลตัน และต้นไม้: กราฟเชื่อมโยงมีวงจรออยเลอร์ (ผ่านทุกเส้นเชื่อมครั้งเดียวและกลับจุดเริ่มต้น) เมื่อทุกจุดยอดมีดีกรีคู่ และมีทางเดินออยเลอร์ที่ไม่ใช่วงจรเมื่อมีจุดยอดดีกรีคี่พอดีสองจุด ทางเดินนั้นไปจากจุดยอดคี่จุดหนึ่งถึงอีกจุดหนึ่ง วงจรแฮมิลตันผ่านทุกจุดยอดครั้งเดียว Kn มีวงจรแบบนี้ (n − 1)!/2 วงจร ต้นไม้ที่มี n จุดยอดมี n − 1 เส้นเชื่อม และกราฟเชื่อมโยงที่มี m เส้นเชื่อมจะเหลือต้นไม้ทอดข้ามหลังเอาเส้นเชื่อมออก m − n + 1 เส้น

เล็มมาการจับมือสำหรับต้นไม้

L + 20 = 2(L + 7) − 2
L = 8

คำตอบ

L = 8

ทางลัด: L = 2 + Σ (d − 2) ของจุดยอดที่มีดีกรี d ≥ 3

14.ทฤษฎีกราฟ

คำตอบ: N = 1

ดีกรี: ดีกรีของจุดยอดคือจำนวนเส้นเชื่อมที่มาบรรจบที่จุดนั้น เส้นเชื่อมแต่ละเส้นมีสองปลาย ดังนั้นผลบวกของดีกรีเท่ากับสองเท่าของจำนวนเส้นเชื่อม: Σ deg(v) = 2|E| (เล็มมาการจับมือ) ดังนั้นจำนวนจุดยอดที่มีดีกรีคี่เป็นจำนวนคู่ Kn มีเส้นเชื่อม n(n − 1)/2 เส้น กราฟปรกติดีกรี k ที่มี n จุดยอดมี nk/2 เส้น และต้นไม้ที่มี n จุดยอดมี n − 1 เส้นเชื่อม

เมทริกซ์ประชิด

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

เพื่อนบ้านร่วม

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

คำตอบ

N = 1
15.ฐานข้อมูลและ SQL

คำตอบ: C · เมื่อซับคิวรีคืนอย่างน้อยหนึ่งแถว

เหตุผลที่เป็นคำตอบนี้

EXISTS ตรวจเพียงว่ามีแถวถูกสร้างหรือไม่ ส่วน NOT EXISTS เป็นจริงเมื่อซับคิวรีไม่คืนแถวเลย

คำตอบ

C · เมื่อซับคิวรีคืนอย่างน้อยหนึ่งแถว
16.ฐานข้อมูลและ SQL

คำตอบ: D · อยู่ใน 2NF แต่ไม่อยู่ใน 3NF

เหตุผลที่เป็นคำตอบนี้

คีย์มีหนึ่งคอลัมน์ 2NF จึงเป็นจริง แต่ emp_id → dept_id → dept_name เป็นการพึ่งพาแบบถ่ายทอด ซึ่งละเมิด 3NF

คำตอบ

D · อยู่ใน 2NF แต่ไม่อยู่ใน 3NF
17.เครือข่ายคอมพิวเตอร์

คำตอบ: A · เป็นเราเตอร์ที่ใช้สำหรับทราฟฟิกไปยังเครือข่ายอื่น

เหตุผลที่เป็นคำตอบนี้

โฮสต์ส่งแพ็กเก็ตที่มีปลายทางนอกเครือข่ายท้องถิ่นไปยังเกตเวย์เริ่มต้น ซึ่งมักเป็นเราเตอร์ท้องถิ่นของตน

คำตอบ

A · เป็นเราเตอร์ที่ใช้สำหรับทราฟฟิกไปยังเครือข่ายอื่น
18.เครือข่ายคอมพิวเตอร์

คำตอบ: C · เพื่อหลีกเลี่ยงความสับสนกับเซกเมนต์เก่าและทำให้แทรกเซกเมนต์ปลอมได้ยากขึ้น

เหตุผลที่เป็นคำตอบนี้

หมายเลขลำดับเริ่มต้นแบบสุ่มป้องกันไม่ให้ยอมรับเซกเมนต์ที่ล่าช้าจากการเชื่อมต่อเก่า และทำให้ผู้โจมตีนอกเส้นทางปลอมเซกเมนต์ที่ใช้ได้ยาก

คำตอบ

C · เพื่อหลีกเลี่ยงความสับสนกับเซกเมนต์เก่าและทำให้แทรกเซกเมนต์ปลอมได้ยากขึ้น
19.การแบ่งซับเน็ต IPv4

คำตอบ: x = 128

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 = 128

ซับเน็ตหมายเลข 2

เครือข่าย: (2 − 1)·128 = 128
บรอดคาสต์: 128 + 128 − 1 = 255

คำตอบ

x = 128
20.การแบ่งซับเน็ต IPv4

คำตอบ: x = 158

การแบ่งซับเน็ต IPv4: ที่อยู่มี 32 บิต พรีฟิกซ์ /p บอกว่าบิตนำหน้ากี่บิตระบุเครือข่าย ส่วน 32 − p บิตที่เหลือใช้ระบุเลขโฮสต์ ซับเน็ตมี 2³²⁻ᵖ ที่อยู่ แต่ที่อยู่แรก (ที่อยู่เครือข่าย) และที่อยู่สุดท้าย (ที่อยู่บรอดคาสต์) ใช้เป็นโฮสต์ไม่ได้ จึงมีโฮสต์ได้ 2³²⁻ᵖ − 2 เครื่อง ข้อยกเว้น: /31 (ลิงก์แบบจุดต่อจุด, RFC 3021) ใช้ทั้ง 2 แอดเดรสสำหรับโฮสต์ และ /32 เป็นแอดเดรสเดียว (โฮสต์เดียวหรือลูปแบ็ก)

ขนาดบล็อก

22 = 4

ซับเน็ตของโฮสต์นี้

เครือข่าย: ⌊156/4⌋·4 = 156
บรอดคาสต์: 156 + 4 − 1 = 159
โฮสต์ที่ใช้ได้: 157 … 158

คำตอบ

x = 158

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