Ich versuche, einen Decoder für eine sehr einfache Art der Verschlüsselung zu schreiben. Zahlen von 0-255 werden über Scanner eingegeben, die Bits werden invertiert und dann in ein Zeichen umgewandelt und gedruckt.Wie kann ich Bits eines vorzeichenlosen Bytes in Java invertieren?
Zum Beispiel sollte die Zahl 178 in den Buchstaben "M" konvertieren.
178 ist 10110010.
alle Bits invertieren sollte 01001101 geben, die 77 oder "M" als ein Zeichen ist.
Das Hauptproblem, das ich habe, ist, dass, soweit ich sagen kann, Java nicht vorzeichenlose Bytes unterstützt. Ich konnte Werte als ein int oder ein kurzes lesen, aber dann werden die Werte während der Konvertierung aufgrund der zusätzlichen Bits deaktiviert. Idealerweise könnte ich einfach den bitweisen Komplement-Operator verwenden, aber ich denke, dass ich negative Zahlen bekommen werde, wenn ich dies mit vorzeichenbehafteten Zahlen mache. Irgendwelche Ideen, wie ich das angehen sollte?
Sie ein wirklich schlechtes Beispiel ausgesucht, weil es zwei Lesungen ermöglicht. – starblue
Die Bitmaske war genau das, was ich brauchte - ich hatte keine Ahnung, dass Sie das tun könnten. Sehr hilfreich. Vielen Dank für die Antworten. – DavidKelly999