2¹⁶-1 & 2⁵ = 2⁵ (atau? Jelas?)
Seorang pengembang bertanya kepada saya hari ini apakah bitwise 65535 & 32 yaitu 2¹⁶-1 & 2⁵ =? Mula-mula saya berpikir secara spontan 32 tetapi tampaknya mudah ketika saya berpikir selama beberapa menit dan kemudian menjawab 32. 32 tampaknya merupakan jawaban yang benar tetapi bagaimana? 65535 = 2¹⁶-1 = 111111111111111111 (tapi sepertinya tidak benar karena angka biner ini semuanya adalah -1 (?)), 32 = 100000 tapi saya tidak bisa mengonversinya di kepala saya dimana saya tetap menjawab 32 karena saya punya untuk menjawab sesuatu. Apakah jawabannya 32 sebenarnya sepele? Apakah dengan cara yang sama 2¹⁶-1 & 2⁵-1 = 31? Mengapa pengembang bertanya kepada saya tentang tepatnya 65535?
Biner yang saya diminta untuk mengevaluasi adalah 1111111111111111 & 100000 tapi saya tidak mengerti mengapa 111111111111111111 bukan -1. Bukankah seharusnya -1? Apakah 65535 angka yang memberi kelebihan dan bagaimana saya tahu itu?