Pengendali bitwise dalam Bahasa C

Bitwise Operators C Language



Pengendali bitwise, yang sering dikenali sebagai pengekodan tahap bit, telah dibuang untuk mentafsirkan data hanya pada tahap bit. Bitwise melakukan operasi pada satu atau bahkan corak bit tambahan dan nombor binari pada tahap bit. Ini telah digunakan untuk mempercepat perkembangan perkiraan pengiraan berangka. Ini terdiri daripada dua nombor, satu daripadanya adalah 0 dan yang lain adalah 1. Berikut adalah beberapa operator bitwise yang akan kita bincangkan dalam artikel kita.

Log masuk dari sistem Linux anda dan cuba jalan pintas Ctrl + Alt + T untuk membuka terminal konsol. Kami akan mempunyai beberapa contoh untuk menghuraikan operasi operator bitwise dalam bahasa C. Mari huraikan setiap operator bitwise secara berasingan.







Sedikit demi sedikit DAN:

Pengendali bitwise telah digunakan untuk meniru sedikit hasil jika bit itu terdapat dalam kedua-dua operasi bersama. C atau C ++ memerlukan 2 operan yang melakukan DAN pada setiap bit kedua-dua integer tersebut. Bitwise AND menghasilkan 1 apabila kedua-dua bit mempunyai nilai 1. Oleh itu, untuk memahami cara kerja, buat dan buka fail jenis C menggunakan editor Nano. Untuk itu, kita harus menggunakan instruksi nano di cangkang seperti berikut:



$nanoujian.c



Kod untuk pengendali Bitwise AND telah ditunjukkan dalam gambar di bawah. Yang mesti anda buat hanyalah menulis kod ini dalam test.c fail editor nano GNU anda sebagaimana adanya. Kod ini mempunyai pustaka header stdio.h tanpanya kita tidak dapat menyelesaikan pengekodan dalam pengaturcaraan C. Kemudian kami telah membuat kaedah utama dengan jenis pengembaliannya sebagai integer. Dalam bahasa C, pelaksanaan kod dilakukan melalui kaedah utama. Oleh itu, kami telah menyatakan dua pemboleh ubah jenis integer, x dan y, dengan nilai 35 dan 13 yang sesuai. Selepas itu, pemboleh ubah integer lain telah ditentukan dengan nol sebagai nilainya. Kami akan menggunakan dua pemboleh ubah integer pertama dan menerapkan operator bitwise AND di antara mereka. Kerja ini telah dilakukan pada baris seterusnya di mana operator AND telah digunakan sebagai &, dan nilai yang dihasilkan akan disimpan dalam pemboleh ubah null z. Kemudian kami telah menggunakan pernyataan cetak untuk menunjukkan nilai yang dihasilkan di skrin terminal, dan kaedah utama ditutup. Simpan fail anda menggunakan pintasan GNU Ctrl + S dan kemudian keluar dari penyunting nano melalui Ctrl + X dari mesin taip papan kekunci.





Jadi, inilah masanya untuk menyusun kod di atas setelah menyimpan fail. Gunakan arahan gcc di shell konsol anda semasa menggunakan nama fail sebagai test.c atau apa sahaja yang anda namakan fail tersebut dan tekan kekunci Enter. Anda dapat melihatnya tidak menunjukkan kesalahan; ini bermaksud kodnya betul secara manual.



$gccujian.c

Setelah menyusun kod, kini saatnya untuk melaksanakan kodnya sekarang. Untuk tujuan ini, jalankan pertanyaan yang dinyatakan di bawah di shell. Hasilnya menunjukkan 1 sebagai hasilnya. Ini bermaksud kedua-dua pemboleh ubah integer kita mempunyai 1 dalam satu bitnya. Inilah sebabnya mengapa ia mengembalikan 1.

$./a. keluar

Bitwise ATAU:

Sekarang, gilirannya untuk operator ATAU bitwise dijelaskan. Pengendali bitwise mengembalikan 1 hasilnya apabila salah satu bitnya adalah 1. Sekiranya kedua-dua bit dua bilangan bulat adalah 0, maka ia menghasilkan 0. Setelah mendapat semua bit, akan ada satu set bit yang dihasilkan. Kita mesti melihat berapa bilangan bit yang terbentuk. Jadi, buka dokumen test.c yang sama terlebih dahulu. Ketik dan kemudian simpan kod yang ditunjukkan di bawah dalam fail GNU menggunakan kekunci Ctrl + S. Kodnya hampir sama dengan contoh operator bitwise AND di atas. Kali ini kami baru saja menukar nilai bilangan bulat x menjadi 47, dan kami telah menggunakan operator ATAU, mis. | antara kedua-dua pemboleh ubah. Tutup fail untuk menyusun kod.

Setelah berjaya menjalankan ujian dokumen.c, ia menunjukkan 47 output bit.

$./a. keluar

Bitwise XOR:

Pengendali bitwise mengembalikan 1 apabila kedua-dua bit nombor berbeza. Jadi apabila bit sama, ia akan menghasilkan 0. Tanda operator ^ akan mewakili operator bitwise. Oleh itu, buka dokumen dan tuliskan kod lama yang sama dalam penyunting fail GNU. Kali ini kami telah menggunakan operator ^ dalam dua pemboleh ubah integer, dan hasilnya akan disimpan dalam pemboleh ubah z semasa mencetak di terminal.

Menyusun dan Menjalankan ujian fail.c mengembalikan 34 hasilnya. Ini bermaksud bilangan bulat baru 34 dihasilkan setelah pengendali XOR diterapkan pada dua pemboleh ubah integer.

$./a. keluar

Pelengkap Bitwise:

Pengendali ini hanya akan digunakan untuk satu pemboleh ubah, dan ia akan mengembalikan nilai nombor bit. Sebagai contoh, ia akan menukar 0 bit menjadi 1 dan 1 hingga 0 bit. Tuliskan kod yang sama dalam fail yang sama tetapi dengan sedikit perubahan pada baris 6. Kami telah menetapkan kebalikan dari x ke z.

Susun fail dan jalankan. Di C, hasil pelengkap Bitwise telah ditingkatkan dengan 1 dengan tanda negatif.

Operator Shift Kiri:

Ia akan mengubah tempat bit ke tahap tertentu. Kod yang sama dapat ditunjukkan pada gambar yang dilampirkan- di bawah ini. Dalam contoh ini, kita akan mengalihkan 2 bit ke kiri.

Keluaran menunjukkan 188 sebagai nilai yang baru dihasilkan.

$./a. keluar

Operator Shift Kanan:

Ia berfungsi sama seperti pergeseran kiri tetapi pada arah yang bertentangan, seperti yang ditunjukkan dalam kod di bawah.

Kali ini kita mendapat 11 sebagai output apabila mengalihkan 2 bit ke sisi kanan.

$./a. keluar

Kesimpulan:

Kami telah merangkumi semua 6 operator asas bitwise dalam kod bahasa C kami dalam artikel ini. Saya harap anda mendapat apa yang anda mahukan dari panduan kami.