Sebelum mempelajari bagaimana cara mencetak ke bentuk biner, anda akan lebih mudah memahaminya jika sekarang anda mengetahui bagaimana sebenarnya bilangan biner itu direpresentasikan.
Pada bilangan desimal, setiap angka merupakan kelipatan dari 10n. Dimana n di bagian paling kanan adalah 0, kirinya n+1, kirinya lagi n+2, dst.
Misal 324.
3 x 102 + 2 x 101 + 4 x 100.
= 300 + 20 + 4
= 324
Biner tidak jauh berbeda dengan desimal, hanya saja merupakan kelipatan dari 2n
Misalnya 101.
1 x 22 + 0 x 21 + 1 x 20.
= 4 + 0 + 1
= 5
nb : semua nilai dipangkatkan 0 = 1, kecuali 0. bila dipangkatkan 0 hasilnya 0.
Cara untuk mencetak nilai integer ke dalam bentuk desimal, adalah kebalikan dariproses mengubah nilai biner ke desimal. Adapun flow-chartt nya adalah sebagai berikut.
Kode C :
#include <stdio.h>
#include <string.h>
char buff[33];
int main(int argc, char **argv)
{
unsigned long nilai = 5;
unsigned int i = 0;
do
{
buff[i] = (nilai % 2) + 0x30;
i++;
nilai /= 2;
}while(nilai / 2 != 0);
buff[i++] = nilai + 0x30;
buff[i] = 0;
strrev(buff);
printf(buff);
}
Selamat mencoba.. :)
0 comments