By Kurnia · Published October 17, 2026 · Revised October 30, 2026 · Version 2 · 17 min read
Bilangan dan representasi data di perangkat kendali: biner, heksadesimal, bit dan byte, bilangan bertanda, skala bilangan bulat, titik mengambang, dan luapan
Seorang teknisi membaca suhu ruang pendingin dari pengendali melalui alat baca data dan mendapat angka 65.516, padahal suhu sebenarnya sekitar minus 2 derajat. Pada mesin lain, ia memasukkan setelan suhu bilas 82 dan air menjadi dingin, karena pengendali menyimpan suhu dalam sepersepuluh derajat sehingga angka itu dibaca 8,2 derajat. Kedua kesalahan berasal dari cara perangkat kendali menyimpan bilangan. Bab ini menjelaskan biner dan heksadesimal, bit, byte, dan bit status, bilangan bertanda dengan komplemen dua, bilangan bulat berskala, titik mengambang dan batas ketelitiannya, luapan pada penghitung, paritas, dan kode tampilan serta kode galat, supaya angka dari perangkat kendali dapat dibaca dengan benar.
This chapter is still in Indonesian. Its English edition will follow.
Seorang teknisi menyambungkan alat baca data ke pengendali ruang pendingin sebuah dapur untuk mencatat suhu. Alat itu menampilkan angka 65.516 untuk suhu ruang. Ia mengira sensornya rusak dan hampir memesan pengganti. Rekannya yang pernah membaca manual pengendali itu menjelaskan bahwa suhu disimpan sebagai bilangan bertanda dalam sepersepuluh derajat; angka 65.516 yang dibaca sebagai bilangan tak bertanda sebenarnya berarti minus 20, yaitu minus 2,0 derajat. Sensornya baik.
Pada minggu yang sama, teknisi yang sama mengubah setelan suhu bilas mesin pencuci piring lewat aplikasi servis dan memasukkan angka 82. Air bilas menjadi dingin dan mesin menampilkan galat. Pengendali itu menyimpan suhu dalam sepersepuluh derajat, sehingga angka 82 berarti 8,2 derajat; angka yang benar adalah 820. Perangkat kendali tidak menyimpan "suhu" atau "tekanan"; ia menyimpan bilangan bulat dalam pola bit, dan artinya ditentukan oleh aturan yang ditulis pabrik. Bab ini menjelaskan aturan-aturan itu.
Batas pembahasan
Bab ini membahas bilangan dan data di perangkat kendali: biner, heksadesimal, bit, byte, dan word, bit status dan penyaringan bit, bilangan bertanda, bilangan bulat berskala, titik mengambang, luapan, paritas, dan kode tampilan serta kode galat. Dekomposisi persoalan, algoritma, dan makna data ada di Bab 1; logika Boole dan tabel kebenaran di Bab 7 · Sistem, Diagram & Diagnosis; papan kendali dan pengubah analog ke digital di Bab 2; angka penting dan pembulatan di Bab 3 · Satuan & Matematika; eksponen dan notasi ilmiah di Bab 9 · Satuan & Matematika; I/O analog dan penskalaan PLC di Bab 66 · Kelistrikan & Kendali. Pemrograman dan format berkas tidak dibahas. Mengubah parameter mesin mengikuti izin dan petunjuk pabrik.
Biner dan desimal
Rangkaian digital paling andal bila hanya membedakan dua keadaan: ada tegangan atau tidak, tertutup atau terbuka. Bit (bit, dari binary digit) adalah satuan data terkecil yang menyatakan satu keadaan itu, bernilai 0 atau 1. Untuk membuktikan sebuah aturan logika, misalnya, dicantumkan empat kemungkinan gabungan biner dari dua masukan. Dengan bit ada pola yang mungkin.
Mikrokontroler yang populer berukuran 4, 8, 16, dan 32 bit, yaitu lebar data yang diolah sekaligus, dan himpunan instruksi adalah kumpulan semua instruksi yang dapat dilakukan pengolah. Lebar data itu menentukan rentang bilangan yang dapat disimpan dalam satu langkah, dan karena itu juga batas yang dapat terlewati bila nilai terlalu besar.
Dalam desimal, setiap tempat bernilai sepuluh kali tempat di kanannya. Dalam biner, setiap tempat bernilai dua kali:
Bilangan tak bertanda (unsigned number) adalah bilangan biner yang semua bitnya berbobot positif. Bilangan tak bertanda dengan bit berkisar dari 0 sampai : 0 sampai 255 untuk 8 bit, 0 sampai 65.535 untuk 16 bit. Untuk mengubah desimal ke biner, bagi berulang dengan 2 dan catat sisanya dari bawah ke atas, atau kurangkan pangkat dua terbesar yang muat secara berurutan. Desimal 200, misalnya, sama dengan , jadi .
Bit paling tidak berarti (least significant bit) adalah bit paling kanan, yang bernilai terkecil. Pada pengubah analog ke digital, beda tegangan untuk bit itu sama dengan satu langkah tegangan seperti di Bab 2 tentang papan kendali dan pengubah analog ke digital; pengubah digital ke analog berbobot biner juga memakai nilai tempat biner ini.
Heksadesimal
Bilangan biner panjang sulit dibaca. Heksadesimal (hexadecimal) adalah cara menulis bilangan dengan enam belas lambang, 0 sampai 9 dan A sampai F, dan setiap lambang mewakili tepat empat bit:
| Biner | Heks | Desimal |
|---|---|---|
| 0000 | 0 | 0 |
| 1001 | 9 | 9 |
| 1010 | A | 10 |
| 1111 | F | 15 |
Bilangan 182 ditulis atau B6 dalam heksadesimal, biasanya ditandai awalan 0x atau akhiran h. Heksadesimal dipakai untuk alamat register, kode galat, dan isi memori di manual servis. Membaca heksadesimal berarti memecahnya per empat bit: 0x25 adalah 0010 0101.
Tampilan dilakukan dengan sejumlah angka tertentu; tampilan tujuh segmen pada mesin dapat menampilkan heksadesimal, sehingga huruf seperti b, C, d, E, dan F pada layar kecil sering berarti angka 11 sampai 15, tidak singkatan.
Sebagian perangkat, terutama jam waktu nyata dan tampilan angka, memakai bentuk desimal berkode biner. Desimal berkode biner (binary-coded decimal, BCD) adalah bentuk penyimpanan yang menaruh setiap angka desimal dalam empat bit tersendiri. Angka 45 disimpan sebagai 0100 0101, yang bila dibaca sebagai heksadesimal tampak seperti 0x45. Bila jam pengendali menunjukkan pukul 0x23, dalam bentuk ini artinya pukul 23, tidak 35. Manual menyebut bentuk mana yang dipakai setiap register.
Bit, byte, word, dan bit status
Byte (byte) adalah kelompok delapan bit, dan word (word) adalah kelompok dua byte, yaitu 16 bit pada banyak perangkat. Selain menyimpan bilangan, sebuah word sering dipakai sebagai kumpulan bit status, dengan setiap bit berarti satu keadaan: pintu tertutup, pemanas menyala, level tercapai, alarm aktif. Contoh lain adalah bit pembagi yang dapat dikendalikan mikrokontroler, dan bit-bit khusus dengan fungsi khusus pada PLC tertentu.
Untuk membaca satu bit dari sebuah word, dipakai penyaringan dengan operasi DAN: word dikalikan bit demi bit dengan pola yang hanya memuat 1 di posisi yang ingin dilihat. Hasil bukan nol berarti bit itu menyala. Untuk menyalakan satu bit tanpa mengubah yang lain dipakai operasi ATAU, dan untuk mematikannya operasi DAN dengan pola kebalikan. Aturan operasi ini sama dengan logika Boole di Bab 7 · Sistem, Diagram & Diagnosis tentang tabel kebenaran dan aljabar Boole dasar, hanya dikerjakan pada setiap bit sekaligus.
Bila sebuah nilai menempati lebih dari satu byte, urutan byte di memori atau di kabel komunikasi juga harus diketahui. Sebagian perangkat mengirim byte yang lebih berarti lebih dulu, sebagian sebaliknya. Nilai 16 bit 0x1234 yang dikirim dengan urutan terbalik terbaca 0x3412, yaitu 13.330, bukan 4.660. Bila nilai yang terbaca selalu "aneh tetapi stabil", urutan byte dan urutan register adalah dugaan pertama.
Penomoran bit biasanya dimulai dari 0 untuk bit paling kanan. Manual yang menyebut "bit 5" berarti bit keenam dari kanan, bernilai atau 0x20.
Bilangan bertanda: komplemen dua
Untuk menyimpan bilangan negatif, hampir semua perangkat memakai komplemen dua. Komplemen dua (two's complement) adalah cara menyimpan bilangan bertanda dengan memberi bit paling kiri nilai negatif: pada bit, bit itu bernilai , dan bit lain positif seperti biasa. Rentang 16 bit bertanda menjadi sampai .
Aturan praktis membaca bilangan 16 bit yang mungkin bertanda: bila angka tak bertandanya 32.768 atau lebih, kurangkan 65.536:
Pengubah analog ke digital pun ada yang bekerja dua arah, misalnya pengubah 10 bit dengan rentang penuh plus minus 10 V; besaran yang dapat negatif, seperti tegangan dua arah atau suhu di bawah nol, harus disimpan dan dibaca sebagai bilangan bertanda. Kasus pembuka terjadi karena alat baca diatur membaca bilangan tak bertanda.
Untuk 8 bit, rentang bertanda adalah sampai , dan angka tak bertanda 128 atau lebih dikurangi 256. Bila nilai bertanda 8 bit dipindahkan ke register 16 bit, bit tandanya harus diperluas ke kiri; tanpa itu, yang berpola 1111 1111 berubah menjadi . Nilai negatif kecil yang tiba-tiba terbaca sebagai angka positif sekitar 250 atau sekitar 65.500 hampir selalu disebabkan kesalahan tanda seperti ini.
Bilangan bulat berskala dan titik tetap
Banyak pengendali tidak menyimpan angka desimal, tetapi bilangan bulat yang dikalikan faktor skala. Suhu 65,5 °C disimpan sebagai 655 dengan skala 0,1; tekanan 3,45 bar disimpan sebagai 345 dengan skala 0,01. Titik tetap (fixed point) adalah cara menyimpan bilangan seperti ini: letak koma desimal tetap dan disepakati, tidak disimpan.
Akibatnya:
- Setiap register mempunyai satuan dan skala yang harus dibaca di manual.
- Ketelitian dibatasi oleh skala: dengan skala 0,1 °C, perbedaan 0,05 °C tidak dapat disimpan.
- Rentang dibatasi oleh lebar bit dan skala: 16 bit bertanda dengan skala 0,1 hanya dapat menyimpan sampai .
Bilangan dibulatkan untuk mengurangi jumlah angka di kanan koma desimal, dan 48 yang dibulatkan ke puluhan terdekat, misalnya, menjadi 50. Pengendali dengan skala tetap melakukan pembulatan seperti itu setiap kali menyimpan nilai, sehingga nilai yang dibaca kembali dapat sedikit berbeda dari nilai yang dimasukkan.
Titik mengambang
Untuk rentang yang sangat lebar, sebagian perangkat memakai bilangan titik mengambang. Titik mengambang (floating point) adalah cara menyimpan bilangan dengan angka penting dan pangkat secara terpisah, seperti notasi ilmiah di Bab 9 · Satuan & Matematika tentang eksponen dan notasi ilmiah. Koprosesor titik mengambang adalah rangkaian khusus untuk mempercepat hitungan matematika.
Format titik mengambang 32 bit yang umum menyimpan sekitar tujuh angka penting desimal. Akibat yang perlu diketahui:
- Bilangan besar kehilangan angka di belakang: di atas sekitar 16,8 juta, penambahan 1 tidak lagi mengubah nilainya.
- Pecahan desimal sederhana, seperti 0,1, tidak dapat disimpan tepat, sehingga dapat tersimpan sedikit berbeda dari 0,3.
- Membandingkan dua nilai titik mengambang dengan "sama dengan" tepat sering gagal; yang dibandingkan adalah selisihnya terhadap toleransi.
Register titik mengambang 32 bit biasanya menempati dua register 16 bit, dan urutan kedua register itu berbeda antarpabrik. Membaca dengan urutan yang salah menghasilkan angka yang sama sekali tidak masuk akal.
Format titik mengambang juga mempunyai pola khusus untuk tak hingga dan untuk "bukan bilangan", yang muncul misalnya bila pengendali membagi dengan nol karena sensor putus. Alat baca sering menampilkannya sebagai inf atau NaN. Tanda itu adalah petunjuk diagnosis yang berguna: ada hitungan di pengendali yang menerima masukan tidak sah.
Luapan dan pembatasan
Luapan (overflow) adalah keadaan ketika hasil hitungan melebihi rentang lebar bit. Pada bilangan tak bertanda, nilainya berputar kembali dari nol: penghitung 8 bit yang bernilai 250 ditambah 10 menjadi 4. Pada bilangan bertanda, luapan dapat mengubah bilangan positif besar menjadi negatif.
Luapan sering muncul pada penghitung waktu. Penghitung milidetik 16 bit tak bertanda berputar setiap 65,5 detik; penghitung milidetik 32 bit berputar setiap sekitar 49,7 hari. Program yang menghitung selang waktu dengan cara yang benar tetap bekerja melewati putaran itu, tetapi program yang salah dapat berhenti atau berkelakuan aneh tepat setelah mesin menyala berhari-hari. Gejala "mesin macet setiap sekitar tujuh minggu dan normal setelah dimatikan" dapat berasal dari hal seperti ini.
Sebagian pengendali memakai pembatasan sebagai pengganti luapan. Pembatasan (saturation) berarti nilai yang melebihi batas ditahan di batas tertinggi. Pembatasan lebih aman daripada putaran, tetapi menyembunyikan bahwa nilai sebenarnya lebih besar.
Paritas, kode tampilan, dan kode galat
Data yang dikirim atau disimpan dapat berubah karena gangguan. Cara pemeriksaan paling sederhana adalah bit paritas. Bit paritas (parity bit) adalah satu bit tambahan yang membuat jumlah bit 1 genap (paritas genap) atau ganjil (paritas ganjil). Gerbang ATAU eksklusif adalah pembangkit dan pendeteksi paritas ganjil.
Paritas mendeteksi perubahan satu bit, tetapi tidak dua bit sekaligus. Dengan paritas genap, bila satu bit berubah selama pengiriman, jumlahnya menjadi ganjil dan penerima tahu ada galat; bila dua bit berubah, jumlahnya tetap genap dan galat tidak terdeteksi. Pemeriksaan yang lebih kuat, seperti jumlah periksa dan pemeriksaan siklik, dipakai pada komunikasi data dan dibahas di Bab 5 tentang komunikasi data perangkat lapangan.
Layar mesin sering menampilkan kode singkat, bukan kalimat. Pada sebuah mesin cuci, misalnya, tanda NIV 2 menunjukkan bahwa level air yang tercapai adalah level 2. Kode seperti itu hanya dapat dibaca dengan tabel dari manual mesin yang sama; kode yang sama pada mesin lain atau versi program lain dapat berarti hal berbeda.
Kode galat yang tersimpan juga sering berupa bilangan atau pola bit: satu angka dapat memuat beberapa galat sekaligus bila setiap bit berarti satu galat. Kode 0x05, misalnya, dapat berarti bit 0 dan bit 2 menyala, yaitu dua galat berbeda. Mencatat kode persis seperti tertulis, termasuk huruf dan awalan heksadesimal, mencegah salah baca. Laporan servis menyebut kode, arti menurut manual, versi program, dan keadaan mesin saat kode muncul, supaya pola galat dapat dianalisis kemudian seperti di Bab 12 · Sistem, Diagram & Diagnosis tentang diagnosis gangguan berselang.
Contoh kerja
Angka dalam contoh di bawah adalah angka latihan, kecuali disebut asalnya.
Contoh 1: membaca word status. Manual sebuah pengendali menyebut bit 0 pintu tertutup, bit 2 pemanas menyala, dan bit 5 alarm level rendah. Register status terbaca 0x0025. Dalam biner, 0x25 adalah 0010 0101: bit 0, bit 2, dan bit 5 menyala. Pintu tertutup, pemanas menyala, dan alarm level rendah aktif bersamaan, keadaan yang patut diperiksa karena pemanas menyala dengan level rendah.
Contoh 2: penyaringan bit. Untuk memeriksa bit 5 saja, DAN sama dengan , tidak nol, sehingga alarm aktif. Untuk bit 1, DAN sama dengan 0, sehingga bit itu mati.
Contoh 3: suhu negatif. Alat baca menunjukkan 65.516 untuk register suhu 16 bit dengan skala 0,1 °C. Karena 65.516 lebih dari 32.767, nilai bertandanya , dikali 0,1 menjadi °C. Alat baca diatur ulang membaca bilangan bertanda.
Contoh 4: setelan berskala. Register setelan suhu bilas berskala 0,1 °C. Untuk 82 °C, nilai yang dimasukkan . Memasukkan 82 menghasilkan 8,2 °C, seperti pada kasus pembuka. Sebelum menyimpan, nilai dibaca kembali dari layar mesin dalam satuan derajat untuk memastikan.
Contoh 5: luapan penghitung waktu. Penghitung milidetik 32 bit tak bertanda berputar setelah ms, yaitu hari. Pengendali yang macet setiap sekitar 50 hari dan normal kembali setelah dimatikan diduga mempunyai masalah seperti ini; pabrik ditanya apakah ada pembaruan program untuk itu.
Contoh 6: penghitung energi titik mengambang. Penghitung energi disimpan sebagai titik mengambang 32 bit dalam watt-jam. Setelah mencapai 16.777.216 Wh, sekitar 16,8 MWh, penambahan 1 Wh tidak lagi mengubah nilai, sehingga penghitung tampak berhenti walaupun mesin bekerja. Penghitung disimpan dalam kilowatt-jam, dalam bilangan bulat 32 bit, atau direset berkala dengan pencatatan.
Kondisi berhenti
Hentikan pengubahan parameter dan minta petunjuk pabrik atau penyelia bila:
- Satuan, skala, atau tanda sebuah register tidak tertulis jelas di manual versi yang sama dengan mesin.
- Nilai yang dibaca kembali setelah disimpan berbeda dari yang dimaksud.
- Parameter yang akan diubah menyangkut batas pengaman, seperti suhu tertinggi atau waktu tunggu kunci pintu.
- Kode galat tidak terdapat di tabel manual atau artinya berbeda antara versi program.
- Gejala berulang pada selang waktu tetap yang panjang, seperti beberapa minggu, menunjuk masalah program yang memerlukan pembaruan dari pabrik.
Salah tafsir yang sering terjadi
Guess what’s wrong first, then open the explanation.
Common misconception
Angka di register adalah nilai sebenarnya.
Why is it wrong?
Angka itu harus dikalikan skala dan dibaca dengan tanda yang benar. Setelan 82 pada kasus pembuka berarti 8,2 °C karena register itu berskala 0,1 °C.
Common misconception
Angka 65.516 berarti sensor rusak.
Why is it wrong?
Bisa jadi bilangan negatif yang dibaca tak bertanda. Pada Contoh 3, angka itu berarti °C setelah dikurangi 65.536 dan dikali skala.
Common misconception
Huruf di layar adalah singkatan.
Why is it wrong?
Pada tampilan tujuh segmen, huruf sering berarti angka heksadesimal. Huruf b, C, d, E, dan F pada layar kecil sering berarti angka 11 sampai 15.
Common misconception
Titik mengambang selalu teliti.
Why is it wrong?
Ketelitiannya terbatas sekitar tujuh angka penting. Penghitung energi pada Contoh 6 tampak berhenti di atas 16,8 juta Wh karena penambahan 1 Wh hilang dalam pembulatan.
Common misconception
Luapan hanya terjadi pada komputer besar.
Why is it wrong?
Penghitung kecil di pengendali mesin juga dapat meluap. Penghitung milidetik 16 bit tak bertanda berputar setiap 65,5 detik, dan yang 32 bit setiap sekitar 49,7 hari.
Common misconception
Kode galat yang sama berarti sama di semua mesin.
Why is it wrong?
Arti kode bergantung pada mesin dan versi programnya. Karena itu laporan servis mencatat kode bersama arti menurut manual dan versi program.
Hubungan dengan bab lain
Bab 1 tentang dekomposisi, algoritma, dan data memberi dasar makna data. Bab 7 · Sistem, Diagram & Diagnosis tentang logika urutan dan diagram keadaan memberi logika Boole untuk penyaringan bit, Bab 2 tentang papan kendali dan mikrokontroler menjelaskan pengubah analog ke digital, Bab 3 · Satuan & Matematika tentang satuan, dimensi, konversi, dan angka penting membahas pembulatan, Bab 9 · Satuan & Matematika tentang eksponen, logaritma, dan desibel membahas notasi ilmiah, dan Bab 66 · Kelistrikan & Kendali tentang PLC lanjutan membahas penskalaan I/O analog PLC. Bab 5 tentang komunikasi data perangkat lapangan melanjutkan pemeriksaan galat, dan Bab 12 · Sistem, Diagram & Diagnosis tentang diagnosis gangguan berselang memakai catatan kode galat. Bab 4, bab berikutnya di rak ini, membahas program kendali sebagai algoritma waktu nyata.
Latihan dan pembahasan
Try to answer first, then open the worked solution.
Ubah 0x3F ke biner dan desimal.
See the worked solution
0x3F adalah 0011 1111, yaitu . Setiap lambang heksadesimal mewakili tepat empat bit, sehingga 3 menjadi 0011 dan F menjadi 1111.
Register 16 bit bertanda terbaca 0xFFF6. Berapa nilainya?
See the worked solution
0xFFF6 adalah 65.526 tak bertanda; karena lebih dari 32.767, nilai bertandanya . Bit paling kiri pola itu menyala, sehingga pada pembacaan bertanda bilangan itu negatif.
Register tekanan bernilai 1.234 dengan skala 0,01 bar. Berapa tekanannya?
See the worked solution
bar. Satuan dan skala dipastikan dari manual, karena register yang sama dapat berskala 0,1 pada perangkat lain.
Penghitung 8 bit tak bertanda bernilai 250, lalu ditambah 10. Berapa nilainya, dan apa yang terjadi?
See the worked solution
. Penghitung meluap dan berputar dari nol; program yang tidak memperhitungkan putaran dapat menganggap waktu atau jumlah mundur.
Mengapa penghitung energi titik mengambang 32 bit dapat tampak berhenti?
See the worked solution
Titik mengambang 32 bit hanya menyimpan sekitar tujuh angka penting. Di atas sekitar 16,8 juta, langkah terkecil yang dapat disimpan lebih dari 1, sehingga penambahan 1 Wh hilang dalam pembulatan.
Hitung bit paritas genap untuk 0110 0011.
See the worked solution
0110 0011 mempunyai empat bit 1, sudah genap, sehingga bit paritas genap 0. Bit paritas genap baru bernilai 1 bila jumlah bit 1 pada data ganjil, seperti pada data 1011 0110 yang mempunyai lima bit 1.
Revision history
| Date | Version | Change |
|---|---|---|
| October 30, 2026 | 2 | Revised to the chapter standard |
| October 17, 2026 | 1 | First published |
How to cite
Kurnia (2026). Bilangan dan representasi data di perangkat kendali: biner, heksadesimal, bit dan byte, bilangan bertanda, skala bilangan bulat, titik mengambang, dan luapan. ARSTEMA Academy. Revised October 30, 2026. arstema.com/academy/konsep/bilangan-dan-representasi-data-di-perangkat-kendali-biner-heksadesimal-bit-dan-byte-bilangan-bertanda-skala-bilangan-bulat-titik-mengambang-dan-luapan
Self-check · 3 questions
Check your understanding before moving on
Write your answer in your own words, then compare it with the worked solution from this chapter’s exercises. The system doesn’t judge open answers as right or wrong; you decide which parts you’ve understood.
Ubah 0x3F ke biner dan desimal.
Register 16 bit bertanda terbaca 0xFFF6. Berapa nilainya?
Register tekanan bernilai 1.234 dengan skala 0,01 bar. Berapa tekanannya?
Nearby chapters
Reading order by shelf: Computational · Chapter 4.
Reading order by shelf: Computational · Chapter 2.
Bab lain dalam Berpikir Komputasional.