Basis sepuluh digit, mulai dari 0 hingga 9, digunakan dalam sistem penghitungan biner desimal atau "denary". Ini adalah sistem penomoran yang paling banyak digunakan. Setiap digit dalam sistem ini memiliki tempat dan titik desimal. Di sisi lain, sistem biner menggunakan bilangan bulat dalam basis dua, mulai dari 0 hingga 1. Ini adalah sistem yang paling mudah karena memiliki dua digit. 0 dan 1. Akibatnya, para ahli dalam pemrograman komputer atau bidang teknik terkait lainnya perlu mengubah kode desimal menjadi biner
Cakupan
Pada artikel ini, kita akan belajar cara mengonversi Desimal ke Biner dengan Python, menggunakan fungsi python bawaan dan tanpanya
pengantar
Biner adalah salah satu aspek dasar yang paling penting dari Komputer dan Sistem Digital lainnya. Saat kita manusia menggunakan bahasa untuk memahami dan berkomunikasi satu sama lain, Komputer dan Sistem Digital lainnya menggunakan Biner. Ini adalah sistem angka berbasis 2 dengan hanya dua angka, 0 & 1, sesuai dengan status ON & OFF yang dapat dipahami komputer Anda
Karena manusia normal memiliki sepuluh jari untuk mewakili sistem angka sederhana yang disebut Desimal, komputer memiliki status ON & OFF yang mewakili Biner. Jadi untuk memahami dan menginterpretasikan Biner, kita memerlukan beberapa teknik untuk mengubah kode biner menjadi kode desimal (dapat dibaca manusia) dan sebaliknya. Oleh karena itu, artikel ini akan membahas cara mengubah Desimal ke Biner dan sebaliknya, dalam konteks salah satu bahasa pemrograman komputer, Python
Memahami Desimal dan Biner
Sistem Desimal (Base-10) menggunakan sepuluh angka mulai dari 0 hingga 9 dan kemudian menggunakan kombinasinya untuk membentuk digit, dengan setiap digit bernilai sepuluh kali lipat dari digit terakhir (1, 10, 100, seterusnya) dari kiri
Pertimbangkan nilai 265
- Di sini, 265 adalah kombinasi angka mulai dari 0 hingga 9 yang membentuk setiap digit
- Setiap digit sepuluh kali lebih banyak dari digit terakhir dari kiri ke kanan 5 -> 5×100;
Sistem Biner (Base-2) juga serupa. Ini adalah kombinasi angka 0 atau 1, dengan setiap digit bernilai dua kali lebih banyak dari digit terakhir (1, 2, 4, seterusnya) dari kiri ke kanan
Representasi Digit Desimal
…[0 sampai 9][0 sampai 9][0 sampai 9][0 sampai 9][0 sampai 9]…10410^410410310^310310210^210210110^110110010^0100NthN^{th}Nth digit5th5^{th}5th digit4th4
Representasi Digit Biner
…[0 atau 1][0 atau 1][0 atau 1][0 atau 1][0 atau 1]…242^424232^323222^222212^121202^020NthN^{th}Nth digit5th5^{th}5th digit4th4
Konversi Biner ke Desimal dengan Python
Kita telah melihat bahwa Sistem Biner adalah kombinasi dari [0 atau 1], dengan setiap digit bernilai dua kali lipat dari digit terakhir, jadi mari kita lihat bagaimana informasi ini akan membantu kita mengonversi persamaan biner ke desimal
Pertimbangkan Bilangan Biner 01011
Angka01011Berat242^424=16232^323=8222^222=4212^121=2202^020=1
Karena itu,
(01011)2=(0×24)+(1×23)+(0×22)+(1×21)+(1×20)=(0)+(8)+(0)+(2)
Oleh karena itu, biner(basis-2) (01011)2(01011)_2(01011)2 setara dengan (11)10(11)_{10}(11)10 Angka desimal(basis-10)
Mengkonversi Biner ke Desimal dengan Python
Kita akan melihat cara mengonversi biner ke Desimal dengan Python menggunakan fungsi bawaan
Fungsi Bawaan di Python untuk mengonversi Biner ke Desimal
Di Python, kita bisa menggunakan fungsi int() untuk mengonversi biner menjadi nilai desimalnya. Fungsi int() membutuhkan 2 argumen, nilai dan basis angka yang akan dikonversi, yaitu 2 dalam kasus bilangan biner
Sintaksis
Kode
# Function Binary to Decimal number def binaryToDecimal(val): return int(val, 2) # Driver code if __name__ == '__main__': print(binaryToDecimal('100')) print(binaryToDecimal('101')) print(binaryToDecimal('1001'))
Keluaran
Konversi Desimal ke Biner dengan Python
Mari kita coba pahami konversi Desimal ke Biner. Teknik termudah untuk mengonversi bilangan desimal menjadi ekivalen binernya adalah Pembagian dengan 2
Pada teknik Pembagian dengan 2, kita terus menerus membagi bilangan desimal dengan 2 dan mencatat pengingat tersebut sampai kita mendapatkan 1 sebagai nilai masukan kita. Kemudian kami membaca pengingat yang dicatat dalam urutan terbalik untuk mendapatkan nilai biner terakhir
Mari hancurkan pernyataan sebelumnya untuk mendapatkan kejelasan lebih lanjut. Asumsikan kita memiliki fungsi khusus yang membagi angka input dengan 2 dan memberikan sisanya sebagai output. Untuk Desimal ke Biner, kami memanggil fungsi khusus ini beberapa kali hingga kami mendapatkan 1 sebagai nilai input. Kemudian, kami akhirnya mencetak semua pengingat yang disimpan untuk mendapatkan nilai biner (basis-2) terakhir
Mengubah Desimal Menjadi Biner dengan Python
Sekarang kita akan melihat bagaimana kode Desimal ke Biner dengan Python. Kami pertama-tama akan mencoba mengkodekan teknik yang kami pelajari menggunakan panggilan fungsi rekursif khusus dengan Python
1. Fungsi Rekursif Kustom dalam Python untuk mengonversi Desimal ke Biner
Dalam contoh ini, kita akan menulis fungsi khusus (DecimalToBinary) untuk diimplementasikan untuk mendapatkan hasil bagi (input ke pemanggilan fungsi berikutnya) dan sisanya (nilai output), dan kemudian kita akan memanggilnya berulang kali hingga nilai input lebih besar dari dan sama dengan
Kode
#Recursive Function to convert Decimal to Binary def decimalToBinary(ip_val): if ip_val >= 1: # recursive function call decimalToBinary(ip_val // 2) # printing remainder from each function call print(ip_val % 2, end = '') # Driver Code if __name__ == '__main__': # decimal value ip_val = 24 # Calling special function decimalToBinary(ip_val) _
Keluaran
Selain itu, Python juga menyediakan fungsi bawaan untuk mengonversi Desimal ke Biner
2. Fungsi Bawaan di Python untuk mengonversi Biner ke Desimal
Di Python, kita cukup menggunakan fungsi bin() untuk mengonversi dari nilai desimal ke nilai biner yang sesuai. bin() mengambil nilai sebagai argumennya dan mengembalikan ekivalen biner
Catatan. bin() mengembalikan nilai biner dengan awalan 0b, jadi tergantung pada kasus penggunaan, pemformatan harus dilakukan untuk menghapus 0b
Kode
# Function to convert decimal to binary # using built-in python function def decimalToBinary(n): # converting decimal to binary # and removing the prefix(0b) return bin(n).replace("0b", "") # Driver code if __name__ == '__main__': # calling function # with decimal argument print(decimalToBinary(77))
Keluaran
Kita juga bisa mengonversi Desimal ke Biner dengan cara lain selain menggunakan fungsi bawaan dari Python
3. Tanpa menggunakan Fungsi Bawaan di Python untuk mengonversi Biner ke Desimal
Kode
# Function to convert Decimal to Binary def decimalToBinary(n): return "{0:b}".format(int(n)) # Driver code if __name__ == '__main__': print(decimalToBinary(77))
Keluaran
Kesimpulan
- Sebagian besar Komputer dan sistem Digital menggunakan biner karena penyimpanan datanya yang andal
- Sistem Desimal (basis-10) menggunakan kombinasi angka dari 0 sampai 9 untuk membentuk digit, dengan setiap digit bernilai sepuluh kali lipat dari digit terakhir
- Sistem Biner (basis-2) menggunakan kombinasi 0 atau 1 untuk membentuk digit, dengan setiap digit bernilai dua kali lipat dari digit terakhir
- Konversi Biner ke Desimal adalah jumlah bobot setiap digit (2i x nilai ke-i)
- Biner ke Desimal dengan Python dapat dilakukan menggunakan fungsi bawaan int(,)
- Konversi Desimal ke Biner dicapai dengan menggunakan teknik Pembagian Dengan 2
Beberapa cara untuk mengonversi Desimal ke Biner dengan Python adalah dengan menggunakan fungsi rekursif khusus, functionbin() bawaan, atau menggunakan “{0. b}". format(int())