Di dalam prosesor terdapat miliaran sakelar kecil. Setiap satu hanya bisa menyala atau mati. Itulah semua yang secara fisik dimiliki komputer — tidak ada angka tiga, tidak ada tujuh, tidak ada…
Narasi bahasa Inggris · Subtitle bahasa Inggris + 中文 disematkan langsung
1.1
Mengapa komputer menggunakan biner
Komputer hanya dapat bekerja dengan dua keadaan: menyala dan mati. Anda menulisnya sebagai 1 dan 0. Sistem yang hanya menggunakan dua digit disebut biner (basis 2).
Komputer merepresentasikan semua data — angka, teks, suara, dan gambar — sebagai deretan biner dari 0s dan 1s
Setiap jenis data — angka, teks, suara, dan gambar — harus diubah menjadi biner sebelum komputer dapat menggunakannya. Komputer memproses biner ini menggunakan gerbang logika, dan menyimpannya dalam register (penyimpanan kecil dan cepat di dalam prosesor).
Mikroprosesor memegang jutaan transistor kecil, masing-masing adalah sakelar yang menyala (1) atau mati (0) — dasar fisik dari biner
1 Fahami bagaimana dan mengapa komputer menggunakan binari untuk mewakili semua bentuk data
• Sebarang bentuk data perlu ditukar kepada binari untuk diproses oleh komputer • Data diproses menggunakan gerbang logik dan disimpan dalam daftar
2 (a) Pahami sistem bilangan desimal, biner, dan heksadesimal (b) Konversikan antara (i) desimal positif dan biner positif (ii) desimal positif dan heksadesimal positif (iii) heksadesimal positif dan biner positif
• Desimal adalah sistem basis 10 • Biner adalah sistem basis 2 • Heksadesimal adalah sistem basis 16 • Nilai yang digunakan hanya bilangan bulat • Konversi dua arah, mis. desimal ke biner atau biner ke desimal • Panjang maksimum bilangan biner 16-bit
3 Fahami bagaimana dan mengapa heksadesimal digunakan sebagai kaedah perwakilan data yang bermanfaat
• Kawasan dalam sains komputer yang menggunakan heksadesimal harus dikenal pasti • Heksadesimal lebih mudah difahami oleh manusia berbanding binari, kerana ia merupakan perwakilan binari yang lebih pendek
4 (a) Tambahkan dua bilangan bulat biner positif 8-bit (b) Pahami konsep overflow dan mengapa hal itu terjadi dalam penjumlahan biner
• Error overflow akan terjadi jika nilainya lebih besar dari 255 dalam register 8-bit • Komputer atau perangkat memiliki batas predefined yang dapat direpresentasikan atau disimpan, misalnya 16-bit • Error overflow terjadi ketika nilai di luar batas ini seharusnya dikembalikan
5 Lakukan pergeseran biner logika pada bilangan bulat biner positif 8-bit dan pahami efeknya terhadap bilangan bulat biner positif
• Lakukan pergeseran kiri logis • Lakukan pergeseran kanan logis • Lakukan beberapa kali pergeseran • Bit yang digeser dari ujung register hilang dan nol digeser masuk di ujung berlawanan register • Bilangan bulat biner positif dikalikan atau dibagi sesuai dengan pergeseran yang dilakukan • Bit paling signifikan atau bit paling tidak signifikan hilang
6 Gunakan sistem bilangan complement dua untuk merepresentasikan bilangan bulat biner positif dan negatif 8-bit
• Konversikan bilangan bulat biner atau desimal positif menjadi bilangan bular complement dua 8-bit dan sebaliknya • Konversikan bilangan bulat biner atau desimal negatif menjadi bilangan bulat complement dua 8-bit dan sebaliknya
Sumber: Silabus Cambridge International
Menghitung dalam biner: 0 hingga 15
Sistem bilangan adalah cara menulis angka menggunakan himpunan digit yang tetap. Anda memerlukan tiga sistem di antaranya.
Sistem
Basis
Digit yang digunakan
Desimal
10
0–9
Biner
2
0 dan 1
Heksadesimal
16
0–9 lalu A–F
desimal adalah sistem penghitungan normal (juga disebut desimal).
biner hanya menggunakan 0 dan 1.
heksadesimal (hex) menggunakan enam belas digit: 0–9, kemudian A, B, C, D, E, F mewakili 10, 11, 12, 13, 14, 15.
Basis memberi tahu Anda berapa banyak digit berbeda yang digunakan oleh sebuah sistem.
Nilai tempat
Setiap kolom dalam angka memiliki nilai tempat. Dalam biner, nilai tempat berlipat ganda dari kanan ke kiri. Untuk bilangan 8-bit, nilainya adalah:
128 64 32 16 8 4 2 1
Tabel nilai tempat 8-bit: angka 1 berada di bawah nilai-nilai yang jika ditambahkan menjadi 150
Satu bit adalah satu digit 0 atau 1. Delapan bit membentuk satu byte. Empat bit (setengah byte) adalah nibble.
Mengubah antara sistem bilangan
Desimal → biner. Tulis nilai tempat. Letakkan angka 1 di bawah setiap nilai yang Anda butuhkan agar jumlahnya sesuai dengan angka Anda; letakkan 0 di bawah sisanya.
Setiap digit heksa dipetakan ke nibble 4-bit sendiri — F08 = 1111 0000 1000
Biner → heksadesimal. Kelompokkan bit menjadi nibble berisi 4, dimulai dari sebelah kanan. Ubah setiap nibble menjadi satu digit heksa.
Desimal → heksadesimal. Cara mudahnya adalah mengubah ke biner terlebih dahulu, lalu biner ke heksa.
Tabel ini membantu dengan huruf-huruf heksa:
Desimal
Biner
Heks
10
1010
A
11
1011
B
12
1100
C
13
1101
D
14
1110
E
15
1111
F
Soalan Cambridge menggunakan bilangan biner hingga panjang 16 bit.
Contoh dikerjakan. Konversikan desimal 100 menjadi biner 8-bit, lalu ke heksadesimal.
$100 = 64 + 32 + 4$, jadi binernya adalah 01100100. Dibagi menjadi nibble, 01100100$= 6$ dan $4$, jadi heksadesimalnya adalah 64.
Mengapa heksadesimal digunakan
Hex lebih pendek daripada biner dan lebih mudah dibaca serta ditulis oleh manusia. Satu digit heksa menggantikan 4 digit biner, sehingga Anda membuat lebih sedikit kesalahan. Nilainya tidak berubah — heksa hanyalah cara yang lebih singkat untuk menampilkan biner yang sama.
Ilmuwan komputer menggunakan heksa untuk:
Alamat MAC dan alamat IPv6
Kode warna dalam HTML (misalnya #FF0000 adalah merah)
Alamat memori dan kode kesalahan
Menampilkan isi memori (a "memory dump")
Jelajahi
Binier, desimal, dan heksadesimal
Ketik angka dan lihat dalam biner, desimal, dan heksadesimal — serta bagaimana nilai tempat membentuknya.
Menjumlahkan kolom per kolom; sisa merambat ke kiri. 118 + 48 = 166
Overflow (Kelebihan)
Register 8-bit hanya dapat menampung nilai desimal dari 0 hingga 255. Jika penjumlahan menghasilkan nilai di atas 255, jawaban membutuhkan bit ke-9. Register tidak dapat menampung bit tambahan ini, sehingga hilang. Ini disebut overflow (error overflow). Hal ini terjadi ketika nilai melampaui batas yang dapat disimpan register.
Contoh: 11001000 (200) $+$01001000 (72) $= 272$. Dalam biner itu adalah 1 00010000, yang membutuhkan 9 bit. Bit pertama 1 tidak muat dalam 8 bit, sehingga jawaban yang disimpan salah.
*Menambahkan 200 dan 72 butuh 9 bit, tetapi register 8-bit membuang bit kesembilan, sehingga jawabannya salah
Geser biner logis menggeser semua bit ke kiri atau ke kanan sejumlah tempat.
Bit yang keluar dari ujung register hilang.
Nol ditambahkan di ujung yang kosong.
Geser kiri mengalikan angka dengan 2 untuk setiap tempat yang digeser. Geser kanan membaginya dengan 2 untuk setiap tempat; bit paling kanan (bit terkecil/least significant bit(s)) hilang.
Contoh: geser kiri 00110101 (53) sebanyak 2 tempat.
Geser kiri 2: setiap bit bergerak 2 posisi ke kiri, bit teratas hilang dan nol mengisi sisi kanan
Hasilnya adalah 11010100 (212), yang merupakan $53 \times 4$. Dua bit paling kiri hilang dan dua nol masuk dari kanan. Jika angka 1 terdorong keluar dari akhir, informasi itu hilang selamanya.
Sejauh ini, bilangan-bilangan tersebut positif. Komplemen dua memungkinkan register 8-bit juga menampung bilangan negatif.
Dalam komplemen dua, bit paling kiri (bit paling signifikan, atau MSB) memiliki nilai tempat negatif:
-128 64 32 16 8 4 2 1
Jika MSB adalah 0, bilangan tersebut positif.
Jika MSB adalah 1, bilangan tersebut negatif.
Untuk mengubah bilangan positif menjadi negatif: tulis biner positif, balikkan setiap bit (0↔1), lalu tambahkan 1.
Contoh: ubah $-40$.
$+40$ = 00101000
balikkan bit = 11010111
tambah 1 = 11011000
Jadi $-40$ = 11011000. Periksa dengan menjumlahkan nilai tempat: $-128 + 64 + 16 + 8 = -40$.
Bit paling signifikan bernilai −128, jadi 11011000 = −128 + 64 + 16 + 8 = −40
Untuk membaca bilangan komplemen dua negatif, cukup jumlahkan nilai tempat (MSB dihitung sebagai $-128$). Rentang bilangan komplemen dua 8-bit adalah $-128$ hingga $+127$.
1.2
Representasi teks
Silabus
Kandidat harus mampu:
Catatan dan panduan
1 Fahami bagaimana dan mengapa komputer mewakili teks dan penggunaan set watak, termasuk kod standard Amerika untuk pertukaran maklumat (ASCII) dan Unicode
• Teks ditukar kepada binari untuk diproses oleh komputer • Unicode membolehkan julat watak dan simbol yang lebih besar berbanding ASCII, termasuk bahasa berbeza dan emoji • Unicode memerlukan lebih banyak bit per watak berbanding ASCII
2 Fahami bagaimana dan mengapa komputer mewakili bunyi, termasuk kesan kadar sampel dan resolusi sampel
• Gelombang bunyi diambil sampelnya untuk bunyi ditukar kepada binari, yang diproses oleh komputer • Kadar sampel ialah bilangan sampel yang diambil dalam satu saat • Resolusi sampel ialah bilangan bit per sampel • Ketepatan rakaman dan saiz fail meningkat apabila kadar sampel dan resolusi meningkat
3 Pahami bagaimana dan mengapa komputer merepresentasikan gambar, termasuk efek dari resolusi dan kedalaman warna
• Gambar adalah serangkaian piksel yang dikonversi menjadi biner, yang kemudian diproses oleh komputer • Resolusi adalah jumlah piksel dalam gambar • Kedalaman warna adalah jumlah bit yang digunakan untuk merepresentasikan setiap warna • Ukuran file dan kualitas gambar meningkat seiring dengan meningkatnya resolusi dan kedalaman warna
Sumber: Silabus Cambridge International
Komputer menyimpan teks dengan memberi setiap karakter sebuah angka, kemudian menyimpan angka tersebut dalam biner. Kumpulan karakter yang dapat digunakan komputer, bersama dengan angkanya, disebut himpunan karakter.
ASCII menggunakan 7 bit per karakter, sehingga memiliki 128 karakter berbeda. Ini cukup untuk huruf Inggris, digit, dan simbol umum.
Unicode menggunakan lebih banyak bit per karakter. Ia dapat merepresentasikan jauh lebih banyak karakter — banyak bahasa, serta simbol dan emoji.
Karena Unicode memiliki lebih banyak karakter, ia membutuhkan lebih banyak bit per karakter daripada ASCII, sehingga teks yang sama memerlukan lebih banyak penyimpanan.
ASCII menggunakan 7 bit untuk 128 karakter; Unicode menggunakan lebih banyak bit untuk jauh lebih banyak karakter tetapi memerlukan lebih banyak penyimpanan
Amplop suara itu halus dan selalu berubah. Untuk menyimpannya, komputer mengukur tinggi gelombang pada interval waktu yang teratur. Ini disebut penyampelan, dan setiap pengukuran adalah sampel.
Penyampelan mencatat tinggi gelombang (amplitudo) pada momen-momen teratur
laju sampel adalah jumlah sampel yang diambil setiap detik (diukur dalam Hz).
resolusi sampel adalah jumlah bit yang digunakan untuk setiap sampel. Tinggi gelombang pada titik sampel adalah amplitudo-nya.
Laju sampel yang lebih tinggi dan resolusi sampel yang lebih tinggi menghasilkan rekaman yang lebih akurat, tetapi file yang lebih besar.
Jelajahi
Merepresentasikan suara
y = a sin(bt + c)
Suara adalah gelombang; pengambilan sampel mencatat tingginya berkali-kali per detik.
• Termasuk: – bit – nibble – byte – kibibyte (KiB) – mebibyte (MiB) – gibibyte (GiB) – tebibyte (TiB) – pebibyte (PiB) – exbibyte (EiB) • Jumlah dari denominasi sebelumnya yang ada dalam ukuran penyimpanan data, mis.: – 8 bit dalam satu byte – 1024 mebibyte dalam satu gibibyte
2 Hitung ukuran file gambar dan file suara, menggunakan informasi yang diberikan
• Jawaban harus diberikan dalam satuan yang ditentukan dalam soal. Perhitungan harus menggunakan pengukuran 1024 dan bukan 1000 • Informasi yang diberikan dapat mencakup: – resolusi gambar dan kedalaman warna – laju sampel suara, resolusi, dan panjang trek
3 Pahami tujuan dan kebutuhan akan kompresi data
• Kompresi bertujuan untuk mengurangi ukuran file • Apa dampaknya, mis.: – pita lebar yang dibutuhkan lebih sedikit – ruang penyimpanan yang dibutuhkan lebih sedikit – waktu transmisi yang lebih singkat
4 Pahami bagaimana file dikompres menggunakan metode kompresi lossy dan kompresi lossless
• Kompresi lossy mengurangi ukuran file dengan menghapus data secara permanen, mis. mengurangi resolusi atau kedalaman warna, mengurangi laju sampel atau resolusi • Kompresi lossless mengurangi ukuran file tanpa hilangnya data secara permanen, mis. pengkodean panjang run (RLE)
Sumber: Silabus Cambridge International
Penyimpanan data diukur dalam satuan berikut. Nibble adalah 4 bit dan byte adalah 8 bit; mulai dari kibibyte ke atas, setiap satuan adalah 1024 kali satuan sebelumnya (karena $1024 = 2^{10}$, yang cocok dengan biner).
Unit
Setara dengan
bit
satu 0 atau 1 tunggal
nibble
4 bit
byte
8 bit
kibibyte (KiB)
1024 byte
mebibyte (MiB)
1024 KiB
gibibyte (GiB)
1024 MiB
tebibyte (TiB)
1024 GiB
pebibyte (PiB)
1024 TiB
exbibyte (EiB)
1024 PiB
Piringan hard disk: penyimpanan diukur dalam byte — mengetahui ukuran file memerlukan lebar × tinggi × kedalaman warna untuk gambar
Ukuran file gambar (dalam bit) $=$ resolusi $\times$ kedalaman warna $=$ lebar $\times$ tinggi $\times$ kedalaman warna.
Contoh: sebuah gambar memiliki $1024 \times 1024$ pixel dengan kedalaman warna 2 byte ($= 16$ bit).
bits $= 1024 \times 1024 \times 16 = 16\,777\,216$ bit
bytes $= \div 8 = 2\,097\,152$ byte
KiB $= \div 1024 = 2048$ KiB
MiB $= \div 1024 = 2$ MiB
Ukuran file suara (dalam bit) $=$ laju sampel $\times$ resolusi sampel $\times$ durasi dalam detik.
Selalu bagi dengan 1024 (bukan 1000) untuk mengubah ke KiB, MiB, dan seterusnya. Berikan jawaban Anda dalam unit yang diminta oleh soal.
Contoh terpecahkan. Sebuah suara direkam selama 30 detik pada laju sampel 8,000 Hz dengan resolusi sampel 16 bit. Temukan ukuran file dalam kibibytes (KiB).
bits $= 8\,000 \times 16 \times 30 = 3\,840\,000$ bit
bytes $= 3\,840\,000 \div 8 = 480\,000$ byte
KiB $= 480\,000 \div 1024 \approx 469$ KiB
1.3
Kompresi
Kompresi membuat file menjadi lebih kecil. File yang lebih kecil:
menggunakan ruang penyimpanan lebih sedikit,
membutuhkan lebih sedikit bandwidth (jumlah data yang dapat dibawa koneksi),
memakan waktu lebih singkat untuk dikirim (waktu transmisi yang lebih pendek).
Terdapat dua jenis.
Kompresi tanpa kehilangan
Kompresi tanpa kehilangan membuat file menjadi lebih kecil dengan tidak adanya kehilangan data permanen. File asli dapat dibangun kembali secara persis.
Salah satu metodenya adalah pengkodean panjang run (RLE). Metode ini mengganti rentang nilai berulang dengan satu salinan nilai dan jumlah berapa kali nilai itu berulang. Sebagai contoh WWWWWWWW (8 putih) disimpan sebagai "8 W". Ini bekerja baik ketika data memiliki banyak pengulangan
Pengkodean panjang-berjalan menyimpan setiap run sekali sebagai jumlah dan nilai
Kompresi lossy
Lossy membuat file jauh lebih kecil dengan menghapus data secara permanen. Data yang dihapus tidak dapat dikembalikan. Sebagai contoh:
mengurangi resolusi atau kedalaman warna gambar,
mengurangi tingkat sampel atau resolusi sampel suara.
Gunakan lossless jika Anda harus mempertahankan setiap detail (file teks dan program). Gunakan lossy untuk foto, musik, dan video, di mana hilangnya kualitas sedikit sepadan dengan ukuran file yang jauh lebih kecil.
Jelajahi
Pengkodean panjang rentang
Perhatikan simbol berulang tertekan menjadi jumlah — kompresi tanpa kehilangan sederhana.
Konversi desimal → biner dengan mengurangkan nilai tempat (128, 64, 32 …); biner → desimal dengan menjumlahkan nilai tempat yang berisi angka 1.
Untuk konversi ke heksadesimal, kelompokkan biner menjadi nibble berukuran 4 bit dari kanan; setiap nibble tepat satu digit heksadesimal.
Overflow terjadi ketika hasil membutuhkan lebih banyak bit daripada register memiliki (register 8-bit hanya menampung 0–255), sehingga bit tambahan hilang.
Ukuran file dalam bit: untuk gambar, lebar × tinggi × kedalaman warna; untuk suara, tingkat sampel × resolusi × detik. Bagi dengan 8 untuk byte, lalu bagi dengan 1024 untuk setiap unit yang lebih besar.
Lossless mempertahankan setiap bit (teks; pengkodean panjang-berjalan); lossy menghapus data secara permanen (foto, musik) untuk ukuran file yang jauh lebih kecil.
Pelajaran interaktif untuk topik ini
Kerjakan langkah demi langkah, dengan latihan pengecekan instan.