Daftar Isi:
- Pengantar biner
- , menelan nilai int. Outputnya adalah string yang mewakili nilai int dalam digit biner.
Video: Program Konversi Biner ke Desimal - Bahasa C 2024
Dengan senang hati, Anda tidak perlu memprogram perangkat digital apapun dengan menulis kode tingkat rendah, flipping switches, atau kabel solder Itu karena pemrograman C saat ini terjadi pada tingkat yang lebih tinggi. Tapi tetap saja, jauh di dalam mesin, jenis pengkodean tingkat rendah terus berlanjut. Anda hanya terisolasi dari sup primordial yang ada dan nol dari mana semua perangkat lunak meningkat.
Pengantar biner
Angka biner, atau bit , adalah 1 dan 0. Sendirian, mereka lemah; Tapi dalam kelompok, mereka mengumpulkan kekuatan besar. Penyimpanan digital menggunakan bit-bit ini dalam kelompok.
Istilah | Variabel C | Bits | Rentang Nilai Tidak Ditandatangani | Rentang Nilai yang Ditandatangani |
---|---|---|---|---|
Bit | _Bool | 1 > 0 sampai 1 | 0 sampai 1 | Byte |
char | 8 | 0 sampai 255 | -128 sampai 127 | Kata |
int pendek | 16 > 0 sampai 65, 535 | -32, 768 sampai 32, 767 | Panjang | panjang int |
32 | 0 sampai 4, 294, 967, 295 | -2, 147, 483, 648 sampai 2, 147, 483, 647 |
|
Keuntungan mengelompokkan bit menjadi byte, kata, dan sebagainya adalah membuatnya lebih mudah ditangani. Prosesor lebih baik menangani informasi dalam potongan. Bagaimana potongan mendapatkan nilai mereka didasarkan pada kekuatan 2. |
Ekspresi
Nilai Biner | 2 | 0 |
---|---|---|
1 1 > 2 | 1 | 2 |
10 2 | 2 | 4 |
100 2 | 3 | 8 |
1000 2 | 4 | 16 |
10000 2 | 5 | 32 |
100000 2 | 6 | 64 |
1000000 2 > 7 | 128 | 10000000 |
|
Sebenarnya, Anda akan menemukan 256 nilai yang mungkin untuk sebuah byte, yang mencakup permutasi semua nol. Itu juga nilai. | Di bawah ini menunjukkan bagaimana kekuatan dari 2 peta ke dalam penyimpanan biner. Sama seperti tempat desimal di bilangan dasar 10 meningkat dengan kekuatan 10, bit dalam bilangan biner meningkat dengan kekuatan 2, membaca dari kanan ke kiri. |
5, 2
3
, 2 1 , dan 2 < 0 . Bila Anda mengalikan nilai-nilai ini dengan rekan desimal mereka dan kemudian menyelesaikannya, Anda mendapatkan representasi desimal biner 00101011, yaitu 43. Itu bagus dan bagus, tapi tolong jangan hafal itu! Jangan khawatir dengan menerjemahkan biner menjadi nilai desimal; komputer melakukan pekerjaan itu untuk Anda sepanjang waktu. Memang, komputer hanya melihat biner dan kemudian menampilkan angka desimal sebagai tanda hormat untuk bola mata manusia Anda.Tapi ketika Anda memanipulasi nilai biner, ada baiknya untuk mengetahui apa yang sedang terjadi. Mengubah nilai bit menjadi 1 disebut sebagai menyetel bitnya. Mengubah nilai bit menjadi 0 disebut sebagai
mengatur ulang sedikit.
-
Cara menampilkan nilai biner
-
Agar lebih mudah memahami operator manipulasi biner bahasa C, ada baiknya melihat nomor biner yang sedang beraksi. Fungsi printf () tidak memiliki karakter konversi biner, dan library C tidak meng-host fungsi output biner. Tidak, untuk melihat nomor biner, Anda harus membuat sendiri fungsi Anda. Fungsi binbin ()
-
menyajikan fungsi keluaran biner yang disebut binbin (). Fungsi binbin (), pada Baris 15 di Fungsi binbin ()
, menelan nilai int. Outputnya adalah string yang mewakili nilai int dalam digit biner.
THE
BINBIN () FUNCTION #include char * binbin (int n); int main () {int input; printf ("Ketik nilai 0 sampai 255:"); scanf ("% d", & input); printf ("% d adalah biner% sn", input, binbin (input)); return (0);} char * binbin (int n) {char char statis [9]; int x; untuk (x = 0; x <8; x ++) {bin [x] = n & 0x80? '1': '0'; n << = 1;} bin [x] = "; return (bin);} Secara umum, isi binbin () berfungsi agak misterius. Tidak apa-apa. Latihan 1
: Ketik kode sumber dari fungsi binbin ()
ke dalam sebuah proyek baru. Bangun dan jalankan beberapa kali untuk melihat bagaimana bilangan bulat tampak sebagai bilangan biner.
Seperti yang tertulis dalam The
binbin () Fungsi, binbin () hanya menampilkan 8 bit data, meskipun tipe variabel int biasanya menyimpan lebih banyak bit. Latihan 2: Ubah binbin () fungsi dari The < binbin ()
Fungsi sehingga menampilkan 16 bit dari nilai int. (Baiklah, secara teknis, 16 bit adalah int pendek.) Untuk melakukannya, Anda perlu mengubah item ini: Baris 9: Alter teks sehingga 65535 ditentukan bukan 255. Baris 17: Mengubah ukuran array menjadi 17 menjadi 16 karakter dalam output ditambah karakter null pada akhir string.
Baris 20: Sesuaikan nilai langsung 8 di kode menjadi 16 untuk memperhitungkan semua 16 karakter hasil. Baris 22: Ganti nilai 0x80 dengan 0x8000. Perubahan ini membuat bidang bit lebih besar. Bangun Latihan 2. Jalankan beberapa kali untuk melihat seperti apa bidang bit untuk nilai yang lebih besar.