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
Lembar rumus, langkah-langkah metode utama untuk setiap topik, dan 20 soal latihan, dengan pembahasan lengkap di bagian belakang.
Pola 8-bit 1111 0111 menyimpan bilangan bulat bertanda dalam komplemen dua. Berapa nilainya N dalam desimal?
Sebuah gambar tak terkompresi berukuran 1280 × 720 piksel dengan 32 bit per piksel. Berapa memori M yang dipakainya, dalam KiB (1 KiB = 1024 byte)?
Rumus mana yang ekuivalen secara logis dengan a ∧ (c ∨ b)? Klik rumus itu.
Pernyataan mana yang ekuivalen dengan ¬∃x (A(x) ∧ B(x)), dengan negasi dipindahkan sampai ke dalam? Klik pernyataan itu.
Pakai peta Karnaugh untuk mencari bentuk jumlah dari hasil kali (SOP) minimal dari F(A, B, C, D) = Σm(2, 5, 9, 10, 12, 13, 14, 15). Berapa suku hasil kali N yang dimilikinya?
Flip-flop JK yang dipicu tepi positif dimulai dengan Q = 0 dan menerima masukan yang ditunjukkan pada 7 tepi naik clock. Berapa kali N Q berubah keadaan?
Carilah bilangan bulat positif terkecil x dengan x ≡ 2 (mod 5) dan x ≡ 4 (mod 7).
Enkripsikan pesan m = 376 dengan kunci publik RSA (n, e) = (731, 23). Carilah teks sandi c.
Berapa kompleksitas waktu mengalikan dua matriks n × n dengan triple loop standar?
Berapa biaya amortisasi menaikkan (increment) penghitung biner, mengingat satu increment dapat membalik banyak bit?
Dalam binary min-heap yang disimpan dalam array (indeks dimulai dari 0), anak-anak dari node pada indeks i berada di:
Pada hash table dengan open addressing, mengapa penghapusan sering dilakukan dengan penanda "tombstone"?
Ada berapa sirkuit Hamilton H yang berbeda pada graf lengkap K5? Sirkuit yang hanya berbeda dalam simpul awal atau arahnya dianggap sama.
Algoritma Prim membangun pohon rentang minimum mulai dari simpul A. Klik sisi yang ditambahkannya sebagai sisi nomor 4.
Kueri mana yang menampilkan pelanggan yang belum pernah membuat pesanan?
Sebuah tabel memiliki sejuta baris dan kolom Boolean is_active yang bernilai TRUE untuk 95% baris. Mengapa optimizer mungkin mengabaikan indeks pada is_active untuk WHERE is_active = TRUE?
Prefix tunggal mana yang meringkas 192.168.0.0/24 sekaligus 192.168.1.0/24?
Mengapa pihak yang pertama menutup koneksi TCP tetap berada dalam status TIME_WAIT selama dua kali maximum segment lifetime?
Jaringan 192.168.12.0/24 dibagi menjadi subnet /27, bernomor 1, 2, 3, … dari alamat terendah (subnet 1 dimulai di .0). Berapa oktet keempat x alamat jaringan subnet 6?
Sebuah host memiliki alamat 10.20.120.239/30. Berapa angka terakhir (oktet keempat) x dari alamat broadcast subnetnya?
Jawaban: N = −9
Sistem bilangan posisional: setiap digit bernilai digit itu dikali pangkat dari basis. Dalam biner, posisinya bernilai 1, 2, 4, 8, 16, …; dalam heksadesimal 1, 16, 256, …, dengan A–F mewakili 10–15. Dalam komplemen dua 8-bit, bit paling kiri bernilai −128, bukan +128; begitulah bilangan negatif disimpan.
Bit lainnya tetap bernilai positif seperti biasa.
Jawaban: M = 3600 KiB
Sistem bilangan posisional: setiap digit bernilai digit itu dikali pangkat dari basis. Dalam biner, posisinya bernilai 1, 2, 4, 8, 16, …; dalam heksadesimal 1, 16, 256, …, dengan A–F mewakili 10–15. Dalam komplemen dua 8-bit, bit paling kiri bernilai −128, bukan +128; begitulah bilangan negatif disimpan.
Jawaban: (a ∧ c) ∨ (a ∧ b)
Ekuivalensi logis: dua rumus ekuivalen (≡) jika bernilai sama pada setiap baris tabel kebenaran. Tautologi bernilai 1 pada setiap baris, kontradiksi bernilai 0 pada setiap baris, dan kontingensi bukan keduanya. Hukum yang berguna: De Morgan, ¬(a ∧ b) ≡ ¬a ∨ ¬b dan ¬(a ∨ b) ≡ ¬a ∧ ¬b; a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (kontrapositif); ¬(a → b) ≡ a ∧ ¬b; dan hukum distributif, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).
Kolom setelah garis adalah pilihan dalam urutan yang ditampilkan.
Jawaban: ∀x (A(x) → ¬B(x))
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.
Pilihan lain mempertahankan kuantor tanpa perubahan, mengubah urutan kuantor, atau menegasikan rumus di dalam dengan salah.
Jawaban: N = 4
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.
Setiap kelompok adalah persegi panjang berisi 2ᵏ sel; sel di tepi bertetangga dengan sel di tepi seberangnya.
Jawaban: N = 3
Flip-flop dan pencacah: flip-flop hanya berubah pada tepi clock aktif. D menyalin masukannya (Q⁺ = D); T berbalik jika T = 1; JK bertahan untuk 00, reset untuk 01, set untuk 10, dan berbalik untuk 11. Pencacah biner n bit memiliki 2ⁿ keadaan dan menghitung modulo 2ⁿ; pencacah mod-N berurutan 0, 1, …, N − 1 lalu kembali ke 0, dan memerlukan flip-flop sebanyak n terkecil dengan 2ⁿ ≥ N. Setiap tahap pencacah ripple membagi dua frekuensi, sehingga keluaran terakhir pencacah mod-N berjalan pada fclk/N. Pencacah Johnson dari n flip-flop memiliki 2n keadaan, pencacah cincin n.
Flip-flop JK: 00 bertahan, 01 reset (Q = 0), 10 set (Q = 1), 11 berbalik.
Jawaban: x = 32
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).
Jawaban: c = 94
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.
Jawaban: A · O(n³)
Ada n² entri dan masing-masing memerlukan n perkalian, sehingga totalnya n³ operasi.
Jawaban: D · O(1) per increment
Atas n increment, bit ke-i berbalik sekitar n / 2ⁱ kali, sehingga totalnya kurang dari 2n pembalikan, rata-rata O(1) masing-masing.
Jawaban: B · 2i + 1 dan 2i + 2
Untuk array berbasis 0, anak kiri berada di 2i + 1, anak kanan di 2i + 2, dan induk di ⌊(i − 1)/2⌋.
Jawaban: A · Mengosongkan slot dapat memutus urutan probe untuk kunci lain
Jika slot yang dihapus menjadi kosong, pencarian berikutnya dapat berhenti terlalu dini dan melewatkan kunci yang ditempatkan lebih jauh di rantai probe.
Jawaban: H = 12
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.
Jawaban: sisi DE
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.
Jawaban: A · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
Left join mempertahankan semua pelanggan dan mengisi kolom pesanan dengan NULL bila tidak ada kecocokan; IS NULL kemudian memilih tepat pelanggan-pelanggan itu.
Jawaban: A · Sebagian besar baris cocok, sehingga full table scan lebih murah daripada banyak pencarian indeks
Indeks membantu ketika mempersempit pencarian ke sedikit baris; ketika sebagian besar baris memenuhi syarat, pencarian indeks acak lebih mahal daripada membaca tabel secara berurutan.
Jawaban: A · 192.168.0.0/23
0 dan 1 memiliki semua bit oktet ketiga yang sama kecuali yang terakhir, sehingga prefix yang lebih pendek satu bit (/23) mulai dari 192.168.0.0 mencakup keduanya dengan tepat.
Jawaban: C · Agar segmen yang tertunda kedaluwarsa dan ACK terakhir dapat dikirim ulang jika hilang
TIME_WAIT memastikan ACK terakhir yang hilang dapat diulang dan segmen duplikat lama kedaluwarsa sebelum pasangan alamat dan port yang sama digunakan ulang.
Jawaban: x = 160
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).
Jawaban: x = 239
Subnetting IPv4: sebuah alamat terdiri dari 32 bit. Prefiks /p menyatakan berapa bit awal yang mengidentifikasi jaringan; sisa 32 − p bit menomori host. Sebuah subnet memiliki 2³²⁻ᵖ alamat, tetapi yang pertama (alamat jaringan) dan terakhir (alamat broadcast) tidak dapat diberikan ke host, sehingga muat 2³²⁻ᵖ − 2 host. Pengecualian: /31 (tautan point-to-point, RFC 3021) memakai kedua alamatnya yang berjumlah 2 untuk host, dan /32 hanya satu alamat (satu host atau loopback).
ExamProblems · examproblems.com/courses/computer-science-fundamentals