Pertanyaan yang diberi tag «bit-manipulation»

Manipulasi bit individu. Operator yang digunakan mungkin termasuk bitwise AND, OR, XOR, NOT, shift kiri, dan shift kanan.





5
Mengekstrak bit dengan perkalian tunggal
Saya melihat teknik yang menarik digunakan dalam jawaban untuk pertanyaan lain , dan ingin mengerti sedikit lebih baik. Kami diberi integer 64-bit yang tidak ditandatangani, dan kami tertarik pada bit berikut: 1.......2.......3.......4.......5.......6.......7.......8....... Secara khusus, kami ingin memindahkan mereka ke posisi delapan besar, seperti: 12345678........................................................ Kami tidak peduli tentang nilai bit …


10
Operasi bitwise C # paling umum pada enum
Untuk kehidupan saya, saya tidak ingat bagaimana mengatur, menghapus, beralih atau menguji sedikit di bitfield. Entah saya tidak yakin atau saya mencampurnya karena saya jarang membutuhkan ini. Jadi "bit-cheat-sheet" akan menyenangkan untuk dimiliki. Sebagai contoh: flags = flags | FlagsEnum.Bit4; // Set bit 4. atau if ((flags & FlagsEnum.Bit4)) == …


1
Apa arti dari double tilde (~~) di Jawa?
Saat menelusuri kode sumber Guava, saya menemukan potongan kode berikut (bagian dari implementasi hashCodeuntuk kelas batin CartesianSet): int adjust = size() - 1; for (int i = 0; i < axes.size(); i++) { adjust *= 31; adjust = ~~adjust; // in GWT, we have to deal with integer overflow carefully …

6
Menggunakan bitwise ATAU 0 untuk membuat angka
Seorang kolega saya menemukan metode untuk meratakan angka float menggunakan bitwise atau: var a = 13.6 | 0; //a == 13 Kami membicarakannya dan bertanya-tanya beberapa hal. Bagaimana cara kerjanya? Teori kami adalah bahwa menggunakan operator seperti itu melemparkan angka ke bilangan bulat, sehingga menghilangkan bagian fraksional Apakah ada kelebihan …




9
C # int ke byte []
Saya perlu mengonversi satu intke byte[]satu cara melakukannya adalah dengan menggunakannya BitConverter.GetBytes(). Tetapi saya tidak yakin apakah itu cocok dengan spesifikasi berikut: Integer bertanda XDR adalah datum 32-bit yang mengkodekan integer dalam kisaran [-2147483648,2147483647]. Bilangan bulat diwakili dalam notasi komplemen dua. Bytes paling signifikan dan paling sedikit adalah 0 dan …
172 c#  .net  bit-manipulation  nfs 

11
~ x + ~ y == ~ (x + y) selalu salah?
Apakah kode ini selalu bernilai false? Kedua variabel adalah int yang ditandatangani dua komplemen. ~x + ~y == ~(x + y) Saya merasa harus ada beberapa nomor yang memenuhi persyaratan. Saya mencoba menguji angka antara -5000dan 5000tetapi tidak pernah mencapai kesetaraan. Apakah ada cara untuk membuat persamaan untuk menemukan solusi …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.