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

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

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

1111 10018 bit
N =
2.ระบบเลขยาก
รหัส 3228 ตัว, b = ? บิต?2ᵇ⁻¹…?4?2?1

ระบบต้องให้รหัสฐานสองความยาวเท่ากันแก่สิ่งของ 3228 ชิ้น ชิ้นละหนึ่งรหัส ต้องใช้อย่างน้อยกี่บิต b

3228
b = bit
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
pqrr ∨ p¬q ∨ (r ∨ p)(q ∧ p) ∨ (¬q ∨ (r ∨ p))111?110?101?100?011?010?001?000?

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

(q ∧ p) ∨ (¬q ∨ (r ∨ p))
N =
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
∀x (F(x) ∧ ∀y ¬R(x, y))∃x (F(x) → ∀y ¬R(x, y))∃x (F(x) ∧ ∀y ¬R(x, y))∃x (¬F(x) ∧ ∃y R(x, y))

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

¬∀x (F(x) → ∃y R(x, y))
  1. 1∀x (F(x) ∧ ∀y ¬R(x, y))
  2. 2∃x (F(x) → ∀y ¬R(x, y))
  3. 3∃x (F(x) ∧ ∀y ¬R(x, y))
  4. 4∃x (¬F(x) ∧ ∃y R(x, y))
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABC000111100101324576

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

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

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

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

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

a = 28n = 47
28−1 mod 47 =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก
mc = me​ mod n241m = cd​ mod n?(n, e) = (319, 11)d

กุญแจ RSA ใช้ p = 11, q = 29 และ e = 11 จงถอดรหัสข้อความเข้ารหัส c = 241: หาข้อความ m

p = 11q = 29e = 11c = 241
m =
9.อัลกอริทึมและความซับซ้อนปานกลาง

quicksort ใช้สมาชิกตัวแรกเป็นตัวหลักเสมอ อินพุตแบบใดแสดงพฤติกรรมกรณีเลวร้ายที่สุดของมัน

  1. Aอาร์เรย์ที่เรียงลำดับแล้ว
  2. Bอาร์เรย์ที่เรียงแบบสุ่ม
  3. Cอาร์เรย์ความยาว 2
  4. Dอาร์เรย์ที่สมาชิกทุกตัวต่างกัน
10.อัลกอริทึมและความซับซ้อนยาก

จะเกิดอะไรขึ้นถ้ามีผู้พบอัลกอริทึมเวลาพหุนามสำหรับปัญหา NP-complete หนึ่งข้อ

  1. Aทุกปัญหาใน NP แก้ได้ในเวลาพหุนาม ดังนั้น P = NP
  2. Bอัลกอริทึมเวลาเอกซ์โพเนนเชียลทั้งหมดจะทำงานในเวลาเชิงเส้นทันที
  3. Cปัญหาการหยุดจะตัดสินได้
  4. Dเฉพาะปัญหานั้นปัญหาเดียวที่ย้ายเข้า P
11.โครงสร้างข้อมูลปานกลาง

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

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

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

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

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

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

ใช้ขั้นตอนวิธีของไดก์สตราเพื่อหาความยาว d(F) ของเส้นทางที่สั้นที่สุดจาก A ไป F ในกราฟถ่วงน้ำหนัก

เริ่มต้น: Aสิ้นสุด: F
d(F) =
15.ฐานข้อมูลและ SQLปานกลาง

ตารางมีแถวที่ col เป็น NULL แถวใดที่ WHERE col = NULL คืนมา?

  1. Aเฉพาะแถวที่ col เป็น NULL เช่นเดียวกับ IS NULL
  2. Bไม่มีแถวเลย เพราะการเปรียบเทียบให้ผลไม่ทราบค่า
  3. Cข้อผิดพลาดในทุกฐานข้อมูล
  4. Dทุกแถวของตาราง
16.ฐานข้อมูลและ SQLยาก

x เป็น NULL และ y = 1 ค่าของเงื่อนไข (x > 5 OR y = 1) คืออะไร?

  1. AUNKNOWN
  2. BTRUE
  3. CNULL ดังนั้นแถวถูกปฏิเสธเสมอ
  4. DFALSE
17.เครือข่ายคอมพิวเตอร์ปานกลาง

เราเตอร์มีเส้นทางสำหรับ 10.0.0.0/8 และ 10.1.0.0/16 ใช้เส้นทางใดสำหรับแพ็กเก็ตไปยัง 10.1.5.5?

  1. A10.0.0.0/8 เพราะครอบคลุมที่อยู่มากกว่า /16
  2. B10.0.0.0/8 เพราะถูกเพิ่มก่อน
  3. Cทั้งสองเส้นทาง โดยแบ่งทราฟฟิกเท่า ๆ กัน
  4. D10.1.0.0/16 เพราะเป็นพรีฟิกซ์ที่ตรงกันยาวที่สุด
18.เครือข่ายคอมพิวเตอร์ยาก

การค้นหา DNS โดยปกติใช้ UDP เมื่อใดที่ DNS มักใช้ TCP แทน?

  1. Aสำหรับทุกการค้นหาที่ส่งจากเว็บเบราว์เซอร์
  2. Bสำหรับการตอบกลับที่ใหญ่เกินกว่า UDP และสำหรับการถ่ายโอนโซน
  3. Cเฉพาะเมื่อชื่อโดเมนยาวกว่าสิบตัวอักษร
  4. Dเฉพาะการค้นหาย้อนกลับของที่อยู่ IP
19.การแบ่งซับเน็ต IPv4ปานกลาง
/20 → /2411111111111111111111111100000000บิตเครือข่ายบิตโฮสต์

เครือข่าย 10.14.32.0/20 ถูกแบ่งเป็นซับเน็ตขนาดเท่ากันด้วยพรีฟิกซ์ /24 มีกี่ซับเน็ต N

10.14.32.0/20/24
N =
20.การแบ่งซับเน็ต IPv4ยาก
ออคเต็ตสุดท้าย = 23012806403211608141211เครือข่ายโฮสต์

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

10.20.73.23/28
x =

3สารละลาย

1.ระบบเลข

คำตอบ: N = −7

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

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

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

−128 + 64 + 32 + 16 + 8 + 1 = −7

คำตอบ

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

คำตอบ: b = 12 bit

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

กำลังของสอง

211 = 2048 < 3228
212 = 4096 ≥ 3228

คำตอบ

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

คำตอบ: N = 7

ตารางค่าความจริง: สูตรที่มีตัวแปรต่างกัน 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: q ∧ p = 1, ¬q = 0, r ∨ p = 1, ¬q ∨ (r ∨ p) = 1, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 1
p = 1, q = 1, r = 0: q ∧ p = 1, ¬q = 0, r ∨ p = 1, ¬q ∨ (r ∨ p) = 1, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 1
p = 1, q = 0, r = 1: q ∧ p = 0, ¬q = 1, r ∨ p = 1, ¬q ∨ (r ∨ p) = 1, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 1
p = 1, q = 0, r = 0: q ∧ p = 0, ¬q = 1, r ∨ p = 1, ¬q ∨ (r ∨ p) = 1, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 1
p = 0, q = 1, r = 1: q ∧ p = 0, ¬q = 0, r ∨ p = 1, ¬q ∨ (r ∨ p) = 1, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 1
p = 0, q = 1, r = 0: q ∧ p = 0, ¬q = 0, r ∨ p = 0, ¬q ∨ (r ∨ p) = 0, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 0
p = 0, q = 0, r = 1: q ∧ p = 0, ¬q = 1, r ∨ p = 1, ¬q ∨ (r ∨ p) = 1, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 1
p = 0, q = 0, r = 0: q ∧ p = 0, ¬q = 1, r ∨ p = 0, ¬q ∨ (r ∨ p) = 1, (q ∧ p) ∨ (¬q ∨ (r ∨ p)) = 1

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

(q ∧ p) ∨ (¬q ∨ (r ∨ p)): 1, 1, 1, 1, 1, 0, 1, 1
N = 7

คำตอบ

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

คำตอบ: ∃x (F(x) ∧ ∀y ¬R(x, y))

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

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

¬∀x (F(x) → ∃y R(x, y)) ≡ ∃x (F(x) ∧ ∀y ¬R(x, y))

คำตอบ

∃x (F(x) ∧ ∀y ¬R(x, y))

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

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

คำตอบ: L = 4

พีชคณิตแบบบูล: กฎที่ทำให้นิพจน์ง่ายขึ้นได้แก่ 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 หนึ่งครั้ง

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

AB′C → m(5)
A′C → m(1, 3)
A′BC′ → m(2)
ABC00011110010011131204150706

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

F = B′C + A′B

นับลิเทอรัล

L = 4

คำตอบ

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

คำตอบ: Q = 10

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

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

1010 → 0101 → 1010 → 0101 → 1010

ค่าฐานสิบ

1010₂ = 10

คำตอบ

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

คำตอบ: 28−1 mod 47 = 42

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

r = 47, t = 0
r = 28, q = 1, t = 1
r = 19, q = 1, t = −1
r = 9, q = 2, t = 2
r = 1, q = 9, t = −5

อินเวอร์ส

1 ≡ −5·28 (mod 47)
x = 42
ตรวจสอบ: 28·42 = 1176 = 25·47 + 1

คำตอบ

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

คำตอบ: m = 296

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

เลขชี้กำลังส่วนตัว

n = 319, φ(n) = 280
d = 11−1 mod 280 = 51

ถอดรหัสด้วยการยกกำลังสองซ้ำ

51 = 32 + 16 + 2 + 1
2411 ≡ 241 (mod 319)
2412 ≡ 23 (mod 319)
2414 ≡ 210 (mod 319)
2418 ≡ 78 (mod 319)
24116 ≡ 23 (mod 319)
24132 ≡ 210 (mod 319)
24151 ≡ 241·23·23·210 ≡ 296 (mod 319)

ข้อความ

m = 296
ตรวจสอบ: 29611 mod 319 = 241

คำตอบ

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

คำตอบ: A · อาร์เรย์ที่เรียงลำดับแล้ว

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

บนอินพุตที่เรียงแล้ว ตัวหลักเป็นค่าต่ำสุดเสมอ ฝั่งหนึ่งว่างและอีกฝั่งมี n − 1 ตัว ได้ O(n²)

คำตอบ

A · อาร์เรย์ที่เรียงลำดับแล้ว
10.อัลกอริทึมและความซับซ้อน

คำตอบ: A · ทุกปัญหาใน NP แก้ได้ในเวลาพหุนาม ดังนั้น P = NP

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

เนื่องจากทั้ง NP ลดรูปมาเป็นปัญหา NP-complete ใด ๆ ได้ในเวลาพหุนาม อัลกอริทึมเร็วสำหรับข้อหนึ่งจึงให้อัลกอริทึมเร็วสำหรับทั้งหมด

คำตอบ

A · ทุกปัญหาใน NP แก้ได้ในเวลาพหุนาม ดังนั้น P = NP
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.ทฤษฎีกราฟ

คำตอบ: d(F) = 17

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

ไดก์สตราทีละรอบ

แต่ละบรรทัด: จุดยอดที่ยืนยัน ระยะทางสุดท้ายของมัน และเพื่อนบ้านที่ระยะทางดีขึ้น

A (0): B: 8, C: 11
B (8): D: 16
C (11): E: 20
D (16): F: 17
F (17)
E (20)

เส้นทางที่สั้นที่สุด

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

คำตอบ

d(F) = 17
15.ฐานข้อมูลและ SQL

คำตอบ: B · ไม่มีแถวเลย เพราะการเปรียบเทียบให้ผลไม่ทราบค่า

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

การเปรียบเทียบใด ๆ กับ NULL ด้วย = ให้ UNKNOWN และ WHERE เก็บเฉพาะแถวที่เป็น TRUE ให้ใช้ col IS NULL แทน

คำตอบ

B · ไม่มีแถวเลย เพราะการเปรียบเทียบให้ผลไม่ทราบค่า
16.ฐานข้อมูลและ SQL

คำตอบ: B · TRUE

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

x > 5 เป็น UNKNOWN แต่ OR กับ TRUE เป็น TRUE เสมอ แถวจึงถูกเก็บไว้ ส่วน UNKNOWN AND FALSE ก็เป็น FALSE เช่นกัน

คำตอบ

B · TRUE
17.เครือข่ายคอมพิวเตอร์

คำตอบ: D · 10.1.0.0/16 เพราะเป็นพรีฟิกซ์ที่ตรงกันยาวที่สุด

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

การส่งต่อ IP ใช้การจับคู่พรีฟิกซ์ยาวที่สุด (longest prefix match): ในบรรดาเส้นทางที่ตรงกับปลายทาง จะเลือกเส้นทางที่มีมาสก์ยาวที่สุด

คำตอบ

D · 10.1.0.0/16 เพราะเป็นพรีฟิกซ์ที่ตรงกันยาวที่สุด
18.เครือข่ายคอมพิวเตอร์

คำตอบ: B · สำหรับการตอบกลับที่ใหญ่เกินกว่า UDP และสำหรับการถ่ายโอนโซน

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

หากการตอบกลับ UDP ถูกตัดทอน รีโซลเวอร์ลองใหม่ผ่าน TCP การถ่ายโอนโซนระหว่างเนมเซิร์ฟเวอร์ก็ใช้ TCP เพราะมีข้อมูลมาก

คำตอบ

B · สำหรับการตอบกลับที่ใหญ่เกินกว่า UDP และสำหรับการถ่ายโอนโซน
19.การแบ่งซับเน็ต IPv4

คำตอบ: N = 16

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 − 20 = 4

จำนวนซับเน็ต

N = 24 = 16

คำตอบ

N = 16

แต่ละซับเน็ต /24 มีโฮสต์ที่ใช้ได้ 28 − 2 = 254 โฮสต์

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

คำตอบ: x = 30

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

ขนาดบล็อก

24 = 16

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

เครือข่าย: ⌊23/16⌋·16 = 16
บรอดคาสต์: 16 + 16 − 1 = 31
โฮสต์ที่ใช้ได้: 17 … 30

คำตอบ

x = 30

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