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 1011 0001 menyimpan bilangan bulat bertanda dalam komplemen dua. Berapa nilainya N dalam desimal?
Sebuah sistem harus memberi setiap 1755 item kode biner sendiri dengan panjang yang sama. Berapa jumlah bit b paling sedikit yang dibutuhkan?
Apakah ((a ∨ b) ∧ a) → ¬b tautologi, kontradiksi, atau kontingensi? Klik jawaban Anda.
Berapa dari 16 baris tabel kebenaran yang membuat (q ∨ (r → s)) → ((r ∧ q) ↔ (s ↔ p)) benar? Sebut bilangan ini N.
Pakai peta Karnaugh untuk mencari bentuk jumlah dari hasil kali (SOP) minimal dari F(A, B, C, D) = Σm(0, 2, 5, 7, 9, 10, 12). Berapa suku hasil kali N yang dimilikinya?
Flip-flop JK yang dipicu tepi positif dimulai dengan Q = 0 dan menerima masukan yang ditunjukkan. Klik tepi clock pertama saat Q kembali dari 1 ke 0.
Carilah fungsi totien Euler φ(99), banyaknya bilangan bulat dari 1 sampai 99 yang saling prima dengan 99.
Pakai pengkuadratan berulang untuk mencari 15104 mod 92.
Berapa kompleksitas waktu mengalikan dua matriks n × n dengan triple loop standar?
Berapa waktu eksekusi algoritma Dijkstra dengan binary heap pada graf dengan V simpul dan E sisi?
Sebuah binary tree memiliki root 1 dengan anak kiri 2 dan anak kanan 3; node 2 memiliki anak 4 (kiri) dan 5 (kanan). Bagaimana hasil traversal preorder-nya?
Sebuah dynamic array berlipat dua ketika penuh. Mengapa banyak implementasi hanya mengecilkannya ketika terisi seperempat, bukan separuh?
Sebuah pohon memiliki 4 simpul berderajat 4, 4 simpul berderajat 2, dan semua simpul lainnya adalah daun (derajat 1). Berapa daun L yang dimilikinya?
Algoritma Dijkstra berjalan dari A. Klik simpul yang ditetapkan (dijadikan permanen) pada putaran 5; A sendiri adalah putaran 1.
Mengapa indeks dibuat pada kolom?
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?
NAT (network address translation) terutama digunakan untuk:
Sebuah jalur memiliki bandwidth 100 Mbit/s dan round-trip time 40 ms. Berapa banyak data yang harus sedang dalam perjalanan agar jalur itu terpakai penuh?
Sebuah departemen membutuhkan 686 alamat host dalam satu subnet. Berapa panjang prefiks terpanjang p (subnet terkecil) yang cukup?
Sebuah host memiliki alamat 172.20.201.200/17. Berapa oktet ketiga x alamat broadcast subnetnya?
Jawaban: N = −79
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: b = 11 bit
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: kontingensi
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).
Jawaban: N = 9
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.
Jawaban: N = 5
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: tepi clock 6
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: φ(99) = 60
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: 15104 mod 92 = 85
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: B · O(n³)
Ada n² entri dan masing-masing memerlukan n perkalian, sehingga totalnya n³ operasi.
Jawaban: B · O((V + E) log V)
Ada V operasi extract-min dan sampai E operasi decrease-key, masing-masing O(log V); Fibonacci heap memperbaikinya menjadi O(E + V log V).
Jawaban: B · 1 2 4 5 3
Preorder mengunjungi 1, lalu subpohon kirinya (2, 4, 5), lalu 3; pilihan lainnya adalah inorder, postorder, dan level-order.
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: L = 10
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.
Jalan pintas: L = 2 + Σ (d − 2) atas simpul berderajat d ≥ 3.
Jawaban: D
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: C · Untuk mempercepat pencarian dan join pada kolom tersebut
Indeks (sering berupa B-tree) mempercepat pencarian, tetapi memakan ruang dan memperlambat insert serta update yang harus memeliharanya.
Jawaban: B · 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 · Memungkinkan banyak perangkat beralamat privat berbagi satu alamat IP publik
NAT menulis ulang alamat (dan port) sehingga jaringan privat dapat mengakses internet melalui sejumlah kecil alamat publik.
Jawaban: D · 500 kB
Bandwidth-delay product adalah 100 × 10⁶ bit/s × 0,04 s = 4 × 10⁶ bit = 500 kB. Window pengirim harus sekurang-kurangnya sebesar ini.
Jawaban: p = 22
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).
Jawaban: x = 255
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).
ExamProblems · examproblems.com/courses/computer-science-fundamentals