~: Bitweiser Negationsoperator: Nimmt jedes binäre Bit der Daten invertiert, also umgedreht Aus 1 wird 0 und aus 0 wird 1.
~x ähnelt -x-1
①Der Originalcode des positive Zahl, Einerkomplement und Einerkomplement sind gleich
②Das Komplement einer negativen Zahl besteht darin, dass das Vorzeichenbit unverändert bleibt, die restlichen Bits invertiert werden und 1 hinzugefügt wird
#🎜 🎜#Zunächst müssen Sie die binäre Form von -2 im Computer kennen, die aus ⑤ und ② ersichtlich ist: # 🎜🎜#
# 🎜🎜#-2 Originalcode: 1000 0000 0000 0010
-2 Negativcode: 1111. 1111 1111 1101 # Das Vorzeichenbit bleibt unverändert, bitte negieren Sie es. 🎜🎜#
1111 1111 1111 1 110 ist -2 Der Prototyp im Computerbitweise Inversion: 1111 1111 1111 1101
#🎜 🎜#Was ist, wenn dies eine negative Zahl ist? Kann ich direkt fragen? Offensichtlich ist dies nicht möglich. ⑥ sagte: Das Ergebnis der Inversionsoperation wird mit dem Originalcode ausgeführt. ⑤ sagte auch: Negative Zahlen werden im Komplementcode
1111 1111 gespeichert 1111 1101 ist der Komplementcode von 0000 0000 0000 0010, aber was wir wollen, ist das Ergebnis, nicht der Prototyp im Computer,
Genau, ④ Komplementcode, um den Originalcode zu finden: negieren, + 1 #? 0011#🎜🎜 ## 🎜🎜#
Also haben wir den Originalcode erhalten und können das Ergebnis berechnen
1000 0000 0000 0011 = -3Kurz gesagt, Negation ist sehr einfach, aber Sie sollten darauf achten, ob die Negation der ursprüngliche Code ist und ob das Ergebnis direkt berechnet werden kann. Um die Regel zusammenzufassen, ist es (der Wert danach). Inversion) = - (der Wert vor der Invertierung) -1
Lassen Sie es uns analysieren#🎜 🎜#
Wenn Sie beispielsweise 1 invertieren, lautet die 8-Bit-Binärdarstellung von 1: 0000 0001, und das Ergebnis nach der Invertierung ist: 1111 1110. Für Computer stellen Binärzahlen, die mit 1 beginnen, negative Zahlen dar. 1111 Welchen negativen Wert stellt 1110 dar? Wenn Sie diesen Wert wissen möchten, können Sie dessen Komplement ermitteln Nehmen Sie zuerst das Komplement: 0000 0001 und addieren Sie dann 1: 0000 0010. Dies bedeutet, dass der ursprüngliche Code von 1111 1110 0000 0010 ist, was eine positive Zahl 2 ist, sodass 1111 1110 die negative Zahl -2 darstellt# 🎜🎜# Hier ist ein weiteres Beispiel
zum Invertieren von -2, die binäre Darstellung von -2 ist das Komplement von 2, das heißt 0000 0010 > 1111 1110, die binäre Darstellung von -2 ist 1111 1110, und die Umkehrung ergibt 0000 0001. Offensichtlich ist der invertierte Wert 1, also ~ (-2) = 1, ~ 1=-2
Die Zusammenfassung lautet: (Wert nach Negation) = -(Wert vor Negation)-1
Das obige ist der detaillierte Inhalt vonSo verwenden Sie den Negationsoperator in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!