Dasar-Dasar Ilmu Komputer: paket kilat

Lembar rumus, langkah-langkah metode utama untuk setiap topik, dan 20 soal latihan, dengan pembahasan lengkap di bagian belakang.

Soal baruKembali ke mata kuliah

Di jendela cetak, pilih “Simpan sebagai PDF” untuk menyimpan salinan di perangkat Anda.

1Rumus dan metode

Sistem bilangan

Nilai tempat
biner 2k, oktal 8k, heksadesimal 16k
Ke desimal
Σ dk·bk
Dari desimal
bagi dengan basis, baca sisanya dari bawah ke atas
Heksadesimal ↔ biner
satu digit heksadesimal = 4 bit
Komplemen dua
balik bitnya lalu tambahkan 1

Logika proposisional & pembuktian

Baris tabel kebenaran
2ⁿ
Implikasi
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
Negasi implikasi
¬(p → q) ≡ p ∧ ¬q
Bikondisional
p ↔ q ≡ (p → q) ∧ (q → p)
De Morgan
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
Hukum distributif
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Negasi kuantor
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
Modus ponens, modus tollens
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

Metode

  1. Hitung banyaknya variabel yang berbeda: tabel kebenaran memiliki 2ⁿ baris, dimulai dengan semuanya bernilai 1.
  2. Beri setiap subformula kolomnya sendiri dan isi kolom-kolom itu dari dalam ke luar.
  3. Terapkan aturan setiap penghubung: → bernilai 0 hanya untuk 1 → 0, ↔ bernilai 1 jika kedua sisi sama.
  4. Untuk ekuivalensi, bandingkan kolom akhir baris demi baris; untuk suatu argumen, lihat hanya baris yang semua premisnya bernilai 1.
  5. Untuk menegasikan pernyataan berkuantor, pindahkan ¬ ke dalam, tukar ∀ dan ∃, lalu negasikan rumus di dalamnya.

Logika digital: gerbang, peta-K & flip-flop

Gerbang dasar
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Aturan Boolean
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Urutan peta Karnaugh
00, 01, 11, 10 (Gray code)
Kelompok 2ᵏ sel
kehilangan k variabel
Multiplekser 4-ke-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Flip-flop
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Pencacah
n bit: 2ⁿ keadaan; mod-N: n terkecil dengan 2ⁿ ≥ N; fout = fclk/N
Pencacah ripple
fmax = 1/(n·tpd)
Pencacah cincin dan Johnson
n dan 2n keadaan

Metode

  1. Untuk rangkaian, bekerjalah dari masukan ke keluaran satu gerbang demi satu gerbang dan tulis nilai pada setiap kawat, atau tulis ekspresinya dan isi tabel kebenaran.
  2. Untuk penyederhanaan, taruh angka 1 (dan don’t-care sebagai X) ke dalam peta Karnaugh dengan baris dan kolom kode Gray: 00, 01, 11, 10.
  3. Cakup angka 1 dengan kelompok sesedikit dan sebesar mungkin yang berisi 1, 2, 4, 8, atau 16 sel, melingkar melewati tepi; setiap kelompok adalah satu suku hasil kali yang tersusun dari variabel yang tetap konstan. Kelompokkan angka 0 untuk bentuk POS.
  4. Untuk flip-flop dan pencacah, baca masukan pada setiap tepi clock aktif, tulis keadaan setelah setiap tepi, dan ingat bahwa pencacah n bit berputar kembali setelah 2ⁿ keadaan.

Teori bilangan & aritmetika modular

Pembagian dengan sisa
a = q·n + r, 0 ≤ r < n
Euclid
gcd(a, b) = gcd(b, a mod b)
Kelipatan persekutuan terkecil
lcm(a, b) = a·b/gcd(a, b)
Invers
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Kongruensi linear
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Fungsi totien Euler
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Fermat
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

Metode

  1. Reduksi dulu setiap bilangan modulo n; sisa berada di antara 0 dan n − 1.
  2. Untuk FPB, bagi berulang kali dengan algoritma Euclid; sisa taknol terakhir adalah FPB.
  3. Untuk invers, jalankan algoritma yang diperluas dan ambil koefisien a; tambahkan n jika negatif.
  4. Selesaikan a·x ≡ b dengan mengalikan a⁻¹; gabungkan dua kongruensi dengan menuliskan x = r₁ + m₁k.
  5. Untuk pangkat, tuliskan eksponen dalam biner dan kuadratkan berulang; dalam RSA, d = e⁻¹ mod φ(n) dengan φ(n) = (p − 1)(q − 1).

Teori graf

Lema jabat tangan
Σ deg(v) = 2|E|
Graf lengkap
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Graf beraturan
|E| = n·k/2
Pohon dan hutan
|E| = n − 1, |E| = n − c
Daun pohon
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Euler
sirkuit: semua derajat genap; lintasan: tepat 2 derajat ganjil
Sirkuit Hamilton di Kn
(n − 1)!/2
Pembaruan Dijkstra
d(v) = min(d(v), d(u) + w(u, v))
Jalan dengan panjang L
(Mᴸ)ij

Metode

  1. Tuliskan derajat setiap simpul; jumlah derajat sama dengan dua kali banyaknya sisi.
  2. Untuk soal Euler, periksa bahwa graf terhubung dan hitung simpul berderajat ganjil.
  3. Untuk pohon, gunakan n − 1 sisi dan lema jabat tangan.
  4. Untuk Dijkstra, buat tabel jarak sementara dan tetapkan simpul belum tetap dengan jarak terkecil di setiap putaran.
  5. Untuk pohon rentang minimum, urutkan sisi menurut bobot dan lewati setiap sisi yang membentuk siklus (Kruskal), atau tumbuhkan satu pohon dari simpul awal (Prim).

Subnetting IPv4

Host per subnet
2(32 − prefix) − 2 (/31: 2, /32: 1)
Ukuran blok
256 − (mask octet)
Alamat jaringan
IP AND mask
Alamat broadcast
IP OR (NOT mask): semua bit host bernilai 1
Subnet dari n bit pinjaman
2n

2Soal latihan

1.Sistem bilanganSedang
Komplemen dua 8-bit0−12806403201608040201

Atur bit sehingga menyimpan −29 dalam komplemen dua 8-bit. Dibaca sebagai bilangan tak bertanda, berapa nilai pola U?

N = −298 bit
U =
2.Sistem bilanganSulit
klik bit untuk mengaturnya012806403201608040201

Atur bit menjadi hasil 8-bit dari 0100 0001 OR 1100 1011. Berapa nilai hasil R dalam desimal?

0100 0001OR1100 1011
R =
3.Logika proposisional & pembuktianSedang
pqrp → (q ∧ r)¬(p → (q ∧ r))¬(q ∨ (r ∧ p)) ∧ ¬(p → (q ∧ r))111?110?101?100?011?010?001?000?

Pada berapa dari 8 baris tabel kebenarannya ¬(q ∨ (r ∧ p)) ∧ ¬(p → (q ∧ r)) bernilai benar? Sebut bilangan ini N.

¬(q ∨ (r ∧ p)) ∧ ¬(p → (q ∧ r))
N =
4.Logika proposisional & pembuktianSulit
r¬rp ∧ qp

Premis p ∨ q; p → r; q → r diberikan. Kesimpulan mana yang mengikuti dari premis-premis itu? Klik kesimpulan itu.

p ∨ qp → rq → r
  1. 1r
  2. 2¬r
  3. 3p ∧ q
  4. 4p
5.Logika digital: gerbang, peta-K & flip-flopSedang
ABCD0001111000011110111111

Pada peta Karnaugh ini tepat satu angka 1 tidak memiliki angka 1 tetangga, sehingga tetap menjadi kelompok satu sel (minterm penuh berisi empat literal) dalam bentuk SOP minimal. Tetangga melewati tepi peta ikut dihitung. Klik sel itu.

F = Σm(1, 2, 9, 11, 14, 15)
  1. 1AB = 00, CD = 00
  2. 2AB = 00, CD = 01
  3. 3AB = 00, CD = 11
  4. 4AB = 00, CD = 10
  5. 5AB = 01, CD = 00
  6. 6AB = 01, CD = 01
  7. 7AB = 01, CD = 11
  8. 8AB = 01, CD = 10
  9. 9AB = 11, CD = 00
  10. 10AB = 11, CD = 01
  11. 11AB = 11, CD = 11
  12. 12AB = 11, CD = 10
  13. 13AB = 10, CD = 00
  14. 14AB = 10, CD = 01
  15. 15AB = 10, CD = 11
  16. 16AB = 10, CD = 10
6.Logika digital: gerbang, peta-K & flip-flopSulit
ABCD00011110000111100011130204050706012X13115X141819011X10

Carilah bentuk SOP minimal dari F(A, B, C, D) = Σm(1, 3, 8, 9, 15) + d(10, 13, 14), dengan d menandai kondisi don’t-care. Berapa literal L yang dimilikinya?

F(A, B, C, D) = Σm(1, 3, 8, 9, 15) + d(10, 13, 14)
L =
7.Teori bilangan & aritmetika modularSedang

Carilah bilangan bulat positif terkecil x dengan x ≡ 2 (mod 3) dan x ≡ 6 (mod 7).

x ≡ 2 (mod 3)x ≡ 6 (mod 7)
x =
8.Teori bilangan & aritmetika modularSulit
mc = me​ mod n106m = cd​ mod n?(n, e) = (253, 7)d

Sebuah kunci RSA memakai p = 11, q = 23, dan e = 7. Dekripsikan teks sandi c = 106: carilah pesan m.

p = 11q = 23e = 7c = 106
m =
9.Algoritma & kompleksitasSedang

Apa artinya suatu masalah memiliki optimal substructure?

  1. ASolusi optimal dapat dibangun dari solusi optimal submasalahnya
  2. BMasalah itu dapat diselesaikan dalam waktu konstan
  3. CSetiap submasalah memiliki ukuran yang sama
  4. DMasalah itu memiliki tepat satu solusi optimal, yang dimiliki bersama oleh setiap submasalah
10.Algoritma & kompleksitasSulit

Mengapa setiap pencarian berbasis perbandingan dalam array terurut memerlukan Ω(log n) perbandingan pada kasus terburuk?

  1. ASetiap perbandingan memerlukan waktu logaritmik
  2. BBinary search adalah satu-satunya algoritma yang mungkin, dan memerlukan log₂ n perbandingan
  3. CPohon keputusan dengan n kemungkinan hasil harus memiliki kedalaman setidaknya log₂ n
  4. DSetiap elemen harus dibandingkan setidaknya sekali
11.Struktur dataSedang

Struktur data apa yang dipakai untuk memeriksa apakah tanda kurung dalam "{[()]}" seimbang?

  1. AQueue
  2. BBinary search tree
  3. CStack
  4. DHash table
12.Struktur dataSulit

Mengapa elemen tidak dapat begitu saja dihapus dari Bloom filter standar dengan mengosongkan bit-bitnya?

  1. ABit dalam Bloom filter tidak dapat diubah setelah dibuat
  2. BBit-bit itu mungkin juga milik elemen lain, sehingga akan menimbulkan false negative
  3. CBloom filter menyimpan elemen utuh, dan elemen itu tidak dapat ditemukan lagi setelah di-hash
  4. DPenghapusan akan menaikkan tingkat false positive menjadi 100%
13.Teori grafSedang
ABCDEFSirkuit EulerLintasan Euler, bukan sirkuitbukan keduanya

Apakah graf terhubung ini memiliki sirkuit Euler, lintasan Euler yang bukan sirkuit, atau bukan keduanya? Klik jawaban Anda.

|V| = 6|E| = 8
  1. 1Sirkuit Euler
  2. 2Lintasan Euler, bukan sirkuit
  3. 3bukan keduanya
14.Teori grafSulit
4141108494ABCDEF

Pakai algoritma Dijkstra untuk mencari panjang d(F) lintasan terpendek dari A ke F pada graf berbobot.

awal: Aakhir: F
d(F) =
15.Basis data & SQLSedang

Apa itu SQL injection?

  1. ATeknik pencadangan basis data
  2. BCara untuk menambahkan indeks
  3. CSerangan di mana input pengguna mengubah struktur kueri SQL
  4. DTeknik untuk menyisipkan banyak baris dengan cepat memakai satu pernyataan INSERT
16.Basis data & SQLSulit

Apa hasil dari SELECT COUNT(col) FROM t jika semua nilai di col adalah NULL dan tabel memiliki 10 baris?

  1. A10
  2. BNULL
  3. C0
  4. DError
17.Jaringan komputerSedang

Apa perbedaan stateful firewall dengan packet filter sederhana?

  1. AStateful firewall melacak koneksi dan mengizinkan balasan yang termasuk sesi yang sudah terjalin
  2. BStateful firewall hanya memeriksa alamat MAC setiap frame
  3. CMemblokir semua lalu lintas masuk tanpa pengecualian, termasuk balasan atas permintaan keluar
  4. DStateful firewall mengenkripsi setiap paket yang diteruskannya
18.Jaringan komputerSulit

Menurut rumus Nyquist, berapa laju bit maksimum kanal 3 kHz tanpa derau yang menggunakan 4 tingkat sinyal?

  1. A12 kbit/s
  2. B6 kbit/s
  3. C24 kbit/s
  4. D3 kbit/s
19.Subnetting IPv4Sedang
255.255.255.19211111111111111111111111111000000bit jaringanbit host

Sebuah subnet memakai mask 255.255.255.192. Berapa alamat host yang dapat dipakai H?

255.255.255.192
H =
20.Subnetting IPv4Sulit
oktet ketiga = 46012806413201618141201jaringanhost

Sebuah host memiliki alamat 172.20.46.79/18. Berapa oktet ketiga x alamat broadcast subnetnya?

172.20.46.79/18
x =

3Larutan

1.Sistem bilangan

Jawaban: U = 227

Mengatur bit: setiap bit bernilai pangkat dua (128, 64, …, 1). Satu digit heksa tepat empat bit, dan pada komplemen dua 8-bit bit paling kiri bernilai −128. Operasi bitwise bekerja pada setiap posisi bit secara terpisah.

Balik dan tambah satu

29 = 0001 1101
dibalik: 1110 0010
+1 → 1110 0011

Baca sebagai tak bertanda

1110 0011₂ = 256 − 29 = 227

Jawaban

U = 227
2.Sistem bilangan

Jawaban: R = 203

Mengatur bit: setiap bit bernilai pangkat dua (128, 64, …, 1). Satu digit heksa tepat empat bit, dan pada komplemen dua 8-bit bit paling kiri bernilai −128. Operasi bitwise bekerja pada setiap posisi bit secara terpisah.

Bit demi bit

OR menghasilkan 1 jika paling sedikit satu bit adalah 1.

0100 0001
OR 1100 1011
= 1100 1011

Nilai hasil

1100 1011₂ = 203

Jawaban

R = 203
3.Logika proposisional & pembuktian

Jawaban: N = 1

Tabel kebenaran: rumus dengan n variabel berbeda memiliki 2ⁿ baris, satu untuk setiap kombinasi nilai kebenaran (1 = benar, 0 = salah). Bekerjalah dari dalam ke luar dan beri setiap subformula kolomnya sendiri. ¬a membalik nilainya; a ∧ b bernilai 1 hanya jika keduanya 1; a ∨ b bernilai 0 hanya jika keduanya 0; a → b bernilai 0 hanya jika a = 1 dan b = 0; a ↔ b bernilai 1 jika kedua sisi sama.

Tabel kebenaran baris demi baris

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

Hitung baris bernilai 1

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

Jawaban

N = 1
4.Logika proposisional & pembuktian

Jawaban: r

Kuantor dan argumen: ¬∀x P(x) ≡ ∃x ¬P(x) dan ¬∃x P(x) ≡ ∀x ¬P(x). Pindahkan negasi ke dalam, tukar setiap kuantor yang dilewatinya, dan negasikan rumus di dalamnya dengan hukum proposisional, seperti ¬(a → b) ≡ a ∧ ¬b. Sebuah argumen valid jika kesimpulannya bernilai 1 pada setiap baris yang semua premisnya bernilai 1. Satu baris dengan premis benar dan kesimpulan salah adalah contoh penyangkal dan menunjukkan bahwa argumen itu tidak valid.

Baris dengan semua premis benar

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

Kesimpulan

r (pembuktian dengan kasus)

Jawaban

r
5.Logika digital: gerbang, peta-K & flip-flop

Jawaban: AB = 00, CD = 10

Peta Karnaugh: sel-sel diurutkan dalam kode Gray (00, 01, 11, 10), sehingga sel bertetangga, termasuk yang melewati tepi, berbeda tepat pada satu variabel. Kelompokkan angka 1 dalam persegi panjang berisi 1, 2, 4, 8, atau 16 sel, sebesar mungkin dan sesedikit mungkin, sampai setiap angka 1 tercakup. Setiap kelompok adalah satu suku hasil kali: variabel yang tetap konstan di dalamnya. Kelompok 2ᵏ sel kehilangan k variabel. Don’t-care (X) boleh dipakai untuk memperbesar kelompok tetapi tidak harus dicakup. Mengelompokkan angka 0 sebagai gantinya menghasilkan bentuk POS minimal.

Tetangga setiap angka 1

Angka 1 dengan tetangga angka 1 dapat bergabung dalam kelompok dua atau lebih.

m2: m3, m0, m6, m10 → 0
ABCD0001111000011110111111

Angka 1 yang terisolasi

m2 = A′B′CD′ → AB = 00, CD = 10

Jawaban

AB = 00, CD = 10
6.Logika digital: gerbang, peta-K & flip-flop

Jawaban: L = 9

Peta Karnaugh: sel-sel diurutkan dalam kode Gray (00, 01, 11, 10), sehingga sel bertetangga, termasuk yang melewati tepi, berbeda tepat pada satu variabel. Kelompokkan angka 1 dalam persegi panjang berisi 1, 2, 4, 8, atau 16 sel, sebesar mungkin dan sesedikit mungkin, sampai setiap angka 1 tercakup. Setiap kelompok adalah satu suku hasil kali: variabel yang tetap konstan di dalamnya. Kelompok 2ᵏ sel kehilangan k variabel. Don’t-care (X) boleh dipakai untuk memperbesar kelompok tetapi tidak harus dicakup. Mengelompokkan angka 0 sebagai gantinya menghasilkan bentuk POS minimal.

Implikan prima

Kelompok terbesar yang dapat dibentuk dari angka 1 dan X.

B′C′D, AC′D, A′B′D, AB′D′, ABD, AB′C′, ABC
ABCD00011110000111100011130204050706012X13115X141819011X10

Cakupan minimal

F = A′B′D + ABD + AB′C′
L = 9

Jawaban

L = 9

Ada pengelompokan lain dengan ukuran sama; banyaknya suku dan literalnya sama.

7.Teori bilangan & aritmetika modular

Jawaban: x = 20

Invers dan kongruensi: a memiliki invers modulo n tepat ketika FPB(a, n) = 1. Algoritma Euclid yang diperluas menuliskan 1 = s·n + t·a, dan kemudian a⁻¹ ≡ t (mod n). Kongruensi a·x ≡ b (mod n) dengan FPB(a, n) = 1 memiliki penyelesaian x ≡ a⁻¹·b. Dua kongruensi x ≡ r₁ (mod m₁) dan x ≡ r₂ (mod m₂) dengan modulus saling prima memiliki satu penyelesaian modulo m₁·m₂ (teorema sisa Cina). φ(n) Euler menghitung bilangan dari 1 sampai n yang saling prima dengan n: φ(n) = n·∏(1 − 1/p).

Kongruensi pertama

x = 2 + 3k

Kongruensi kedua

2 + 3k ≡ 6 (mod 7) → 3k ≡ 4 (mod 7)
k ≡ 5·4 ≡ 6 (mod 7)

Hasil

x = 2 + 3·6 = 20
x = 20
periksa: 20 mod 3 = 2, 20 mod 7 = 6

Jawaban

x = 20
8.Teori bilangan & aritmetika modular

Jawaban: m = 79

Pangkat modular dan RSA: hitung aᵏ mod n dengan pengkuadratan berulang: tulis k dalam biner, kuadratkan, reduksi setelah setiap langkah, dan kalikan pangkat yang bitnya 1. Fermat: aᵖ⁻¹ ≡ 1 (mod p) untuk bilangan prima p yang tidak membagi a, sehingga eksponen dapat direduksi modulo p − 1. RSA: pilih bilangan prima p dan q, n = p·q dan φ(n) = (p − 1)(q − 1); eksponen publik e saling prima dengan φ(n), dan eksponen privat adalah d = e⁻¹ mod φ(n). Enkripsi dengan c = mᵉ mod n dan dekripsi dengan m = cᵈ mod n.

Eksponen privat

n = 253, φ(n) = 220
d = 7−1 mod 220 = 63

Dekripsi dengan pengkuadratan berulang

63 = 32 + 16 + 8 + 4 + 2 + 1
1061 ≡ 106 (mod 253)
1062 ≡ 104 (mod 253)
1064 ≡ 190 (mod 253)
1068 ≡ 174 (mod 253)
10616 ≡ 169 (mod 253)
10632 ≡ 225 (mod 253)
10663 ≡ 106·104·190·174·169·225 ≡ 79 (mod 253)

Pesan

m = 79
periksa: 797 mod 253 = 106

Jawaban

m = 79
9.Algoritma & kompleksitas

Jawaban: A · Solusi optimal dapat dibangun dari solusi optimal submasalahnya

Mengapa ini jawabannya

Optimal substructure diperlukan agar algoritma greedy maupun dynamic programming menghasilkan jawaban yang benar.

Jawaban

A · Solusi optimal dapat dibangun dari solusi optimal submasalahnya
10.Algoritma & kompleksitas

Jawaban: C · Pohon keputusan dengan n kemungkinan hasil harus memiliki kedalaman setidaknya log₂ n

Mengapa ini jawabannya

Setiap perbandingan paling banyak membagi dua himpunan kemungkinan yang tersisa, sehingga membedakan n posisi memerlukan setidaknya log₂ n perbandingan.

Jawaban

C · Pohon keputusan dengan n kemungkinan hasil harus memiliki kedalaman setidaknya log₂ n
11.Struktur data

Jawaban: C · Stack

Mengapa ini jawabannya

Push setiap kurung buka dan pop ketika muncul kurung tutup; kurung tutup harus cocok dengan kurung yang di-pop dan stack harus kosong di akhir.

Jawaban

C · Stack
12.Struktur data

Jawaban: B · Bit-bit itu mungkin juga milik elemen lain, sehingga akan menimbulkan false negative

Mengapa ini jawabannya

Mengosongkan bit yang dipakai bersama akan membuat elemen lain tampak tidak ada; counting Bloom filter menyimpan penghitung alih-alih bit agar penghapusan dimungkinkan.

Jawaban

B · Bit-bit itu mungkin juga milik elemen lain, sehingga akan menimbulkan false negative
13.Teori graf

Jawaban: bukan keduanya

Euler, Hamilton, dan pohon: graf terhubung memiliki sirkuit Euler (setiap sisi sekali, kembali ke awal) jika setiap simpul berderajat genap, dan lintasan Euler yang bukan sirkuit jika tepat dua simpul berderajat ganjil; lintasan itu berjalan dari satu simpul ganjil ke simpul ganjil lainnya. Sirkuit Hamilton mengunjungi setiap simpul sekali; Kn memiliki (n − 1)!/2 sirkuit seperti itu. Pohon dengan n simpul memiliki n − 1 sisi, dan graf terhubung dengan m sisi masih memiliki pohon rentang setelah m − n + 1 sisi dihapus.

Derajat

deg(A) = 2, deg(B) = 3, deg(C) = 3, deg(D) = 3, deg(E) = 3, deg(F) = 2

Simpul ganjil

B, C, D, E → 4
bukan keduanya

Jawaban

bukan keduanya
14.Teori graf

Jawaban: d(F) = 17

Lintasan terpendek dan pohon rentang: algoritma Dijkstra menetapkan satu simpul per putaran: simpul belum tetap dengan jarak sementara terkecil. Jaraknya lalu final, dan setiap tetangga v mendapat d(v) = min(d(v), d(u) + w(u, v)). Algoritma Kruskal membangun pohon rentang minimum dengan mengambil sisi dari yang ringan ke berat dan melewati sisi yang akan membentuk siklus; algoritma Prim menumbuhkan satu pohon dari simpul awal dengan selalu menambahkan sisi teringan yang keluar dari pohon. Pohon rentang dengan n simpul memiliki n − 1 sisi.

Dijkstra putaran demi putaran

Setiap baris: simpul yang ditetapkan, jarak finalnya, dan tetangga yang jaraknya membaik.

A (0): B: 4, C: 14
B (4): C: 5, E: 8
C (5)
E (8): D: 16, F: 17
D (16)
F (17)

Lintasan terpendek

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

Jawaban

d(F) = 17
15.Basis data & SQL

Jawaban: C · Serangan di mana input pengguna mengubah struktur kueri SQL

Mengapa ini jawabannya

Jika input pengguna digabungkan langsung ke dalam SQL, penyerang dapat menyisipkan perintah. Prepared statement dengan parameter memisahkan data dari kode.

Jawaban

C · Serangan di mana input pengguna mengubah struktur kueri SQL
16.Basis data & SQL

Jawaban: C · 0

Mengapa ini jawabannya

COUNT(col) menghitung nilai non-NULL, sehingga hasilnya 0; COUNT(*) akan mengembalikan 10.

Jawaban

C · 0
17.Jaringan komputer

Jawaban: A · Stateful firewall melacak koneksi dan mengizinkan balasan yang termasuk sesi yang sudah terjalin

Mengapa ini jawabannya

Stateful firewall menyimpan tabel koneksi aktif, sehingga lalu lintas balasan diizinkan secara otomatis. Filter stateless menilai setiap paket secara terpisah.

Jawaban

A · Stateful firewall melacak koneksi dan mengizinkan balasan yang termasuk sesi yang sudah terjalin
18.Jaringan komputer

Jawaban: A · 12 kbit/s

Mengapa ini jawabannya

2 × 3000 × log₂ 4 = 2 × 3000 × 2 = 12,000 bit/s. Lebih banyak tingkat menaikkan laju, tetapi derau membatasi berapa banyak yang dapat dibedakan.

Jawaban

A · 12 kbit/s
19.Subnetting IPv4

Jawaban: H = 62

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

Panjang prefiks

255.255.255.192 = /26

Host yang dapat dipakai

26 − 2 = 62

Jawaban

H = 62
20.Subnetting IPv4

Jawaban: x = 63

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

Ukuran blok di oktet ketiga

26 = 64

Subnet host ini

jaringan: 172.20.0.0
broadcast: 172.20.63.255

Jawaban

x = 63

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