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

สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 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 complement 8 บิต0−12806403201608040201

ตั้งบิตให้เก็บ −64 ใน two's complement 8 บิต อ่านเป็นจำนวนไม่มีเครื่องหมาย ค่าของรูปแบบ U เป็นเท่าใด

N = −648 bit
U =
2.ระบบเลขยาก
12 บิต two's complement, N = ??เครื่องหมาย???????????

จำนวนเต็มที่ติดลบมากที่สุด N ที่เก็บได้ใน two's complement 12 บิตคือเท่าใด

12 bit
N =
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
q ∧ ¬p¬q ∨ ¬pq ↔ ¬p¬q ↔ ¬p

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

¬(q ↔ p)
  1. 1q ∧ ¬p
  2. 2¬q ∨ ¬p
  3. 3q ↔ ¬p
  4. 4¬q ↔ ¬p
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
∃x (¬F(x) ∨ ¬G(x))∀x (¬F(x) ∧ ¬G(x))∃x (¬F(x) ∧ ¬G(x))∀x (¬F(x) ∨ ¬G(x))

ประโยคใดสมมูลกับ ¬∀x (F(x) ∨ G(x)) เมื่อย้ายนิเสธเข้าด้านในสุด ให้คลิกประโยคนั้น

¬∀x (F(x) ∨ G(x))
  1. 1∃x (¬F(x) ∨ ¬G(x))
  2. 2∀x (¬F(x) ∧ ¬G(x))
  3. 3∃x (¬F(x) ∧ ¬G(x))
  4. 4∀x (¬F(x) ∨ ¬G(x))
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
MUX0I0​C′I1​CI2​0I3​ABS1​S0​F

มัลติเพล็กเซอร์ 4 ต่อ 1 มีอินพุตเลือก S₁ = A และ S₀ = B และอินพุตข้อมูลต่อเข้ากับ I₀ = 0, I₁ = C′, I₂ = C, I₃ = 0 จาก 8 ชุดของ A, B และ C มีกี่ชุดที่เอาต์พุต F = 1 จงหา N

I₀ = 0I₁ = C′I₂ = CI₃ = 0
N =
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
ABCD000111100001111000X1030214050716012113015014X819011010

สำหรับ F(A, B, C, D) = Σm(4, 6, 9, 13) + d(1, 8) โดย d แทนเงื่อนไขไม่สนใจ จงหาจำนวน N ของไพรม์อิมพลิแคนต์จำเป็น

F(A, B, C, D) = Σm(4, 6, 9, 13) + d(1, 8)
N =
7.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ปานกลาง

จงหาจำนวนเต็มบวกที่น้อยที่สุด x ที่ x ≡ 1 (mod 5) และ x ≡ 7 (mod 8)

x ≡ 1 (mod 5)x ≡ 7 (mod 8)
x =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก
63c = me​ mod n?m = cd​ mod nm(n, e) = (221, 17)d

เข้ารหัสข้อความ m = 63 ด้วยกุญแจสาธารณะ RSA (n, e) = (221, 17) จงหาข้อความเข้ารหัส c

n = 221e = 17m = 63
c =
9.อัลกอริทึมและความซับซ้อนปานกลาง

เหตุใดจึงมักละฐานของลอการิทึมใน Big O เช่น O(log n)

  1. Aลอการิทึมที่ฐานต่างกันต่างกันเพียงตัวคูณคงที่
  2. Bลอการิทึมถูกปัดเป็นจำนวนเต็มเสมอ
  3. Cฐานมีความสำคัญเฉพาะเมื่อ n น้อย
  4. Dลอการิทึมทั้งหมดในวิทยาการคอมพิวเตอร์มีฐาน 10 จึงไม่ต้องระบุ
10.อัลกอริทึมและความซับซ้อนยาก

การเรียงลำดับทอพอโลยีทำได้เฉพาะกับ

  1. Aกราฟที่มีน้ำหนักติดลบ
  2. Bกราฟมีทิศทางแบบไม่มีวงจร (DAG)
  3. Cกราฟบริบูรณ์
  4. Dกราฟไม่มีทิศทาง
11.โครงสร้างข้อมูลปานกลาง

โครงสร้างข้อมูลใดใช้ตรวจว่าวงเล็บใน "{[()]}" สมดุลหรือไม่

  1. Aตารางแฮช
  2. Bสแตก
  3. Cคิว
  4. Dbinary search tree
12.โครงสร้างข้อมูลยาก

เหตุใดจึงลบสมาชิกออกจาก Bloom filter มาตรฐานโดยเพียงล้างบิตของมันไม่ได้

  1. Aการลบจะเพิ่มอัตราผลบวกเท็จเป็น 100%
  2. Bบิตใน Bloom filter เปลี่ยนไม่ได้หลังสร้าง
  3. CBloom filter เก็บสมาชิกเต็มรูป ซึ่งเมื่อถูกแฮชแล้วหาไม่พบอีก
  4. Dบิตเหล่านั้นอาจเป็นของสมาชิกอื่นด้วย ซึ่งจะทำให้เกิดผลลบเท็จ
13.ทฤษฎีกราฟปานกลาง

กราฟบริบูรณ์ K6 มีวงจรแฮมิลตันที่แตกต่างกันกี่วงจร H วงจรที่ต่างกันเพียงจุดยอดเริ่มต้นหรือทิศทางนับเป็นวงจรเดียวกัน

K6
H =
14.ทฤษฎีกราฟยาก
1211151716219ABCDEF

ขั้นตอนวิธีของพริมสร้างต้นไม้ทอดข้ามค่าน้อยที่สุดโดยเริ่มจากจุดยอด A ให้คลิกเส้นเชื่อมที่เพิ่มเป็นเส้นหมายเลข 4

เริ่มต้น: Ak = 4
  1. 1เส้นเชื่อม AB
  2. 2เส้นเชื่อม AC
  3. 3เส้นเชื่อม BC
  4. 4เส้นเชื่อม BD
  5. 5เส้นเชื่อม CE
  6. 6เส้นเชื่อม DF
  7. 7เส้นเชื่อม EF
  8. 8เส้นเชื่อม BE
15.ฐานข้อมูลและ SQLปานกลาง

SELECT SUM(amount) FROM orders คืนอะไรเมื่อ WHERE ไม่ตรงกับแถวใดเลย?

  1. A0
  2. BNULL
  3. Cสตริงว่าง
  4. Dข้อผิดพลาด
16.ฐานข้อมูลและ SQLยาก

ฐานข้อมูลรายงานคัดลอกชื่อลูกค้าเข้าตาราง orders เพื่อเลี่ยงการเชื่อม ต้นทุนหลักของการทำดีนอร์มัลไลซ์นี้คืออะไร?

  1. Aสำเนาซ้ำซ้อนต้องคงความสอดคล้องกันทุกครั้งที่ข้อมูลลูกค้าเปลี่ยน
  2. Bคิวรีบนตาราง orders ช้าลง
  3. Cฐานข้อมูลใช้ดัชนีไม่ได้อีกต่อไป
  4. Dใช้คีย์หลักไม่ได้อีกต่อไป
17.เครือข่ายคอมพิวเตอร์ปานกลาง

สวิตช์โดยปกติทำงานที่ชั้น OSI ใด?

  1. Aทรานสปอร์ต (ชั้น 4)
  2. Bเครือข่าย (ชั้น 3)
  3. Cดาต้าลิงก์ (ชั้น 2)
  4. Dกายภาพ (ชั้น 1)
18.เครือข่ายคอมพิวเตอร์ยาก

ผู้โจมตีใน LAN ส่งการตอบ ARP ปลอมอ้างที่อยู่ IP ของเกตเวย์ ผลที่น่าจะเกิดคืออะไร?

  1. Aสวิตช์ปิดพอร์ตทั้งหมด
  2. Bเหยื่อส่งทราฟฟิกที่ไปเกตเวย์ให้ผู้โจมตี ทำให้เกิดการโจมตีแบบคนกลาง (man-in-the-middle)
  3. Cการค้นหา DNS ทั้งหมดล้มเหลวทั่วอินเทอร์เน็ต
  4. Dที่อยู่ IP ของเกตเวย์ถูกเปลี่ยนเป็นที่อยู่ของผู้โจมตีอย่างถาวรบนเราเตอร์ทุกตัว
19.การแบ่งซับเน็ต IPv4ปานกลาง
/?11111111111111111111100000000000บิตเครือข่ายบิตโฮสต์

แผนกหนึ่งต้องการที่อยู่โฮสต์ 1855 ที่อยู่ในซับเน็ตเดียว ความยาวพรีฟิกซ์ที่ยาวที่สุด p (ซับเน็ตเล็กที่สุด) ที่ใหญ่พอคือเท่าใด

1855 hosts
p =
20.การแบ่งซับเน็ต IPv4ยาก
ออกเท็ตที่สาม = 86012816403211608141201เครือข่ายโฮสต์

โฮสต์มีที่อยู่ 172.20.86.238/20 ออกเท็ตที่สาม x ของที่อยู่บรอดแคสต์ของซับเน็ตมันคือเท่าใด

172.20.86.238/20
x =

3สารละลาย

1.ระบบเลข

คำตอบ: U = 192

การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน

กลับบิตแล้วบวกหนึ่ง

64 = 0100 0000
ที่กลับบิตแล้ว: 1011 1111
+1 → 1100 0000

อ่านเป็นแบบไม่มีเครื่องหมาย

1100 0000₂ = 256 − 64 = 192

คำตอบ

U = 192
2.ระบบเลข

คำตอบ: N = −2048

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

ค่าที่ติดลบมากที่สุด

−211 = −2048

คำตอบ

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

คำตอบ: q ↔ ¬p

ความสมมูลเชิงตรรกะ: สูตรสองสูตรสมมูลกัน (≡) เมื่อมีค่าเท่ากันทุกแถวของตารางค่าความจริง ซ้ำซ้อน (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) เป็น 1 พอดีเมื่อ a และ b ต่างกัน ซึ่งคือ a ↔ ¬b
¬(q ↔ p) ≡ q ↔ ¬p

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

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

คำตอบ

q ↔ ¬p

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

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

คำตอบ: ∃x (¬F(x) ∧ ¬G(x))

ตัวบ่งปริมาณและการอ้างเหตุผล: ¬∀x P(x) ≡ ∃x ¬P(x) และ ¬∃x P(x) ≡ ∀x ¬P(x) ย้ายนิเสธเข้าด้านใน สลับทุกตัวบ่งปริมาณที่นิเสธผ่าน และใส่นิเสธให้สูตรด้านในด้วยกฎของประพจน์ เช่น ¬(a → b) ≡ a ∧ ¬b การอ้างเหตุผลสมเหตุสมผลเมื่อบทสรุปเป็น 1 ในทุกแถวที่สมมติฐานทั้งหมดเป็น 1 แถวเดียวที่สมมติฐานเป็นจริงแต่บทสรุปเป็นเท็จคือตัวอย่างค้านและแสดงว่าการอ้างเหตุผลนั้นไม่สมเหตุสมผล

ย้ายนิเสธเข้าด้านใน

¬∀x (F(x) ∨ G(x)) ≡ ∃x (¬F(x) ∧ ¬G(x))

คำตอบ

∃x (¬F(x) ∧ ¬G(x))

ตัวเลือกอื่นอาจคงตัวบ่งปริมาณไว้ไม่เปลี่ยน เปลี่ยนลำดับของตัวบ่งปริมาณ หรือใส่นิเสธให้สูตรด้านในผิด

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

คำตอบ: N = 2

มัลติเพล็กเซอร์: มัลติเพล็กเซอร์ 2ⁿ ต่อ 1 ส่งอินพุตข้อมูลหนึ่งตัวไปยังเอาต์พุต สายเลือก (select) เมื่ออ่านเป็นเลขฐานสองจะเลือกว่าตัวใด สำหรับ MUX 4 ต่อ 1 ที่สายเลือก S₁S₀ = AB จะได้ F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃ การต่ออินพุตข้อมูลเข้ากับ 0, 1, C หรือ C′ ทำให้ MUX สร้างฟังก์ชันใดก็ได้ของ A, B และ C ซึ่งเป็นวิธีที่พบบ่อยในการสร้างตรรกะด้วยชิปตัวเดียว

นิพจน์เอาต์พุต

F = A′BC′ + AB′C

แถวที่ F = 1

ABC = 010, 101
N = 2

คำตอบ

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

คำตอบ: N = 2

แผนที่คาร์โนห์: เซลล์เรียงตามรหัสเกรย์ (00, 01, 11, 10) ดังนั้นเซลล์ที่อยู่ติดกัน รวมถึงเซลล์ที่อยู่ตรงข้ามขอบ ต่างกันเพียงตัวแปรเดียว จัดกลุ่ม 1 เป็นสี่เหลี่ยมที่มี 1, 2, 4, 8 หรือ 16 เซลล์ ให้ใหญ่ที่สุดและมีจำนวนกลุ่มน้อยที่สุดจนครอบคลุมทุก 1 แต่ละกลุ่มคือหนึ่งพจน์ผลคูณ: ตัวแปรที่คงที่ภายในกลุ่ม กลุ่มที่มี 2ᵏ เซลล์สูญเสียตัวแปรไป k ตัว ค่าไม่สนใจ (X) ใช้เพื่อทำให้กลุ่มใหญ่ขึ้นได้ แต่ไม่จำเป็นต้องถูกครอบคลุม การจัดกลุ่ม 0 แทนจะได้รูป POS ที่น้อยที่สุด

ไพรม์อิมพลิแคนต์

กลุ่มที่ใหญ่ที่สุดที่สร้างได้จาก 1 และ X

B′C′D, AC′D, A′BD′, AB′C′
ABCD000111100001111000X1030214050716012113015014X819011010

ไพรม์อิมพลิแคนต์จำเป็น

AC′D, A′BD′
N = 2

คำตอบ

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

คำตอบ: x = 31

ตัวผกผันและความสอดคล้อง: 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)

ความสอดคล้องข้อแรก

x = 1 + 5k

ความสอดคล้องข้อที่สอง

1 + 5k ≡ 7 (mod 8) → 5k ≡ 6 (mod 8)
k ≡ 5·6 ≡ 6 (mod 8)

ผลลัพธ์

x = 1 + 5·6 = 31
x = 31
ตรวจสอบ: 31 mod 5 = 1, 31 mod 8 = 7

คำตอบ

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

คำตอบ: c = 46

เลขยกกำลังมอดูลาร์และ 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

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

17 = 16 + 1
631 ≡ 63 (mod 221)
632 ≡ 212 (mod 221)
634 ≡ 81 (mod 221)
638 ≡ 152 (mod 221)
6316 ≡ 120 (mod 221)
6317 ≡ 63·120 ≡ 46 (mod 221)

ข้อความเข้ารหัส

c = 46

คำตอบ

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

คำตอบ: A · ลอการิทึมที่ฐานต่างกันต่างกันเพียงตัวคูณคงที่

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

การเปลี่ยนฐานคูณลอการิทึมด้วยค่าคงที่ และ Big O ไม่สนใจตัวคูณคงที่

คำตอบ

A · ลอการิทึมที่ฐานต่างกันต่างกันเพียงตัวคูณคงที่
10.อัลกอริทึมและความซับซ้อน

คำตอบ: B · กราฟมีทิศทางแบบไม่มีวงจร (DAG)

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

ลำดับทอพอโลยีมีอยู่ก็ต่อเมื่อกราฟมีทิศทางไม่มีวงจร และหาได้ใน O(V + E) ด้วย DFS หรืออัลกอริทึมของ Kahn

คำตอบ

B · กราฟมีทิศทางแบบไม่มีวงจร (DAG)
11.โครงสร้างข้อมูล

คำตอบ: B · สแตก

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

push วงเล็บเปิดแต่ละตัวและ pop เมื่อเจอวงเล็บปิด ต้องตรงกับวงเล็บที่ pop และสแตกต้องว่างเมื่อจบ

คำตอบ

B · สแตก
12.โครงสร้างข้อมูล

คำตอบ: D · บิตเหล่านั้นอาจเป็นของสมาชิกอื่นด้วย ซึ่งจะทำให้เกิดผลลบเท็จ

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

การล้างบิตที่ใช้ร่วมกันจะทำให้สมาชิกอื่นดูเหมือนไม่อยู่ counting Bloom filter เก็บตัวนับแทนบิตเพื่อให้ลบได้

คำตอบ

D · บิตเหล่านั้นอาจเป็นของสมาชิกอื่นด้วย ซึ่งจะทำให้เกิดผลลบเท็จ
13.ทฤษฎีกราฟ

คำตอบ: H = 60

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

นับ

H = (6 − 1)!/2 = 120/2 = 60

คำตอบ

H = 60
14.ทฤษฎีกราฟ

คำตอบ: เส้นเชื่อม DF

เส้นทางที่สั้นที่สุดและต้นไม้ทอดข้าม: ขั้นตอนวิธีของไดก์สตรายืนยันหนึ่งจุดยอดต่อรอบ: จุดยอดที่ยังไม่ยืนยันซึ่งมีระยะทางชั่วคราวน้อยที่สุด ระยะทางของมันเป็นค่าสุดท้ายแล้ว และเพื่อนบ้าน v ทุกจุดได้ d(v) = min(d(v), d(u) + w(u, v)) ขั้นตอนวิธีของครัสคัลสร้างต้นไม้ทอดข้ามค่าน้อยที่สุดโดยเลือกเส้นเชื่อมจากเบาไปหนักและข้ามเส้นที่ทำให้เกิดวัฏจักร ขั้นตอนวิธีของพริมขยายต้นไม้หนึ่งต้นจากจุดยอดเริ่มต้นโดยเพิ่มเส้นเชื่อมที่เบาที่สุดที่ออกจากต้นไม้เสมอ ต้นไม้ทอดข้ามที่มี n จุดยอดมี n − 1 เส้นเชื่อม

ขั้นตอนวิธีของพริม

1. AC (11)
2. CE (1)
3. EF (2)
4. DF (6)
5. AB (12)

เส้นเชื่อมหมายเลข 4

DF

คำตอบ

เส้นเชื่อม DF
15.ฐานข้อมูลและ SQL

คำตอบ: B · NULL

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

SUM, AVG, MIN และ MAX คืน NULL เมื่อเซตว่าง ส่วน COUNT คืน 0 COALESCE(SUM(amount), 0) ให้ 0 แทน

คำตอบ

B · NULL
16.ฐานข้อมูลและ SQL

คำตอบ: A · สำเนาซ้ำซ้อนต้องคงความสอดคล้องกันทุกครั้งที่ข้อมูลลูกค้าเปลี่ยน

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

ดีนอร์มัลไลเซชันเร่งการอ่านแต่นำความซ้ำซ้อนกลับมา การอัปเดตจึงต้องเปลี่ยนทุกสำเนา มิฉะนั้นเกิดความผิดปกติ

คำตอบ

A · สำเนาซ้ำซ้อนต้องคงความสอดคล้องกันทุกครั้งที่ข้อมูลลูกค้าเปลี่ยน
17.เครือข่ายคอมพิวเตอร์

คำตอบ: C · ดาต้าลิงก์ (ชั้น 2)

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

สวิตช์มาตรฐานเรียนรู้ที่อยู่ MAC และส่งต่อเฟรมที่ชั้น 2 ส่วนสวิตช์ชั้น 3 ทำการกำหนดเส้นทางด้วย

คำตอบ

C · ดาต้าลิงก์ (ชั้น 2)
18.เครือข่ายคอมพิวเตอร์

คำตอบ: B · เหยื่อส่งทราฟฟิกที่ไปเกตเวย์ให้ผู้โจมตี ทำให้เกิดการโจมตีแบบคนกลาง (man-in-the-middle)

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

ARP spoofing วางยาแคช ARP ของโฮสต์ด้วย MAC ของผู้โจมตีแทน IP ของเกตเวย์ ผู้โจมตีจึงอ่าน เปลี่ยนแปลง หรือทิ้งทราฟฟิกได้ การตรวจสอบ ARP แบบไดนามิก (dynamic ARP inspection) ช่วยป้องกัน

คำตอบ

B · เหยื่อส่งทราฟฟิกที่ไปเกตเวย์ให้ผู้โจมตี ทำให้เกิดการโจมตีแบบคนกลาง (man-in-the-middle)
19.การแบ่งซับเน็ต IPv4

คำตอบ: p = 21

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

บิตโฮสต์ที่ต้องใช้

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

ความยาวพรีฟิกซ์

p = 32 − 11 = 21

คำตอบ

p = /21
20.การแบ่งซับเน็ต IPv4

คำตอบ: x = 95

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

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

เครือข่าย: 172.20.80.0
บรอดคาสต์: 172.20.95.255

คำตอบ

x = 95

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