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

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

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

1000 01118 bit
N =
2.ระบบเลขยาก
8 bit1 px1920 px1080 pxM = ? KiB

ภาพที่ไม่บีบอัดมีขนาด 1920 × 1080 พิกเซล และมี 8 บิตต่อพิกเซล ใช้หน่วยความจำ M เท่าใด ในหน่วย KiB (1 KiB = 1024 ไบต์)

1920 × 1080 px8 bit/px1 KiB = 1024 B
M = KiB
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
pqrq ∧ ¬(p ∧ r)q ∧ p(q ∧ ¬(p ∧ r)) → (q ∧ p)111?110?101?100?011?010?001?000?

ในตารางค่าความจริง 8 แถวของ (q ∧ ¬(p ∧ r)) → (q ∧ p) มีกี่แถวที่เป็นจริง เรียกจำนวนนี้ว่า N

(q ∧ ¬(p ∧ r)) → (q ∧ p)
N =
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
pqq → p¬q¬p11100100

การอ้างเหตุผลที่มีสมมติฐาน q → p; ¬q และบทสรุป ¬p ไม่สมเหตุสมผล ให้คลิกแถวของตารางค่าความจริงที่เป็นตัวอย่างค้าน

q → p¬q∴ ¬p
  1. 1p = 1, q = 1
  2. 2p = 1, q = 0
  3. 3p = 0, q = 1
  4. 4p = 0, q = 0
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABCD000111100001111010010302141517161120131151140809111010

ใช้แผนที่คาร์โนห์หารูปผลบวกของผลคูณ (SOP) ที่น้อยที่สุดของ F(A, B, C, D) = Σm(0, 4, 5, 6, 7, 11, 12, 14, 15) มีกี่พจน์ผลคูณ N

F(A, B, C, D) = Σm(0, 4, 5, 6, 7, 11, 12, 14, 15)
N =
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKJOHNSON

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

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

จงหาตัวผกผันของ 36 มอดูโล 41: จำนวน x ที่ 0 < x < 41 และ 36·x ≡ 1 (mod 41)

a = 36n = 41
36−1 mod 41 =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก
53c = me​ mod n?m = cd​ mod nm(n, e) = (95, 13)d

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

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

อัลกอริทึมของ Prim สร้างต้นไม้ทอดข้ามที่น้อยที่สุดอย่างไร

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

Insertion sort ทำงานใน O(n) บนอินพุตที่เรียงแล้ว สิ่งนี้ขัดกับขอบเขตล่าง Ω(n log n) ของการเรียงแบบเปรียบเทียบหรือไม่

  1. Aขัด ดังนั้นขอบเขตล่างจึงผิด
  2. Bไม่ขัด ขอบเขตล่างใช้กับกรณีเลวร้ายที่สุดเหนือทุกอินพุต ไม่ใช่ทุกอินพุต
  3. Cไม่ขัด เพราะ insertion sort ไม่ใช่การเรียงแบบเปรียบเทียบ
  4. Dขัด แต่เฉพาะอาร์เรย์ที่สั้นกว่า 100
11.โครงสร้างข้อมูลปานกลาง

เมทริกซ์ประชิด (adjacency matrix) ของกราฟที่มี V จุดยอดใช้หน่วยความจำเท่าใด

  1. AO(E)
  2. BO(log V)
  3. CO(V + E)
  4. DO(V²)
12.โครงสร้างข้อมูลยาก

การกลับลิงก์ลิสต์เชิงเดี่ยวในที่เดิมมีต้นทุนด้านเวลาและพื้นที่เพิ่มเติมเท่าใด

  1. Aเวลา O(n) และพื้นที่เพิ่ม O(1)
  2. Bเวลา O(1) และพื้นที่เพิ่ม O(1)
  3. Cเวลา O(n log n) และพื้นที่เพิ่ม O(1)
  4. Dเวลา O(n) และพื้นที่เพิ่ม O(n)
13.ทฤษฎีกราฟปานกลาง

กราฟเชื่อมโยงมี 14 จุดยอดและ 23 เส้นเชื่อม ต้องเอาเส้นเชื่อมออกกี่เส้น k เพื่อให้เหลือต้นไม้ทอดข้าม

|V| = 14|E| = 23
k =
14.ทฤษฎีกราฟยาก
2013141112210643ABCDEFG

จงหาน้ำหนักรวม W ของต้นไม้ทอดข้ามค่าน้อยที่สุดของกราฟถ่วงน้ำหนัก

|V| = 7|E| = 10
W =
15.ฐานข้อมูลและ SQLปานกลาง

ตาราง orders มี 5 แถว โดยแต่ละแถวอ้างอิงลูกค้าที่มีอยู่ ตาราง customers มี 3 แถว INNER JOIN บน customer_id คืนกี่แถว?

  1. A5
  2. B8
  3. C15
  4. D3
16.ฐานข้อมูลและ SQLยาก

คิวรีต่อไปนี้ให้ผลอะไร: SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students)?

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

สัญญาณเดินทาง 2000 km ผ่านใยแก้วนำแสงด้วยความเร็วประมาณ 2 × 10⁸ m/s ความล่าช้าในการแพร่ (propagation delay) เป็นเท่าใด?

  1. A10 ms
  2. B0.1 ms
  3. C100 ms
  4. D1 ms
18.เครือข่ายคอมพิวเตอร์ยาก

กุญแจส่วนตัวของเซิร์ฟเวอร์ถูกขโมยในอีกหนึ่งปีข้างหน้า คุณสมบัติ TLS ใดทำให้เซสชันที่บันทึกไว้วันนี้ปลอดภัย?

  1. Aความลับไปข้างหน้า (forward secrecy) จากการแลกเปลี่ยนกุญแจ Diffie-Hellman แบบชั่วคราว
  2. Bการบีบอัดข้อมูลก่อนเข้ารหัส
  3. Cการส่งใบรับรองสองครั้ง
  4. Dการใช้ชื่อโดเมนที่ยาวขึ้น
19.การแบ่งซับเน็ต IPv4ปานกลาง
/?11111111111111111111110000000000บิตเครือข่ายบิตโฮสต์

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

734 hosts
p =
20.การแบ่งซับเน็ต IPv4ยาก

เครือข่าย 192.168.12.0/24 ถูกแบ่งด้วย VLSM สำหรับ LAN เหล่านี้: A: 37 โฮสต์, B: 30 โฮสต์, C: 8 โฮสต์, D: 39 โฮสต์ ซับเน็ตถูกจัดสรรจาก .0 ขึ้นไป โดย LAN ที่มีโฮสต์มากที่สุดมาก่อน แต่ละ LAN ได้ซับเน็ตที่เล็กที่สุดที่พอดี ออกเท็ตที่สี่ x ของที่อยู่เครือข่ายของ LAN C คือเท่าใด

A: 37B: 30C: 8D: 39
x =

3สารละลาย

1.ระบบเลข

คำตอบ: N = −121

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

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

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

−128 + 4 + 2 + 1 = −121

คำตอบ

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

คำตอบ: M = 2025 KiB

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

บิตและไบต์

1920·1080·8 = 16588800 bit = 2073600 B

แปลงเป็น KiB

2073600/1024 = 2025 KiB

คำตอบ

M = 2025 KiB
3.ตรรกศาสตร์ประพจน์และการพิสูจน์

คำตอบ: N = 6

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

ตารางค่าความจริงทีละแถว

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

นับแถวที่มีค่าเป็น 1

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

คำตอบ

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

คำตอบ: p = 1, q = 0

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

สมมติฐานและบทสรุปทีละแถว

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

ตัวอย่างค้าน

p = 1, q = 0

คำตอบ

p = 1, q = 0

การอ้างเหตุผลรูปแบบนี้ดูเหมือนกฎที่สมเหตุสมผล แต่แถวเดียวก็เพียงพอที่จะแสดงว่าไม่ใช่

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

คำตอบ: N = 4

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

ABCD000111100001111010010302141517161120131151140809111010

จัดกลุ่ม 1

ทุกกลุ่มเป็นสี่เหลี่ยมของ 2ᵏ เซลล์ เซลล์ที่ขอบเป็นเพื่อนบ้านของเซลล์ที่ขอบตรงข้าม

BD′
A′C′D′
ACD
A′B

รูป SOP ที่น้อยที่สุด

F = BD′ + A′C′D′ + ACD + A′B
N = 4

คำตอบ

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

คำตอบ: Q = 7

ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา 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

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

0000 → 1000 → 1100 → 1110 → 1111 → 0111

ค่าฐานสิบ

0111₂ = 7

คำตอบ

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

คำตอบ: 36−1 mod 41 = 8

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

ขั้นตอนวิธีของยูคลิดแบบขยาย

เศษ r แต่ละตัวเขียนเป็น r ≡ t·36 (mod 41)

r = 41, t = 0
r = 36, q = 1, t = 1
r = 5, q = 7, t = −1
r = 1, q = 5, t = 8

อินเวอร์ส

1 ≡ 8·36 (mod 41)
x = 8
ตรวจสอบ: 36·8 = 288 = 7·41 + 1

คำตอบ

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

คำตอบ: c = 48

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

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

13 = 8 + 4 + 1
531 ≡ 53 (mod 95)
532 ≡ 54 (mod 95)
534 ≡ 66 (mod 95)
538 ≡ 81 (mod 95)
5313 ≡ 53·66·81 ≡ 48 (mod 95)

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

c = 48

คำตอบ

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

คำตอบ: A · ขยายต้นไม้ต้นเดียวจากจุดยอดเริ่มต้น โดยเพิ่มเส้นเชื่อมที่ถูกที่สุดที่ออกจากต้นไม้

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

อัลกอริทึมของ Prim ที่ใช้คิวลำดับความสำคัญของเส้นเชื่อมที่ข้ามขอบเขตทำงานใน O(E log V) เมื่อใช้ฮีปไบนารี

คำตอบ

A · ขยายต้นไม้ต้นเดียวจากจุดยอดเริ่มต้น โดยเพิ่มเส้นเชื่อมที่ถูกที่สุดที่ออกจากต้นไม้
10.อัลกอริทึมและความซับซ้อน

คำตอบ: B · ไม่ขัด ขอบเขตล่างใช้กับกรณีเลวร้ายที่สุดเหนือทุกอินพุต ไม่ใช่ทุกอินพุต

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

ขอบเขตนี้บอกว่าการเรียงแบบเปรียบเทียบทุกชนิดต้องใช้ประมาณ n log n การเปรียบเทียบกับอินพุตบางแบบขนาด n อินพุตพิเศษอาจเร็วกว่ามาก

คำตอบ

B · ไม่ขัด ขอบเขตล่างใช้กับกรณีเลวร้ายที่สุดเหนือทุกอินพุต ไม่ใช่ทุกอินพุต
11.โครงสร้างข้อมูล

คำตอบ: D · O(V²)

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

เมทริกซ์ประชิดเก็บ V × V ช่อง มีประสิทธิภาพสำหรับกราฟหนาแน่น ส่วนรายการประชิดใช้ O(V + E) ดีกว่าสำหรับกราฟเบาบาง

คำตอบ

D · O(V²)
12.โครงสร้างข้อมูล

คำตอบ: A · เวลา O(n) และพื้นที่เพิ่ม O(1)

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

การเก็บตัวชี้สามตัว (previous, current, next) ทำให้กลับแต่ละลิงก์ในรอบเดียวโดยไม่จัดสรรโหนดใหม่

คำตอบ

A · เวลา O(n) และพื้นที่เพิ่ม O(1)
13.ทฤษฎีกราฟ

คำตอบ: k = 10

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

เส้นเชื่อมของต้นไม้ทอดข้าม

14 − 1 = 13

เส้นเชื่อมที่ต้องเอาออก

k = 23 − 13 = 10

คำตอบ

k = 10
14.ทฤษฎีกราฟ

คำตอบ: W = 45

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

ขั้นตอนวิธีของครัสคัล

EF (2): เลือก
GE (3): เลือก
GD (4): เลือก
GC (6): เลือก
GB (10): เลือก
CE (11): ข้าม ทำให้เกิดวัฏจักร
DE (12): ข้าม ทำให้เกิดวัฏจักร
BC (13): ข้าม ทำให้เกิดวัฏจักร
BD (14): ข้าม ทำให้เกิดวัฏจักร
AC (20): เลือก

น้ำหนักรวม

W = 2 + 3 + 4 + 6 + 10 + 20 = 45

คำตอบ

W = 45
15.ฐานข้อมูลและ SQL

คำตอบ: A · 5

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

ทุกคำสั่งซื้อพบลูกค้าที่ตรงกันหนึ่งคนพอดี การเชื่อมจึงคืนหนึ่งแถวต่อคำสั่งซื้อ: 5 แถว

คำตอบ

A · 5
16.ฐานข้อมูลและ SQL

คำตอบ: D · นักเรียนที่มีเกรดสูงกว่าเกรดเฉลี่ย

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

ซับคิวรีสเกลาร์คำนวณค่าเฉลี่ย และคิวรีด้านนอกเก็บนักเรียนที่สูงกว่าค่านั้น

คำตอบ

D · นักเรียนที่มีเกรดสูงกว่าเกรดเฉลี่ย
17.เครือข่ายคอมพิวเตอร์

คำตอบ: A · 10 ms

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

2 × 10⁶ m / 2 × 10⁸ m/s = 0.01 s = 10 ms ความล่าช้าในการแพร่ขึ้นอยู่กับระยะทางและตัวกลาง ไม่ขึ้นกับขนาดแพ็กเก็ต

คำตอบ

A · 10 ms
18.เครือข่ายคอมพิวเตอร์

คำตอบ: A · ความลับไปข้างหน้า (forward secrecy) จากการแลกเปลี่ยนกุญแจ Diffie-Hellman แบบชั่วคราว

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

ด้วย (EC)DHE แบบชั่วคราว กุญแจเซสชันแต่ละอันมาจากค่าชั่วคราวที่ถูกทิ้ง กุญแจระยะยาวใช้ลงนามการแลกเปลี่ยนเท่านั้น การขโมยในภายหลังจึงถอดรหัสทราฟฟิกเก่าไม่ได้

คำตอบ

A · ความลับไปข้างหน้า (forward secrecy) จากการแลกเปลี่ยนกุญแจ Diffie-Hellman แบบชั่วคราว
19.การแบ่งซับเน็ต IPv4

คำตอบ: p = 22

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

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

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

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

p = 32 − 10 = 22

คำตอบ

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

คำตอบ: x = 160

VLSM: แต่ละ LAN ได้ซับเน็ตที่เล็กที่สุดที่ 2ʰ − 2 ≥ จำนวนโฮสต์ของมัน คือพรีฟิกซ์ 32 − h การจัดสรรซับเน็ตที่ใหญ่ที่สุดก่อนทำให้ทุกบล็อกอยู่ในแนวพหุคูณของขนาดตัวเอง ที่อยู่เครือข่ายจึงได้จากการบวกขนาดบล็อก

ขนาดบล็อกของแต่ละ LAN

D: 39 โฮสต์ → 26 = 64 (/26)
A: 37 โฮสต์ → 26 = 64 (/26)
B: 30 โฮสต์ → 25 = 32 (/27)
C: 8 โฮสต์ → 24 = 16 (/28)

การจัดสรร จากใหญ่ที่สุดก่อน

D: .0 – .63
A: .64 – .127
B: .128 – .159
C: .160 – .175

คำตอบ

x = 160

LAN C: 192.168.12.160/28

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