Rumah > Artikel > pembangunan bahagian belakang > Mengapa ~2 Menghasilkan -3 dalam Python?
Meneroka Operator Pelengkap Bitwise Python (~ Tilde)
Memahami cara operator ~ Python berfungsi adalah penting apabila berurusan dengan manipulasi bit. Operator ini melengkapkan setiap bit nombor tertentu, pada asasnya menyongsangkan 0s dan 1s.
Mengapa ~2 Keputusan dalam -3
Operator ~ melengkapi bit sesuatu nombor, tetapi tafsiran nilai yang terhasil bergantung pada seni bina mesin. Dalam kebanyakan sistem, nombor negatif disimpan menggunakan pelengkap dua.
Untuk memahami cara ~2 menghasilkan -3, mari kita periksa perwakilan pelengkap dua bagi -2 (8 bit):
1111 1110
Ini diperoleh dengan menyongsangkan bit pasangan positif (0000 0010), yang menjadi 1111 1101, dan kemudian menambah satu. Bit paling kiri (1) menunjukkan nombor negatif.
Cara ~ Operator Berfungsi
Apabila digunakan pada 2 (0000 0010), operator ~ melengkapi setiap bit kepada menghasilkan 1111 1101: ini adalah sama dengan perwakilan pelengkap kedua-dua bagi -3. Oleh itu, ~2 = -3.
Implikasi Operator ~
Adalah penting untuk ambil perhatian bahawa operator ~ hanya membalikkan bit; tafsiran nilai yang terhasil ditentukan oleh mesin. Ini bermakna bahawa tingkah laku pengendali ~ mungkin berbeza bergantung pada seni bina asas dan piawaian perwakilan data.
Atas ialah kandungan terperinci Mengapa ~2 Menghasilkan -3 dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!