Rumah Keuangan Pribadi Mengekspresikan bilangan biner di C ++ - dummies

Mengekspresikan bilangan biner di C ++ - dummies

Daftar Isi:

Video: Developer Keynote (Google I/O '18) 2024

Video: Developer Keynote (Google I/O '18) 2024
Anonim

Variabel C ++ disimpan secara internal seperti yang disebut bilangan biner. Nomor biner disimpan sebagai urutan nilai 1 dan 0 yang dikenal sebagai bit . Sebagian besar waktu, Anda tidak perlu berurusan dengan angka pada tingkat bit; Namun, ada saat-saat ketika melakukannya mudah dilakukan. C ++ menyediakan seperangkat operator untuk tujuan ini.

Operator logika bitwise yang disebut beroperasi pada argumen mereka pada tingkat bit. Untuk memahami bagaimana mereka bekerja, periksa bagaimana komputer menyimpan variabel.

Sistem bilangan desimal

Angka yang Anda kenal dikenal sebagai angka desimal karena didasarkan pada angka 10. Secara umum, pemrogram mengekspresikan C ++ variabel sebagai angka desimal Jadi, Anda akan mengatakan bahwa nilai var adalah 123, misalnya.

Angka seperti 123 mengacu pada 1 * 100 + 2 * 10 + 3 * 1 . Masing-masing bilangan dasar - 100, 10, dan 1 - adalah kekuatan 10.

123 = 1 * 100 + 2 * 10 + 3 * 1

Dinyatakan dalam cara yang sedikit berbeda namun setara:

123 = 1 * 10 2 Ingat bahwa angka apapun pada daya nol adalah 1. Sistem bilangan lain Penggunaan bilangan dasar 10 untuk Sistem penghitungan batang, kemungkinan besar, dari kenyataan bahwa manusia memiliki 10 jari, alat penghitung asli. Alternatifnya adalah basis 20.

Jika anjing telah menemukan skema penomoran kami, mungkin berdasarkan angka 8 (satu digit dari setiap kaki tidak terlihat di bagian belakang kaki). Sistem

oktal

juga akan bekerja dengan baik:

123

10 = 1 * 8 2

+ 7 * 8 1 3 dan 8 di sini mengacu pada sistem penomoran, 10 untuk bilangan desimal (alas 10) dan 8 untuk oktal (alas 8). Sistem penghitungan dapat menggunakan dasar positif apapun. Sistem bilangan biner Komputer pada dasarnya memiliki dua jari. (Mungkin karena itulah komputer sangat bodoh: Tanpa jempol yang berlawanan, mereka tidak dapat memahami apapun. Dan mungkin sekali lagi, mungkin tidak.) Komputer lebih suka menghitung menggunakan basis 2. Jumlah 123 10 akan dinyatakan sebagai: 123 10 = 0 * 128 + 1 * 64 + 1 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 1 * 1

= 01111011 < 2

Selalu konvensi untuk mengekspresikan bilangan biner dengan menggunakan digit biner 4, 8, 32, atau 64 bahkan jika digit terdepan nol. Ini juga karena cara komputer dibangun secara internal.

Karena kata digit mengacu pada kelipatan sepuluh, digit biner disebut

bit . Istilahnya berasal dari bilangan biner (b-) (-it).Delapan bit membentuk satu byte. Sebuah kata biasanya dua atau empat byte. Dengan dasar kecil seperti itu, perlu menggunakan sejumlah besar bit untuk mengekspresikan bilangan. Tidak nyaman menggunakan ungkapan seperti 01111011

2 untuk mengekspresikan nilai biasa seperti 123

10

. Pemrogram lebih memilih untuk mengekspresikan angka dengan satuan byte, atau delapan bit. Sebuah digit tunggal empat bit pada dasarnya adalah basis 16, karena empat bit dapat mengekspresikan nilai apapun dari 0 sampai 15. Base 16 dikenal sebagai sistem penghitungan heksadesimal . Heksadesimal sering dikontrak menjadi hanya hex.

Heksadesimal menggunakan digit yang sama untuk angka 0 sampai 9. Untuk digit antara 9 dan 16, heksadesimal menggunakan enam huruf pertama alfabet: A untuk 10, B untuk 11, dan seterusnya. Jadi, 123 10 menjadi 7B 16 .

123 = 7 * 16 1 + B (yaitu, 11) * 16 0

= 7B 16 Karena pemrogram lebih suka mengekspresikan angka dalam 4, 8, 32, atau 64 bit, mereka juga lebih suka untuk mengekspresikan bilangan heksadesimal dalam 1, 2, 4, atau 8 digit heksadesimal bahkan ketika digit terdepan adalah 0. Akhirnya, sangat merepotkan untuk mengekspresikan bilangan heksadesimal seperti 7B < 16 menggunakan subskrip, karena terminal tidak mendukung subskrip. Bahkan pada pengolah kata, tidak merepotkan untuk mengubah font ke dan dari mode subscript hanya untuk mengetik dua digit. Oleh karena itu, pemrogram menggunakan konvensi untuk memulai angka heksadesimal dengan 0x (alasan untuk suatu keyakinan aneh kembali ke hari-hari awal C). Dengan demikian, 7B menjadi 0x7B. Dengan menggunakan konvensi ini, 0x7B sama dengan 123 (sementara 0x123 sama dengan 291.)

Semua operator matematika dapat dilakukan pada bilangan heksadesimal dengan cara yang sama seperti yang diterapkan pada bilangan desimal. Alasan mengapa kita tidak bisa melakukan perkalian seperti 0xC * 0xE di kepala kita lebih berkaitan dengan tabel perkalian yang kita pelajari di sekolah daripada pada batasan dalam sistem bilangan.

Mengekspresikan bilangan biner di C ++ - dummies

Pilihan Editor

Bertahan dalam Zombie Sieges di Minecraft - dummies

Bertahan dalam Zombie Sieges di Minecraft - dummies

Bermasalah dengan zombie yang menyerang desa Anda pada malam hari di Minecraft? Pelajari bagaimana untuk membela diri, menyembuhkan penduduk desa zombie, dan pulihkan dunia Anda!

Zaman Batu di Minecraft - dummies

Zaman Batu di Minecraft - dummies

Tonggak penting dalam mode Minecraft Survival, dan yang dicapai oleh beberapa pemain di Hari pertama, mencapai Zaman Batu. Setelah Anda membuat pickax kayu dan Anda bisa menemukan gua atau menggali lubang, item dalam tabel berikut tersedia untuk Anda. Sebagian besar bahan berbasis batu lebih padat dari yang lain ...

Zaman Looting di Minecraft - dummies

Zaman Looting di Minecraft - dummies

Anda mencapai Usia Looting di Minecraft di awal permainan - kadang-kadang, bahkan paralel untuk mencapai Era Kayu. Anda mulai dengan membunuh musuh untuk menjarah, dan dengan menggunakan jarahan untuk memperbaiki repertoar kerajinan Anda. Lebih banyak item kemudian tersedia bagi Anda, seperti tercantum dalam tabel. Semua alat meningkatkan jumlah ...

Pilihan Editor

Infografis tepat waktu: Berbagi Breaking News - dummies

Infografis tepat waktu: Berbagi Breaking News - dummies

Walaupun infografik Anda tidak mungkin menjadi satu-satunya sumber berita, Ini bisa membantu pemahaman pembaca akan sebuah acara berita. Misalnya, banyak orang belajar di Twitter pada bulan Oktober, 2011 bahwa pendiri Apple Steve Jobs telah meninggal dunia. Infografis tidak akan menjadi orang pertama yang mendengarnya. Tapi orang-orang ...

Pilihan Editor

GED Contoh Pertanyaan: Pertanyaan Ilmu Fisik - dummies

GED Contoh Pertanyaan: Pertanyaan Ilmu Fisik - dummies

Ketika Anda mencapai bagian Sains GED, Anda akan diharapkan memiliki pengetahuan umum di semua cabang Ilmu Pengetahuan, termasuk Ilmu Fisika. Berikut adalah contoh jenis pertanyaan yang mungkin Anda hadapi pada hari ujian. Kecepatan dan Kecepatan Ada perbedaan antara kecepatan dan kecepatan, meskipun terkadang Anda ...

Latihan GED RLA: Reading Comprehension - dummies

Latihan GED RLA: Reading Comprehension - dummies

Cara terbaik untuk mempersiapkan bagian pemahaman bacaan GED Tes RLA adalah melakukan sebanyak mungkin pertanyaan latihan. Simak sampel untuk melihat apa yang akan Anda hadapi pada hari ujian. Contoh Pertanyaan Pertanyaan 1-6 mengacu pada bagian berikut. Fasilitas untuk Akses ke Perusahaan Kreatif (FACE) Awalnya didirikan ...

GED Penalaran melalui Latihan Keterampilan Membaca Bahasa Seni - dummies

GED Penalaran melalui Latihan Keterampilan Membaca Bahasa Seni - dummies

Komponen bacaan Penalaran meskipun Bahasa Seni Bagian pada GED terdiri dari kutipan dari fiksi dan nonfiksi. Setiap kutipan diikuti oleh beberapa item pilihan berdasarkan bahan bacaan. Untuk pertanyaan di bagian ini, pilih satu jawaban terbaik untuk setiap pertanyaan. Bekerja dengan hati-hati, tapi jangan terlalu banyak menghabiskan waktu ...