Cara Mengonversi Desimal ke Biner di C

Cara Mengonversi Desimal Ke Biner Di C



Sistem komputer sering menggunakan bilangan biner untuk merepresentasikan data dan instruksi, tetapi karena digit desimal lebih mudah dipahami orang daripada biner, karenanya diperlukan konversi. Artikel ini akan membahas pengertian antara desimal menjadi biner dan memberikan contoh program berbagai metode yang mengubah desimal menjadi biner dalam bahasa pemrograman yang disebut C.

Bagaimana Mengkonversi Desimal ke Biner di C?

Nilai desimal yang diberikan dibagi 2 beberapa kali, dengan sisanya dicatat hingga kita mendapatkan 0 sebagai hasil bagi akhir. Proses ini digunakan untuk mengubah bilangan bulat dari desimal ke biner. Rumus yang menunjukkan proses konversi dari desimal ke biner dianggap sebagai tahapan sebagai berikut:







Langkah 1: Temukan sisanya dengan membagi angka dengan 2, lalu tambahkan ke array.



Langkah 2: Selanjutnya, bagi sisanya dengan dua.



Langkah 3: Lakukan dua langkah pertama lagi hingga hasilnya melebihi 0.





Langkah 4: Tampilkan array mundur untuk mendapatkan bentuk biner angka. Least-Significant-Bit (LSB) dari bilangan biner terletak di bagian atas, sedangkan Most-Significant-Bit (MSB) berada di bagian bawah, yang merupakan cara lain untuk menafsirkannya. Setara biner dari angka desimal yang disediakan adalah yang ini.

Untuk memahaminya dengan lebih baik, berikut adalah konversi dari 11 10 dalam konversi desimal ke biner:



Pembagian dengan 2 Hasil bagi Sisa
11 ÷ 2 5 1 (LSB)
5 ÷ 2 2 1
2-2 1 0
1-2 0 1 (MSB)


Sekarang, tulis sisanya dalam urutan terbalik, jadi, desimal (11 10 ) menjadi (1011 2 ).

Sisanya akan dicatat dan kemudian ditulis sehingga (MSB) dari bilangan biner tersebut didahulukan, kemudian sisanya. Akibatnya, 1011 2 adalah ekuivalen biner dari nilai desimal yang diberikan 11 10 . Akibatnya, 11 10 = 1011 2 . Berikut ini adalah implementasi desimal yang disebutkan di atas menjadi konversi biner dalam bahasa C.

Metode yang Digunakan untuk Mengonversi Desimal ke Biner

Metode-metode yang digunakan dalam bahasa C ini mengubah angka desimal menjadi biner:

Sekarang, implementasikan konversi desimal menjadi biner satu per satu dengan pendekatan yang disebutkan di atas.

Metode 1: Desimal ke Biner dalam Pemrograman C dengan for Loop

Di bawah ini adalah konversi angka desimal (11) menjadi biner dengan bantuan for-loop di C:

#termasuk
batal mengkonversi ( int angka1 ) {
jika ( angka1 == 0 ) {
printf ( '0' ) ;
kembali ;
}
int binary_num [ 32 ] ; // Asumsi 32 bit bilangan bulat.
int Saya = 0 ;
untuk ( ;num1 > 0 ; ) {
bilangan_biner [ saya++ ] = angka1 % 2 ;
angka1 / = 2 ;
}
untuk ( int j = i- 1 ; J > = 0 ; J-- )
printf ( '%D' , bilangan_biner [ J ] ) ;
}
int utama ( ) {
int angka1;
printf ( 'Masukkan angka desimal:' ) ;
   scanf ( '%D' , & angka1 ) ;
mengubah ( angka1 ) ;
kembali 0 ;
}


Program di atas menggunakan perulangan for untuk mengonversi bilangan desimal yang disediakan oleh pengguna menjadi biner. Outputnya adalah:

Metode 2: Desimal ke Biner dalam Pemrograman C dengan while Loop

Dalam metode ini, while-loop di C digunakan untuk mengubah angka desimal (11), menjadi biner, seperti yang ditunjukkan di bawah ini:

#termasuk
int utama ( ) {
int bilangan_desimal, bilangan_biner = 0 , dasar = 1 , sisa;
printf ( 'Masukkan angka desimal:' ) ;
   scanf ( '%D' , & angka_desimal ) ;
ketika ( angka_desimal > 0 ) {
sisa = bilangan_desimal % 2 ;
bilangan_biner = bilangan_biner + sisa * basis;
bilangan_desimal = bilangan_desimal / 2 ;
basis = basis * 10 ;
}
printf ( 'Biner dari angka desimal yang diberikan dengan while loop adalah: %d' , bilangan_biner ) ;
kembali 0 ;
}


Keempat variabel bilangan bulat bilangan_desimal, bilangan_biner, basis, dan sisa pertama kali dideklarasikan dalam program ini. Pengguna memasukkan angka_desimal, yang akan kami konversi menjadi angka_binernya. Konversi biner dilakukan dengan menggunakan while loop.

Metode 3: Desimal ke Biner dalam Pemrograman C dengan Stack

Ini adalah metode langsung dengan program C berbasis tumpukan yang mengubah nilai desimal menjadi biner:

#termasuk

#define MAX_SIZE 32 // jumlah maksimum bit dalam representasi biner
int utama ( ) {
int bilangan_desimal, biner [ MAX_SIZE ] , atas = -1 ;
printf ( 'Silakan Masukkan angka desimal apa saja:' ) ;
    scanf ( '%D' , & angka_desimal ) ;
ketika ( angka_desimal > 0 ) {
biner [ ++atas ] = bilangan_desimal % 2 ;
angka_desimal / = 2 ;
}
printf ( 'Biner dari %d menggunakan metode tumpukan adalah: ' ) ;
ketika ( atas > = 0 ) {
printf ( '%D' , biner [ atas-- ] ) ;
}
kembali 0 ;
}


Kami pertama kali mendeklarasikan tiga variabel integer top, binary, dan decimal_num dalam program ini. Bagian atas adalah indeks elemen tertinggi dalam tumpukan, desimal adalah angka dalam bentuk desimal yang dimasukkan oleh pengguna, biner adalah larik yang akan berisi bit dalam biner sebagai MAX_SIZE bit dan bilangan_desimal adalah larik biner. Setelah itu, konversi biner dilakukan dengan menggunakan while loop.

Outputnya adalah:

Metode 4: Desimal ke Biner dalam Pemrograman C dengan Operator Bitwise

Operator yang dikenal sebagai operasi bitwise memanipulasi setiap bit simbol biner yang mewakili bilangan bulat. Berikut ini adalah skrip C dasar yang menggunakan operasi bitwise untuk menerjemahkan angka dalam desimal menjadi biner:

#termasuk

// Metode ini akan menampilkan semua 4 bit angka
konversi batal ( int angka1 ) {
// Pertimbangkan a 4 nomor -bit
untuk ( int saya = 3 ; Saya > = 0 ; Saya-- ) {
int sedikit = ( 1 << Saya ) ;
jika ( angka1 & sedikit )
printf ( '1' ) ;
kalau tidak
printf ( '0' ) ;
}
}
int utama ( ) {
int angka1;
printf ( 'Masukkan angka desimal:' ) ;
   scanf ( '%D' , & angka1 ) ;
konversi ( angka1 ) ;
kembali 0 ;
}


Program ini akan mengeksekusi perulangan for melalui angka yang dimulai dari bit paling signifikan dan diakhiri pada bit dengan signifikansi paling kecil. Dengan melakukan operasi 'bitwise AND' pada mask dan num, kita dapat menentukan apakah bitnya adalah 0 atau 1. Jika bukan nol, bit saat ini adalah 1; jika tidak, itu adalah 0.

Untuk menampilkan bentuk biner dari num1, keluarkan bit setelah setiap iterasi. Hasil akhir setelah eksekusi selesai akan seperti di bawah ini:

Kesimpulan

Ini adalah keterampilan penting dalam pemrograman komputer untuk mengubah angka dari desimal menjadi biner. Mengubah bilangan desimal menjadi biner memungkinkan kita melakukan operasi yang berbeda dalam pemrograman C. Artikel ini menyediakan 4 metode untuk mengubah nilai desimal menjadi nilai biner.