Woher haben Sie die Erwartung von 1 bekommen?
Ihr Verständnis für bitweise Operationen eindeutig fehlt zeigt ist, wäre es klug, durch sie in hier zuerst zu arbeiten, bevor veröffentlichen ...
Sie nicht mit einem verwirrend! was ist ein logisches NICHT, oder?
a ~ bitweise Komplement oder ein bitweises NOT-Operation die Bits alle kehrt von 1 auf 0 und umge Flips abhängig davon, wo in der Bitmaske gesetzt ist, so beispielsweise ein 1
00000000 00000000 00000000 00000001
ist tut eine ~ bitweise NICHT auf das klappt es
11111111 11111111 11111111 11111110
, die Ihnen den Maximalwert kleine 1 des ganzzahligen Datentypen auf einem 32-Bit-System gibt.
Hier ist ein würdiger Link zu diesem, der Ihnen zeigt, wie man bit-twiddling hier macht.
1s Komplement ist abhängig von der Anzahl der Bits in der Sache, die Sie die eine Ergänzung finden. Das definierende Merkmal der Ergänzung ist, dass Sie zwei Zahlen haben, die beide Null sind. Die Negationsoperation in 1s-Komplement entspricht dem bitweise nicht-Operator, wie Sie beobachtet haben. Ich denke du hast eine falsche Vorstellung davon, wie 1s Komplement funktioniert. – Omnifarious