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 1101 1111 menyimpan bilangan bulat bertanda dalam komplemen dua. Berapa nilainya N dalam desimal?
Sebuah gambar tak terkompresi berukuran 1280 × 720 piksel dengan 16 bit per piksel. Berapa memori M yang dipakainya, dalam KiB (1 KiB = 1024 byte)?
Rumus mana yang ekuivalen secara logis dengan ¬(p ∧ q)? Klik rumus itu.
Pernyataan mana yang ekuivalen dengan ¬∃x (A(x) ∧ B(x)), dengan negasi dipindahkan sampai ke dalam? Klik pernyataan itu.
Sederhanakan F = A′C + BC′ + A′BC′ ke bentuk jumlah dari hasil kali minimal. Berapa literal L yang dimiliki ekspresi yang sudah disederhanakan?
Untuk F(A, B, C, D) = Σm(2, 3, 8, 9, 10, 14, 15) + d(1, 7, 11, 13), dengan d menandai kondisi don’t-care, carilah banyaknya N implikan prima esensial.
Selesaikan 39x ≡ 21 (mod 47). Berikan penyelesaian x dengan 0 < x < 47.
Sebuah kunci RSA memakai p = 43, q = 47, dan e = 17. Dekripsikan teks sandi c = 1487: carilah pesan m.
Berapa kompleksitas waktu algoritma Bellman–Ford pada graf dengan V simpul dan E sisi?
Mengapa algoritma Dijkstra dapat memberikan hasil yang salah ketika sebagian bobot sisi negatif?
Berapa banyak node yang dimiliki perfect binary tree dengan tinggi h, dengan tinggi dihitung dalam sisi?
Sebuah dynamic array berlipat dua ketika penuh. Mengapa banyak implementasi hanya mengecilkannya ketika terisi seperempat, bukan separuh?
Sebuah graf terhubung memiliki 16 simpul dan 26 sisi. Berapa sisi k yang harus dihapus agar tersisa pohon rentang?
Pakai algoritma Dijkstra untuk mencari panjang d(D) lintasan terpendek dari A ke D pada graf berbobot.
Sebuah tabel menyimpan alamat pelanggan di setiap baris pesanan. Mengubah alamat di satu baris tetapi tidak di baris lainnya merupakan contoh:
Apa itu covering index untuk suatu kueri?
Pada lapisan OSI mana switch biasanya bekerja?
Host di VLAN 10 dan VLAN 20 pada switch yang sama tidak dapat berkomunikasi. Apa yang diperlukan?
Sebuah subnet memakai mask 255.255.252.0. Berapa alamat host yang dapat dipakai H?
Sebuah host memiliki alamat 10.20.159.159/27. Berapa oktet keempat x dari alamat host terakhir yang dapat dipakai di subnetnya?
Jawaban: N = −33
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 = 1800 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: ¬p ∨ ¬q
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: L = 4
Aljabar Boolean: aturan yang menyederhanakan ekspresi adalah X + X′ = 1 dan X·X′ = 0, X + X = X, absorpsi X + X·Y = X, aturan penggabungan X·Y + X·Y′ = X, X + X′Y = X + Y, dan teorema konsensus XY + X′Z + YZ = XY + X′Z. Hukum De Morgan mengubah (X·Y)′ menjadi X′ + Y′ dan (X + Y)′ menjadi X′·Y′. Peta Karnaugh menerapkan aturan ini secara grafis: setiap kelompok dua sel bertetangga adalah satu penggunaan XY + XY′ = X.
Jawaban: N = 3
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.
Kelompok terbesar yang dapat dibentuk dari angka 1 dan X.
Jawaban: x = 15
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: m = 540
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: C · O(V × E)
Setiap V − 1 putaran merelaksasi semua E sisi, sehingga hasilnya O(VE); sebagai gantinya, algoritma ini dapat menangani bobot sisi negatif.
Jawaban: C · Simpul ditetapkan final saat diekstraksi, tetapi sisi negatif berikutnya masih dapat memberinya lintasan yang lebih pendek
Langkah greedy bergantung pada bobot nonnegatif agar jarak yang diekstraksi bersifat final; Bellman–Ford dipakai ketika bobot mungkin negatif.
Jawaban: B · 2h+1 − 1
Menjumlahkan 1 + 2 + 4 + ... + 2h menghasilkan 2h+1 − 1; misalnya, tinggi 2 menghasilkan 7 node.
Jawaban: B · Untuk menghindari perubahan ukuran berulang ketika push dan pop bergantian di dekat batas
Mengecilkan pada separuh dapat memicu perubahan ukuran pada setiap operasi dalam urutan seperti itu; jarak antara 1/4 dan penuh menjaga biaya amortisasi O(1).
Jawaban: k = 11
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: d(D) = 5
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.
Setiap baris: simpul yang ditetapkan, jarak finalnya, dan tetangga yang jaraknya membaik.
Jawaban: D · Anomali update
Penyimpanan redundan berarti satu perubahan harus dilakukan di banyak baris; jika ada yang terlewat, data menjadi tidak konsisten, dan normalisasi mencegah hal ini.
Jawaban: C · Indeks yang memuat semua kolom yang diperlukan kueri, sehingga tabel itu sendiri tidak perlu dibaca
Jika semua kolom yang dirujuk ada di indeks, DBMS dapat melakukan index-only scan dan tidak perlu mengambil baris tabel, sehingga menghemat I/O.
Jawaban: B · Data link (lapisan 2)
Switch standar mempelajari alamat MAC dan meneruskan frame di lapisan 2. Switch lapisan 3 juga melakukan routing.
Jawaban: A · Router atau switch lapisan 3 untuk merutekan antar-VLAN
VLAN terisolasi di lapisan 2, sehingga lalu lintas di antaranya harus dirutekan, misalnya oleh router pada trunk ("router on a stick") atau switch lapisan 3.
Jawaban: H = 1022
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 = 158
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