[Java] Zeigt die Bitfolge an, die in der Bytetypvariablen auf der Konsole gespeichert ist

In Byte gespeicherte Bitfolge

Der Java-Byte-Typ speichert 8 Bit (= 1 Byte) Daten. Die in "Byte" gespeicherte Bitfolge (Binärzahl) wird wie folgt hexadezimal und dezimal ausgedrückt.

Bitfolge(Binärzahl) Hexadezimal Dezimalzahl
00000000 00 0
01111111 7F 127
10000000 80 -128
11111111 FF -1

Zeigen Sie die Bitfolge auf der Konsole an

In diesem Abschnitt wird beschrieben, wie in binärer Notation und in hexadezimaler Notation angezeigt wird.

1:  byte b = 10;
2:  int i = Byte.toUnsignedInt(b); //Konvertierung ohne Vorzeichen
3:  String str = Integer.toBinaryString(i); //Holen Sie sich eine binäre Zeichenfolge
4:  str = String.format("%8s", str).replace(' ', '0'); //0 Polsterung
5:  System.out.println(str);

--Hexary Notation

1:  byte b = 10;
2:  System.out.print(String.format("%02X", b));

Die Ausgabeergebnisse von jedem sind wie folgt.

Binärnummer: 00001010
Sechseck: 0A

Wenn Sie die Ausgabemethoden vergleichen, sehen Sie, dass die binäre Notation verschiedene Konvertierungen erfordert.

Welche Art der Konvertierung wird in binärer Notation durchgeführt?

Ich werde erklären, welche Art von Konvertierung in binärer Notation durchgeführt wird. Zuerst aus der zweiten Zeile.

  1. Zeile: Konvertieren Sie vom Typ "Byte" in den Typ "Int"
2:  int i = Byte.toUnsignedInt(b); //Konvertierung ohne Vorzeichen

Zu diesem Zeitpunkt ist der Punkt, dass eine vorzeichenlose Konvertierung durchgeführt wird. Der Grund ist, dass die oberen 24 Bits des Typs int auf 0 gesetzt sind.

Bytetyp(ganze Zahl) int type(ganze Zahl) int type(ganze Zahl)
00000001(1) 00000000000000000000000000000001(1) 00000000000000000000000000000001(1)
11111111(-1) 00000000000000000000000011111111(255) 11111111111111111111111111111111(-1)
  1. Zeile: Ruft die binäre Zeichenfolge (Bitfolge) der Variablen vom Typ "int" ab
3:  String str = Integer.toBinaryString(i); //Holen Sie sich eine binäre Zeichenfolge

Zu diesem Zeitpunkt wird die übergeordnete 0 ignoriert. Aus diesem Grund haben wir nicht signierte Konvertierungen durchgeführt.

int type(ganze Zahl) Binäre Zeichenfolge
00000000000000000000000000000001(1) 1
00000000000000000000000011111111(255) 11111111
  1. Zeile: 0 Auffüllen der erfassten Zeichenkette
4:  str = String.format("%8s", str).replace(' ', '0'); //0 Polsterung

Insbesondere werden nach dem Auffüllen mit Leerzeichen unter Verwendung einer formatierten Zeichenfolge die Leerzeichen durch "0" ersetzt.

Zusammenfassung

Als ich die Funktionsweise des Programms überprüfte, wollte ich plötzlich den Inhalt von Byte [] überprüfen, und als ich nach einer Methode suchte, kämpfte ich unerwartet, sodass ich ein Memo hinterließ, wie ich es realisieren sollte. Es ist eine kleine Geschichte, aber ich hoffe, sie hilft jemandem.

Recommended Posts

[Java] Zeigt die Bitfolge an, die in der Bytetypvariablen auf der Konsole gespeichert ist
Ich habe versucht, den Kalender mit Java auf der Eclipse-Konsole anzuzeigen.
In Bezug auf den Vergleich der Zeichenfolgentypäquivalenz in Java
Hinweise zu Operatoren, die Java ~ String type ~ verwenden
Führen Sie den in der Zwischenablage gespeicherten Java-Code aus.
Konsoleneingabe in Java (Verständnis des Mechanismus)
Die Geschichte des einfachen String-Vergleichs in Java
Der in Java 10 eingeführte Schnittpunkttyp ist erstaunlich (?)
Informationen zu in Java verwendeten Variablen (lokaler Variablentyp)
Organisiertes Memo im Kopf (Java - Datentyp)
Zeigen Sie "Hello World" im Browser mit Java an
Zeigen Sie "Hello World" im Browser mit Java an
Zeigen Sie die Liste in setDetails mit Federsicherheit auf dem Bildschirm an
Typbestimmung in Java
Arten von Variablen in Ruby
Verwenden Sie JLine, wenn Sie Tastenanschläge auf der Konsole zeichenweise in Java verarbeiten möchten
Erstellen wir eine Taschenrechner-App mit Java ~ Zeigen Sie das Anwendungsfenster an
[Ruby on Rails] Zeigt den Seitentitel schnell im Browser an
Konvertieren Sie ein Java-Byte-Array in eine hexadezimale Zeichenfolge
Ich habe versucht, in Java von einer Zeichenfolge in einen LocalDate-Typ zu konvertieren
So wechseln Sie Java in der OpenJDK-Ära auf dem Mac
[Schienen] Anzeigen von Informationen, die in der Datenbank gespeichert sind
Reflexion über die Manipulation von Java-Strings
Probieren Sie den Funktionstyp in Java aus! ①
Eingabe in die Java-Konsole
Ich habe ein "Sunshine Ikezaki-Spiel" gemacht, das ich auf Twitter in Java gesehen habe.
[Android / Java] Verstehen Sie den Beschreibungstyp in den Listener-Einstellungen (Schaltflächeninstallation).
Zeigen Sie benutzerdefinierte Zeichen auf dem I2C 1602 LCD mit Raspberry Pi 3 und Java an
Lassen Sie uns eine TODO-App in Java 5 erstellen. Schalten Sie die Anzeige von TODO um
[Java] So konvertieren Sie vom Typ String in den Pfadtyp und erhalten den Pfad