Konversi Sistem Bilangan dengan BC (Base Converter)

1 menit waktu baca

BC atau Base Converter di Linux bagi saya sangat bermanfaat dan sangat menghemat waktu dibanding melakukan perhitungan secara manual ketika ingin melakukan konversi sistem bilangan dari base awal ke base tujuan.

Berikut adalah contoh penggunaan BC untuk konversi bilangan desimal ke biner, oktal dan heksadesimal di console linux,

## Konversi base10 (desimal) ke base2 (biner)
wiros4bleng@212:~$ echo 'obase=2; 10' | bc
1010
## Konversi base10 (desimal) ke base8 (oktal)
wiros4bleng@212:~$ echo 'obase=8; 10' | bc
12
## Konversi base10 (desimal) ke base16 (heksadesimal)
wiros4bleng@212:~$ echo 'obase=16; 10' | bc
A

Sebaliknya, untuk konversi bilangan biner, oktal dan heksadesimal ke desimal,

## Konversi base2 (biner) ke base10 (desimal)
wiros4bleng@212:~$ echo "ibase=2; 1101" | bc
13
## Konversi base8 (oktal) ke base10 (desimal)
wiros4bleng@212:~$ echo "ibase=8; 777" | bc
511
## Konversi base16 (heksadesimal) ke base10 (desimal)
wiros4bleng@212:~$ echo "ibase=16; AA" | bc
170

Secara default, output (obase) maupun input (ibase) dari BC adalah bilangan basis 10 atau desimal. Sehingga untuk bilangan apapun jika dikonversi ke bilangan desimal, cukup tentukan ibase-nya. Sebaliknya untuk bilangan desimal jika dikonversi ke bilangan apapun, cukup tentukan obase-nya. Sedangkan untuk bilangan apapun ke bilangan apapun (termasuk desimal juga sebenarnya), baik ibase maupun obase-nya harus ditentukan. Berikut contohnya:

## Konversi dari bilangan desimal ke base4:
wiros4bleng@212:~$ echo "obase=4; 23" | bc
113
## Konversi dari bilangan desimal ke base6:
wiros4bleng@212:~$ echo "obase=6; 23" | bc
35
## Konversi bilangan biner ke oktal
wiros4bleng@212:~$ echo "ibase=2;obase=8; 1010101" | bc
125
## Konversi bilangan oktal ke biner
wiros4bleng@212:~$ echo "obase=2;ibase=8; 125" | bc
1010101
## Konversi bilangan biner ke heksadesimal
wiros4bleng@212:~$ echo "obase=16;ibase=2; 1111111111" | bc
3FF
## Konversi bilangan heksadesimal ke biner
wiros4bleng@212:~$ echo "ibase=16;obase=2; AAA" | bc
101010101010
## Konversi bilangan heksadesimal ke oktal
wiros4bleng@212:~$ echo "ibase=16;obase=8; AAA" | bc
5252
## Konversi bilangan oktal ke heksadesimal
wiros4bleng@212:~$ echo "obase=16; ibase=8; 17" | bc
F

Label:

Kategori:

Diperbaharui:

Tinggalkan komentar