| Kandidat harus mampu: | Catatan dan panduan |
|---|---|
| Tunjukkan pemahaman tentang besaran biner dan perbedaan antara awalan biner dan awalan desimal | Pahami perbedaan dan gunakan: • kibi dan kilo • mebi dan mega • gibi dan giga • tebi dan tera |
| Tunjukkan pemahaman tentang berbagai sistem bilangan | Gunakan basis bilangan biner, desimal, heksadesimal serta representasi Binary Coded Decimal (BCD), complement satu, dan complement dua untuk bilangan biner |
| Konversi nilai integer dari satu basis bilangan/representasi ke representasi lainnya | |
| Lakukan penjumlahan dan pengurangan biner | Menggunakan integer biner positif dan negatif |
| Tunjukkan pemahaman tentang bagaimana overflow dapat terjadi | |
| Jelaskan aplikasi praktis di mana Binary Coded Decimal (BCD) dan Heksadesimal digunakan | |
| Tunjukkan pemahaman dan mampu merepresentasikan data karakter dalam bentuk biner internalnya, tergantung pada set karakter yang digunakan | Siswa diharapkan familiar dengan ASCII (American Standard Code for Information Interchange), ASCII diperluas, dan Unicode. Siswa tidak diharuskan menghafal kode karakter tertentu |
Representasi informasi
Ilmu Komputer A-Level · Topik 1
22:30
Sistem Angka & Data
Foto ini. Lagu ini. Video ini. Nama Anda, pesan Anda, setiap file di setiap perangkat—di dalam komputer, semuanya hanyalah nol dan satu.…
Narasi bahasa Inggris · Subtitle bahasa Inggris + 中文 disematkan langsung
1.1
Sistem angka
Silabus
Sumber: Silabus Cambridge International
Tiga sistem angka yang harus Anda gunakan:
- denary (desimal, basis 10) — menggunakan digit 0–9. Nilai tempatnya adalah pangkat dari sepuluh.
- binary (basis 2) — menggunakan 0 dan 1. Nilai tempatnya adalah pangkat dari dua. Setiap byte terdiri dari 8 bit.
- hexadecimal (basis 16) — menggunakan 0–9 kemudian A–F untuk 10–15. Setiap digit heks digit mewakili tepat 4 bit.

Konversi
Denary → biner: terus bagi dengan 2 dan catat sisa, baca dari bawah ke atas. Atau kurangi nilai tempat terbesar (pangkat 2) yang muat.
Contoh: $558_{10}$: $558 = 512 + 32 + 8 + 4 + 2 = 2^{9} + 2^{5} + 2^{3} + 2^{2} + 2^{1}$. Dalam 12 bit: 0010 0010 1110.
Biner → heksadesimal: Kelompokkan bit menjadi nibble (4 bit) dari sebelah kanan dan konversikan masing-masing. 0010 0010 1110 → 2 2 E → 22E.
Heks → biner: ganti setiap digit heks dengan pola 4-bit-nya. Heks → denary: kalikan setiap digit dengan nilai tempatnya. 22E $= 2 \times 256 + 2 \times 16 + 14 = 558$.
Contoh terpecahkan. Konversi denary 200 ke biner 8-bit, lalu ke heksadesimal.
$200 = 128 + 64 + 8$, jadi bilangan binernya adalah 11001000. Dalam bentuk nibble, 1100 1000 $= 12$ dan $8$, yaitu $\text{C}$ dan $8$, sehingga bilangan heksadesimalnya adalah C8.

Berapa banyak bit?
Soal ujian menetapkan lebar register (8, 12 atau 16 bit). Isilah dengan nol di depan hingga lebar tersebut: $558$ dalam 12 bit adalah 0010 0010 1110, bukan 10 0010 1110.
Untuk menemukan jumlah minimum bit yang dapat menyimpan suatu nilai, tanyakan nilai tempat mana yang Anda butuhkan:
- bilangan bulat tak bertanda dari $0$ hingga $2^{n} - 1$ memerlukan $n$ bit: $200$ memerlukan 8 bit (yang tertinggi adalah $255$), $1000$ memerlukan 10 bit (yang tertinggi adalah $1023$), $16$ memerlukan 5 bit (4 bit berhenti di $15$).
- bilangan bulat dua's-complement bertanda dari $-2^{n-1}$ hingga $2^{n-1} - 1$ membutuhkan $n$ bit: $-200$ membutuhkan 9 bit, karena 8 bit hanya mencapai $-128$.
- satu digit heksadesimal memerlukan 4 bit, satu digit BCD memerlukan 4 bit, dan satu karakter ASCII memerlukan 7 bit (8 bit untuk extended ASCII).
Awalan biner vs desimal
Dua keluarga awalan terlihat mirip tetapi berbeda — desimal (pangkat 10) dan biner (pangkat 2):
| Desimal (SI) | Biner (memori) |
|---|---|
| kilo $= 10^{3}$ | kibi (Ki) $= 2^{10} = 1024$ |
| mega $= 10^{6}$ | mebi (Mi) $= 2^{20}$ |
| giga $= 10^{9}$ | gibi (Gi) $= 2^{30}$ |
| tera $= 10^{12}$ | tebi (Ti) $= 2^{40}$ |
Jadi tebibyte (TiB) sedikit lebih besar daripada terabyte (TB). Drive "1 TB" berisi $10^{12}$ byte, tetapi sistem operasi yang melaporkan dalam TiB menampilkan angka yang lebih kecil.
Binier, desimal, dan heksadesimal
Ketik angka dan lihat dalam biner, desimal, dan heksadesimal sekaligus — dan bagaimana nilai tempatnya bertambah.
| English | Bahasa Indonesia |
|---|---|
| number system/ˈnʌmbə ˈsɪstəm/ | sistem bilangan |
| binary/ˈbaɪnəri/ | biner |
| denary/ˈdiːnəri/ | desimal |
| digit/ˈdɪdʒɪt/ | digit |
| place value/pleɪs ˈvæljuː/ | nilai tempat |
| byte/baɪt/ | byte |
| bit/bɪt/ | bit |
| hexadecimal/ˌheksəˈdesɪml/ | heksadesimal |
| nibble/ˈnɪbl/ | nibble |
| register width/ˈredʒɪstə wɪtθ/ | lebar register |
| register/ˈredʒɪstə/ | register |
| BCD/ˌbiː siː ˈdiː/ | BCD |
1.1
Aritmatika biner
Penjumlahan biner
Jumlahkan kolom per kolom dari kanan, carry seperti dalam desimal:
| Bit A | Bit B | Carry in | Sum bit | Carry out |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
Overflow terjadi ketika hasil membutuhkan lebih banyak bit daripada yang dapat ditampung oleh register — carry-out dari kolom paling kiri adalah bit overflow.
Contoh terpecahkan. Jumlahkan bilangan bulat tak-bertanda 8-bit $10110101$ dan $01101100$, serta berikan komentar mengenai hasilnya.
$10110101 + 01101100 = 1\,00100001$. Jawaban membutuhkan 9 bit, sehingga tidak muat dalam register 8-bit: telah terjadi overflow. Jawaban lengkap harus menyebutkan kesalahan dan alasannya, menggunakan ukuran kata yang diberikan soal: "Overflow: hasil yang sebenarnya ($289$) lebih besar dari nilai maksimum yang dapat ditampung register 8-bit ($255$), sehingga carry-out dari bit paling signifikan hilang dan hasil yang tersimpan ($00100001 = 33$) salah."
Pengurangan biner
Cara biasanya adalah penjumlahan komplemen dua: untuk melakukan $A - B$, buat komplemen dua dari $B$ (balik setiap bit dan tambahkan 1), lalu jumlahkan, dan buang carry-out terakhir.
Untuk mengurangkan $00011110$ dari $01100100$ (8-bit tak-bertanda):
- komplemen dua dari $00011110$: balik → $11100001$, tambah 1 → $11100010$.
- jumlahkan ke $01100100$: hasil $1\,01000110$ (9 bit) — buang angka 1 di depan → $01000110 = 70_{10}$. Cek: $100 - 30 = 70$. ✓
Bilangan bulat bertanda komplemen dua
Dalam bilangan komplemen dua $n$-bit:
- bit paling signifikan (MSB) adalah bit tanda: 0 = positif, 1 = negatif.
- untuk membaca bilangan negatif: balik setiap bit, tambahkan 1, lalu negasikan.
Jadi $11100010$ bernilai negatif; inversi → $00011101$, tambahkan 1 → $00011110 = 30$, sehingga nilainya adalah $-30$. Ini adalah bilangan bulat bertanda (berbeda dengan yang tak-bertanda). Rentang untuk $n$ bit adalah $-2^{n-1}$ hingga $+2^{n-1} - 1$; untuk 8 bit, $-128$ ($10000000$) hingga $+127$ ($01111111$).
Bit yang sama berarti bilangan berbeda tergantung pada interpretasi yang disepakati. Sebagai bilangan tak-beranda, setiap bit adalah tempat nilai, sehingga 8 bit berkisar dari $0$ hingga $255$; sebagai bilangan bulat bertanda komplemen dua, bit teratas adalah tanda, sehingga 8 bit yang sama berkisar dari $-128$ hingga $+127$. Pola $11111111$ dibaca sebagai $255$ dengan satu cara dan $-1$ dengan cara lain — tidak ada dalam bit itu sendiri yang mengatakan mana yang benar.
Byte yang sama dibaca sebagai tak-beranda dan bertanda: hanya interpretasi yang disepakati yang membedakan mereka
Komplemen dua 8-bit: bit tanda membagi rentang menjadi negatif ($-128$ hingga $-1$) dan positif ($0$ hingga $127$)
Contoh terpecahkan. Nilai desimal berapakah bilangan komplemen dua 8-bit $10110100$ merepresentasikan?
MSB adalah 1, jadi ini negatif. Balik → $01001011$, tambah 1 → $01001100 = 76$, jadi nilainya $-76$. Cek dengan tempat nilai: $-128 + 32 + 16 + 4 = -76$.
Contoh terpecahkan. Tulis $-108$ sebagai bilangan bulat komplemen dua 12-bit.
Mulai dari $+108$ dalam 12 bit: $108 = 64 + 32 + 8 + 4$, jadi 0000 0110 1100. Balik setiap bit: 1111 1001 0011. Tambah 1: 1111 1001 0100. Cek dengan tempat nilai, di mana bit teratas bernilai $-2^{11} = -2048$: $-2048 + 1024 + 512 + 256 + 128 + 16 + 4 = -108$. ✓
Untuk 12 bit, rentangnya adalah $-2048$ (1000 0000 0000) hingga $+2047$ (0111 1111 1111). Soal yang meminta nilai terkecil dan terbesar menginginkan dua pola ini, jadi hafalkan aturannya: bilangan paling negatif adalah 1 diikuti oleh nol; bilangan paling positif adalah 0 diikuti oleh satu.
Geser aritmatika memindahkan setiap bit ke kiri atau kanan tetapi mempertahankan tanda: geser ke kanan satu tempat menggandakan nilai dan menyalin bit tanda ke ruang kosong di kiri, sehingga bilangan negatif tetap negatif (1111 1001 0100 digeser ke kanan tiga tempat menjadi 1111 1111 0010, yaitu $-14$: $-108 / 8 = -13.5$, dan geser ke kanan dibulatkan ke bawah). Geser ke kiri menggandakan nilai. Geser termasuk dalam set instruksi assembly di topik 4, tetapi soal ini diajukan dengan perhitungan angka di sini.
Overflow dalam aritmatika bertanda terjadi ketika hasil yang sebenarnya berada di luar rentang ini — terlihat ketika bit tanda berubah secara salah (dua positif menghasilkan negatif, atau dua negatif menghasilkan positif).
Komplemen satu
Sebelum komplemen dua, skema lama yang disebut komplemen satu merepresentasikan bilangan negatif dengan cukup membalikkan setiap bit dari bilangan positif — tidak ada langkah "tambah 1".
- $+30 = 00011110$, jadi dalam komplemen satu $-30 = 11100001$ (hanya inversnya).
- Kelemahan: memiliki dua nol — $00000000$ ($+0$) dan $11111111$ ($-0$) — yang membuang pola bit dan membuat aritmatika canggung.
Komplemen dua (balik dan tambah 1) menghilangkan nol negatif: memiliki satu nol dan memungkinkan penjumlahan dan pengurangan menggunakan sirkuit yang sama. Itulah sebabnya komputer modern menyimpan bilangan bulat bertanda dalam komplemen dua, bukan komplemen satu.
Biner & bilangan bulat bertanda
byte = Σ nilai tempat
Lihat bagaimana pola 8-bit memetakan ke angka (dan bagaimana cara melampaui 255).
Bit bertanda dua komplemen
Bit paling kiri memiliki nilai tempat negatif. Balik setiap bit — atau tekan Negate (balik setiap bit, lalu tambah 1) — dan lihat perubahan nilai bertandanya.
| English | Bahasa Indonesia |
|---|---|
| unsigned/ʌnˈsaɪnd/ | tidak bertanda |
| overflow/ˌəʊvəˈfləʊ/ | overflow |
| most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ | bit paling signifikan |
| two's complement/tuːz ˈkɒmplɪmənt/ | komplemen dua |
| signed integer/saɪnd ˈɪntɪdʒə/ | bilangan bulat bertanda |
| sign bit/saɪn bɪt/ | bit tanda |
| arithmetic shift/ˌærɪθˈmetɪk ʃɪft/ | geser aritmatika |
| one's complement/wʌnz ˈkɒmplɪmənt/ | komplemen satu |
| 7-segment display/ˈsevən ˈseɡmənt dɪˈspleɪ/ | layar 7-segment |
| memory address/ˈmeməri əˈdres/ | alamat memori |
| code point/kəʊd pɔɪnt/ | titik kode |
| character set/ˈkærɪktə set/ | set karakter |
| encoding/enˈkəʊdɪŋ/ | pengkodean |
1.1
Desimal Kode Binari (BCD)
Dalam BCD, setiap digit desimal ditulis sebagai polanya sendiri 4-bit. Bilangan $93$ adalah 1001 0011 dalam BCD — bukan biner 93 ($01011101$). Setiap nibble hanya menggunakan 0–9; pola $1010$–$1111$ tidak valid.
Pembacaan BCD: 0010 0111 0101 → 2, 7, 5 → 275.
Penggunaan: kalkulator, jam digital, dan perangkat yang menampilkan digit desimal — setiap digit menggerakkan layar 7-segmen. Kode mata uang sering menggunakan BCD untuk menghindari kesalahan pembulatan saat mengonversi pecahan seperti 0,1 ke biner.
Jawaban "justifikasi" harus menghubungkan penggunaan dengan sifat BCD: setiap digit desimal memiliki 4 bit sendiri, sehingga digit dapat dikirim langsung ke layarnya, atau ditambahkan digit per digit, tanpa konversi seluruh bilangan; dan pecahan desimal seperti $0.10$ disimpan secara eksak, yang tidak dapat dilakukan oleh pecahan biner.

1.1
Heksadesimal — penggunaan praktis
Heks adalah cara ringkas menulis biner (1 digit heks = 4 bit):

- alamat memori dalam pemrograman tingkat rendah —
0x7FFE. - nilai warna dalam HTML/CSS —
#FF8800. - alamat MAC —
AC:DE:48:00:11:22.
Hex tidak mengubah data yang disimpan — ia hanya membuat biner lebih mudah dipahami manusia.
1.1
Kode karakter
Komputer menyimpan teks sebagai angka; setiap karakter memiliki titik kode numerik yang ditetapkan oleh set karakter.
ASCII
- ASCII menggunakan 7 bit — 128 titik kode. Huruf Latin dasar, digit, tanda baca, dan kode kontrol.
- Extended ASCII menggunakan 8 bit — 256 titik kode; 128 bawah sesuai dengan ASCII, 128 atas bervariasi berdasarkan wilayah.

Unicode
- Unicode adalah set karakter universal yang mencakup hampir semua aksara, serta simbol dan emoji.
- pengkodean umum: UTF-8 (1–4 byte, kompatibel ASCII), UTF-16 (2 atau 4 byte), UTF-32 (tetap 4 byte).
Mengapa Unicode mengungguli ASCII
- merepresentasikan jauh lebih banyak karakter (setiap aksara, emoji); ASCII hanya mencakup bahasa Inggris dasar.
- file bersifat portabel tanpa kebingungan halaman kode, dan memungkinkan teks multibahasa dalam satu dokumen.
- kompromi: file Unicode biasanya lebih besar untuk teks bahasa Inggris saja.
Ketika soal meminta perbedaan, berikan dalam pasangan dengan angka: ASCII menggunakan 7 bit (extended ASCII 8), sehingga 128 (256) karakter; Unicode menggunakan hingga 32 bit (UTF-8 menggunakan 1 sampai 4 byte), sehingga lebih dari satu juta titik kode. ASCII hanya mencakup bahasa Inggris dasar; Unicode mencakup setiap aksara, dan 128 titik kode pertamanya adalah ASCII. Dalam UTF-8 huruf Inggris masih memakan 1 byte, sehingga nama file bahasa Inggris 40 huruf berukuran 40 byte baik di ASCII maupun UTF-8, sementara karakter Tionghoa memakan 3 byte.
Sebuah karakter disimpan sebagai angka
Setiap karakter memiliki kode angka — 'A' adalah 65. Balik bit untuk melihat kode tersebut dalam biner dan heksadesimal, persis seperti cara komputer menyimpannya.
1.2
Gambar bitmap
Silabus
| Kandidat harus mampu: | Catatan dan panduan |
|---|---|
| Tunjukkan pemahaman tentang bagaimana data untuk gambar bitmap dienkripsi | Gunakan dan pahami istilah: pixel, header file, resolusi gambar, resolusi layar, kedalaman warna / bit depth |
| Lakukan perhitungan untuk memperkirakan ukuran file untuk gambar bitmap | |
| Tunjukkan pemahaman tentang efek perubahan elemen pada gambar bitmap terhadap kualitas gambar dan ukuran file | Gunakan istilah: resolusi gambar, kedalaman warna / bit depth |
| Tunjukkan pemahaman tentang bagaimana data untuk grafik vektor dienkripsi | Gunakan istilah: objek gambar, properti, daftar gambar |
| Justifikasi penggunaan gambar bitmap atau grafik vektor untuk tugas tertentu | |
| Tunjukkan pemahaman tentang bagaimana suara direpresentasikan dan dienkripsi | Gunakan istilah: penyampelan, tingkat penyampelan, resolusi penyampelan, data analog dan data digital |
| Tunjukkan pemahaman tentang dampak perubahan tingkat penyampelan dan resolusi | Termasuk dampak terhadap ukuran file dan akurasi |
Sumber: Silabus Cambridge International
Gambar bitmap (juga disebut gambar bitmapped) menyimpan warna setiap pixel dalam sebuah grid. Di awal file, header file mencatat metadata gambar — lebar, tinggi, dan kedalaman warnanya — agar perangkat lunak tahu bagaimana membaca data pixel yang mengikuti.
- resolusi gambar: ukuran bitmap itu sendiri, lebar × tinggi dalam pixel (mis. 1920 × 1080).
- resolusi layar: lebar × tinggi yang dapat ditampilkan oleh layar. Jika resolusi gambar lebih besar dari layar, gambar tersebut diperkecil agar muat; gambar beresolusi rendah terlihat kotak-kotak saat diregangkan ke layar beresolusi lebih tinggi.
- kedalaman warna (kedalaman bit): bit per pixel. 1 bit → hitam/putih; 8 bit → 256 warna; 24 bit → 16,7 juta ("warna asli").

Ukuran file
Bagi dengan 8 untuk byte, bagi dengan 1024 untuk KiB, dll. Contoh: gambar $3000 \times 2000$ pada 24 bpp adalah $3000 \times 2000 \times 24 = 1.44 \times 10^{8}$ bit $\approx 17.2\ \text{MiB}$.

Nyatakan satuan yang Anda gunakan. Kunci jawaban menerima $1\ \text{MB} = 10^{6}$ bytes (awalan SI) atau $1\ \text{MiB} = 1024 \times 1024$ bytes (awilan biner), selama perhitungan Anda menunjukkan mana yang digunakan; gambar yang sama adalah $18.0\ \text{MB}$ atau $17.2\ \text{MiB}$. Tambahkan ukuran header file jika soal menyediakannya.
Video adalah urutan gambar bitmap, di mana setiap gambar adalah frame. Sebelum kompresi, ukurannya adalah ukuran satu frame $\times$ laju bingkai (frame per detik) $\times$ durasi dalam detik: 30 frame per detik dari $1920 \times 1080$ pixel pada 24 bit adalah $30 \times 1920 \times 1080 \times 24 \approx 1.5 \times 10^{9}$ bit, sekitar $187\ \text{MB}$, untuk setiap detik. Itulah mengapa video selalu dikompresi.
Mengubah pengaturan
- resolusi lebih rendah → file lebih kecil, detail berkurang (terlihat kotak-kotak saat diperbesar).
- kedalaman warna lebih rendah → file lebih kecil, tetapi gradasi halus menunjukkan pita warna (banding).
- tinggi salah satunya → file lebih besar, kualitas lebih baik.
| English | Bahasa Indonesia |
|---|---|
| bitmap/ˈbɪtmæp/ | bitmap |
| pixel/ˈpɪksl/ | piksel |
| file header/faɪl ˈhedə/ | header file |
| colour depth/ˈkʌlə depθ/ | kedalaman warna |
| bit depth/bɪt depθ/ | kedalaman bit |
| frame/freɪm/ | bingkai |
1.2
Grafik vektor
Grafik vektor menyimpan instruksi untuk menggambar gambar sebagai daftar gambar — daftar terurut dari objek gambar (primitif geometris: garis, kurva, poligon, lingkaran). Setiap objek gambar memiliki properti seperti warna, isi, ketebalan garis, dan posisi (koordinat). Untuk menampilkannya, program merender daftar gambar pada resolusi apa pun yang diperlukan.

Bitmap vs vektor
| Tugas | Pilihan lebih baik | Alasan |
|---|---|---|
| Foto | Bitmap | Detail tingkat pixel yang kompleks tidak dapat digambarkan sebagai bentuk. |
| Logo, ikon, tanda | Vektor | Tepi tajam; skala ke ukuran apa pun tanpa buram. |
| Gambar teknik | Vektor | Geometri presisi dan penskalaan. |
| Lukisan, tekstur | Bitmap | Detail tonal halus per area. |
Keunggulan vektor: ia diskala tanpa kehilangan kualitas — logo vektor tetap tajam pada ukuran apa pun, sementara bitmap menjadi buram saat diperbesar. Kekurangan vektor: ia tidak dapat mendeskripsikan detail pixel sembarang (foto).
Jawaban "justify" menghubungkan pilihan dengan tugas. "Logo harus muncul di kartu nama dan di papan reklame, jadi seharusnya berupa grafik vektor: disimpan sebagai objek gambar dan dirender tajam pada ukuran apa pun, sedangkan bitmap akan menampilkan pikselnya saat diperbesar." Untuk sebuah foto, argumennya berkebalikan: tidak ada bentuk untuk dideskripsikan, sehingga warna setiap piksel harus disimpan.

Laboratorium konsep komputasi
Klasifikasikan contoh konkret berdasarkan ide komputasi yang ditunjukkannya.
| English | Bahasa Indonesia |
|---|---|
| vector graphic/ˈvektə ˈɡræfɪk/ | grafik vektor |
| drawing list/ˈdrɔːɪŋ lɪst/ | daftar gambar |
| drawing objects/ˈdrɔːɪŋ ˈɒbdʒekts/ | objek gambar |
| primitive/ˈprɪmɪtɪv/ | primitif |
| properties/ˈprɒpətiz/ | properti |
| render/ˈrendə/ | render |
| analogue data/ˈænəlɒɡ ˈdeɪtə/ | data analog |
| digital data/ˈdɪdʒɪtl ˈdeɪtə/ | data digital |
1.2
Suara
Gelombang data analog (suara) yang berkelanjutan dikonversi menjadi data digital melalui pencucian (sampling):
- laju pencucian — sampel per detik (Hz). Kualitas CD adalah $44.1\ \text{kHz}$.
- resolusi pencucian (kedalaman bit) — bit per amplitudo sampel. Kualitas CD adalah 16 bit.

Ukuran file
Potongan stereo CD 10 detik: $44100 \times 16 \times 10 \times 2 = 14\,112\,000$ bit $\approx 1.68\ \text{MiB}$.
Mengubah pengaturan
- laju pencucian lebih tinggi → menangkap nada lebih tinggi, file lebih besar.
- resolusi sampel lebih tinggi → langkah amplitudo lebih halus, kebisingan kuantisasi lebih sedikit, file lebih besar.
- lebih rendah dari keduanya → file lebih kecil, kualitas jernih menurun.
(Laju pencucian harus setidaknya dua kali frekuensi tertinggi yang ingin Anda simpan.)

Pengambilan sampel suara
y = a sin(bt + c)
Pengambilan sampel mengukur gelombang suara pada interval teratur — tingkat yang lebih tinggi menyalinnya lebih akurat.
| English | Bahasa Indonesia |
|---|---|
| sampling/ˈsæmplɪŋ/ | pencuplikan |
| sampling rate/ˈsæmplɪŋ reɪt/ | laju sampling |
| sampling resolution/ˈsæmplɪŋ ˌrezəˈluːʃn/ | resolusi sampling |
| amplitude/ˈæmplɪtjuːd/ | amplitudo |
| sample resolution/ˈsæmpl ˌrezəˈluːʃn/ | resolusi sampel |
| quantisation/ˌkwɒntaɪˈzeɪʃn/ | kuantisasi |
| bandwidth/ˈbændwɪdθ/ | lebar pita |
1.3
Kompresi
Silabus
| Kandidat harus mampu: | Catatan dan panduan |
|---|---|
| Tunjukkan pemahaman akan kebutuhan dan contoh penggunaan kompresi | |
| Tunjukkan pemahaman tentang kompresi lossy dan lossless serta justifikasi penggunaan metode tertentu dalam situasi yang diberikan | |
| Tunjukkan pemahaman tentang cara mengompresi file teks, gambar bitmap, grafik vektor, dan file suara | Termasuk penggunaan pengkodean panjang run (RLE) |
Sumber: Silabus Cambridge International
Kompresi mengurangi ukuran file, menghemat penyimpanan dan lebar pita transmisi. Dua jenis:
- tanpa kerugian (lossless) — data asli dipulihkan secara tepat (teks, program, ZIP/PNG).
- dengan kerugian (lossy) — beberapa detail dihilangkan untuk menghasilkan file jauh lebih kecil (JPEG, MP3, video).
Kapan menggunakan yang mana
- tanpa kerugian untuk dokumen, kode sumber, gambar medis — apa pun yang membutuhkan data eksak.
- dengan kerugian untuk media streaming. Streaming video real-time menggunakan kompresi lossy karena harus mengirim jumlah data yang sangat besar secara real-time melalui lebar pita terbatas; tanpa kerugian tidak akan mengecilkannya cukup banyak. Video HD mentah berukuran gigabyte per menit, jadi tanpa kompresi gambarnya akan terus membeku.
Jawaban "justify" menyebutkan metode, kemudian alasannya dari situasi tersebut: "Tanpa kerugian, karena spreadsheet harus dipulihkan secara eksak; satu nilai yang berubah akan membuat akun menjadi salah." Atau: "Dengan kerugian, karena foto-foto ditonton di layar ponsel di mana detail yang hilang tidak terlihat, dan file yang lebih kecil diunggah lebih cepat dan menggunakan lebih sedikit penyimpanan.",
Metode tanpa kerugian
- pengkodean panjang-lari (RLE): simpan "$n$ nilai berikutnya adalah $x$" alih-alih mengulang $x$. Bagus untuk area datar; tidak berguna untuk data bising.
- metode kamus (ZIP, PNG): ganti urutan byte berulang dengan referensi pendek. Bagus untuk teks dan kode.
- pengkodean Huffman: berikan kode pendek untuk simbol umum dan kode panjang untuk yang jarang, membawa panjang kode rata-rata mendekati entropi data.
Bagaimana setiap jenis file dikompresi:
- file teks: metode kamus dan pengkodean Huffman mengubah kata berulang dan karakter umum menjadi kode pendek. Teks harus tetap tanpa kerugian, karena satu karakter yang berubah mengubah makna.
- gambar bitmap: RLE untuk rentetan piksel identik (ikon, diagram, pemindaian hitam-putih); JPEG lossy untuk foto, atau kedalaman warna atau resolusi yang lebih rendah.
- grafik vektor: daftar gambar sudah kecil; hilangkan objek gambar yang tidak diperlukan, simpan koordinat ke tempat desimal yang lebih sedikit, atau terapkan metode tanpa kerugian seperti ZIP pada filenya.
- file suara: MP3 atau AAC lossy menghilangkan apa yang telinga tidak dapat dengar; laju atau resolusi pencucian yang lebih rendah juga lossy; format tanpa kerugian menyimpan setiap sampel dan mengecilkan file jauh lebih sedikit.




Metode dengan kerugian
- gambar (JPEG): hilangkan detail halus dan perbedaan warna yang mata hampir tidak lihat.
- suara (MP3, AAC): hilangkan nada yang kita dengar kurang baik, dan suara pelan yang tertutup oleh suara lebih keras.
- video menggabungkan kompresi spasial (dalam setiap frame, seperti JPEG) dengan kompresi temporal (sebagian besar frame hanya menyimpan perbedaan dari frame sebelumnya).

Pengkodean panjang rentang
Saksikan deretan simbol berulang tertekan menjadi jumlah — kompresi tanpa kehilangan sederhana.
| English | Bahasa Indonesia |
|---|---|
| compression/kəmˈpreʃn/ | pemampatan |
| frame rate/freɪm reɪt/ | laju bingkai |
| lossless/ˈlɒsləs/ | tanpa kehilangan |
| lossy/ˈlɒsi/ | dengan kehilangan |
| run-length encoding/rʌn leŋθ enˈkəʊdɪŋ/ | run-length encoding |
| dictionary methods/ˈdɪkʃənəri ˈmeθədz/ | metode kamus |
| Huffman coding/ˈhʌfmən ˈkəʊdɪŋ/ | pengkodean Huffman |
| entropy/ˈentrəpi/ | entropi |
| spatial/ˈspeɪʃl/ | spasial |
| temporal/ˈtempərəl/ | temporal |
1.3
Definisi yang diterima oleh penguji
Soal definisi dinilai berdasarkan frasa tetap. Hafalkan ini persis, dan berikan hanya satu jawaban.
| Istilah | Definisi |
|---|---|
| bit | digit biner tunggal, 0 atau 1 |
| byte | sekumpulan 8 bit |
| awalan biner | pengali yang merupakan pangkat dari 2 (kibi = 1024) bukan pangkat dari 10 (kilo = 1000) |
| komplemen dua | cara merepresentasikan bilangan bulat bertanda di mana bit paling signifikan memiliki nilai tempat negatif |
| overflow | hasil perhitungan terlalu besar untuk direpresentasikan dalam jumlah bit yang tersedia |
| Desimal Terkode Binari | setiap digit desimal disimpan sebagai pola biner 4-bitnya sendiri |
| set karakter | himpunan karakter yang dapat direpresentasikan komputer, masing-masing dengan kode binernya sendiri |
| piksel | elemen terkecil dari gambar bitmap, menyimpan satu nilai warna |
| resolusi gambar | jumlah piksel dalam sebuah gambar, dinyatakan sebagai lebar dikali tinggi |
| resolusi layar | jumlah piksel yang dapat ditampilkan oleh tampilan, dinyatakan sebagai lebar dikali tinggi |
| kedalaman warna | jumlah bit yang digunakan untuk menyimpan warna satu piksel |
| laju sampling | jumlah sampel suara yang diambil per detik |
| resolusi sampling | jumlah bit yang digunakan untuk menyimpan amplitudo satu sampel |
| kompresi tanpa kehilangan | kompresi dari mana data asli dapat dipulihkan secara tepat |
| kompresi dengan kehilangan | kompresi yang secara permanen menghilangkan sebagian data, sehingga aslinya tidak dapat dipulihkan |
| pengkodean panjang run | mengganti deretan nilai berulang dengan satu nilai dan jumlah hitungannya |
1.3
Tips ujian
- Tunjukkan langkah-langkah untuk konversi basis: desimal → biner melalui nilai tempat, biner → heksadesimal dalam nibble (kelompok 4 bit).
- Untuk komplemen dua, MSB adalah negatif; untuk menegatifkan, balikkan dan tambahkan 1; waspadai overflow ketika bit tanda berbalik salah.
- Bedakan bitmap (piksel; ukuran file $=$ lebar $\times$ tinggi $\times$ kedalaman warna) dari vektor (perintah gambar; skala tanpa kehilangan).
- Ukuran file suara bergantung pada laju sampling $\times$ kedalaman bit $\times$ waktu — lebih banyak dari masing-masing berarti kualitas lebih baik tetapi file lebih besar.
- Bandingkan kompresi tanpa kehilangan vs dengan kehilangan dan berikan satu penggunaan untuk masing-masing.
Kesalahan umum
- Menjelaskan overflow dengan "jawabannya lebih besar dari 255" atau "memiliki 9 bit". Sebutkan ukuran kata yang diberikan soal, lalu katakan hasilnya tidak dapat direpresentasikan di dalamnya.
- Membuat bilangan negatif dengan menetapkan bit atas ke 1 dan meninggalkan sisanya (tanda dan besaran). Komplemen dua berarti balikkan setiap bit dari nilai positif, lalu tambahkan 1.
- Lupa menambahkan padding pada angka yang dikonversi sesuai lebar register yang diminta soal.
- Mencampur bit dan byte dalam perhitungan ukuran file. Kerjakan dalam bit, bagi dengan 8 sekali, dan sebutkan apakah Anda menggunakan 1000 atau 1024.
- Menjawab "deskripsikan" dengan bahasa sehari-hari ("gambarnya jadi buruk"). Gunakan istilah kurikulum: fewer colours, banding, lower image resolution, larger pixels.
| English | Bahasa Indonesia |
|---|---|
| image resolution/ˈɪmɪdʒ ˌrezəˈluːʃn/ | resolusi gambar |
| screen resolution/skriːn ˌrezəˈluːʃn/ | resolusi layar |
Pelajaran interaktif untuk topik ini
Kerjakan langkah demi langkah, dengan latihan pengecekan instan.