Konvertierung per Hand ausrechnen

compuwurml

Mitglied
Hallo alle zusammen.

Wenn ich z. B. soetwas gegeben habe

Java:
(byte) 0x180

Wie kann ich denn schnell und einfach per Hand ausrechnen, was dann dort konvertiert herauskommt?

In dem Fall weiß ich nur durch Hornerschema, dass 0x180 den Dezimalwert 384 hat und konvertiert in byte (klar, es läuft dann über) -128.

Byte läuft ja von -128 bis 127.

Aber ich weiß nicht wie ich per Hand schnell auf die -128 komme. Hab es so versucht, dass ich einfach den negativen Wertebereich nehme (und diesen kurz positiv betrachte) und den positiven, und beides solange addiere, bis ich möglichst kleine Zahl subtrahiert von 384 herausbekomme.

z . B. 127 + 128 + 127 = 382 , dann bleiben 2 übrig und ich bin an der "Schwelle" zum Überlauf in den negativen Bereich. Aber nach der Rechnerei würde dann -126 herauskommen... und das verwirrt mich.

Gibt es irgendein Verfahren, einen Kniff o.ä. mit dem ich soetwas schnell und einfach im Kopf lösen kann , ohne mich andauernd um wenige Stellen zu vertun?

Liebe Grüße euch.
 
Zuletzt bearbeitet:

Gucky

Top Contributor
In binär umwandeln, alle höherwertigen Bits abschneiden, das erste bit als Vorzeichen nehmen und zurückrechnen, wäre das einzige, mir jetzt einfiele. So macht das auch Java.
 

compuwurml

Mitglied
In binär umwandeln, alle höherwertigen Bits abschneiden, das erste bit als Vorzeichen nehmen und zurückrechnen, wäre das einzige, mir jetzt einfiele. So macht das auch Java.


edit ok jetzt hab ich es gerallt ( glaub ich)

1 1000 0000

Reduktion auf 8 bit

1000 0000

= 128 , und weils ja das zweierkomplement ist, ist es -128

So richtig?
 
Zuletzt bearbeitet:

Gucky

Top Contributor
Ich kenne mich mit dem Umrechnen jetzt nicht besonders gut, deshalb müsstest du das Umrechnen selber machen. :D

Der Weg ist aber: Alle Bits nach dem achten abschneiden, die ersten sieben Bits zu einer Zahl umrechen und aufgrund des achten Bits das Vorzeichen setzen.

Dein Ergebnis sieht nach einer positiven 0 aus. :)
 

kaoZ

Top Contributor
Die bytes die du oben angibst sind doch in Hexadezimaler Schreibweise dargestellt oder ?


normalerweise bei der Umwandlung von binärzahlen auf Hexadezimale zahlen die bits gebündelt. bedeutet

angenommen wir haben die Dezimalzahl 15

wenn wir diese jetzt in eine Binäre Zahl umwandeln

Java:
15 mod 2 = 7 rest 1
07 mod 2 = 3 rest 1
03 mod 2 = 1 rest 1
01 mod 2 = 0 rest 1


da die restlichen 4 bit 0 sind ergibt das :
Code:
1111Bin

Als byte halt
Code:
00001111

Umrechnung ins Hexadezimalsystem:

gruppiert wird je bei 4 bit

Code:
1111 = F
( da F im Hexadezimalsystem für 15 steh)

Wäre also Dezimal 15 =
Code:
[B]0xF[/B]
Hexadezimal

oder das Ganze halt in umgekehrter reihenfolge von Hexadezimal zu Dezimal

Java:
0x180

1 = 0001
8 = 1000
0 = 0000

000110000000 Binär

110000000

1*2pow8
1*2pow7

= 384Dez

oder worauf möchtest du hinaus ?
 
Zuletzt bearbeitet:

compuwurml

Mitglied
oder worauf möchtest du hinaus ?

Also es geht mir eigentlich darum, welchen Wert bei der Konvertierung herauskommt. Wenn ich das da oben so in die Println Anweisung hauhe, kommt da -128 raus.

Dein Ergebnis sieht nach einer positiven 0 aus. :)

Erstmal Danke für eure Antworten. Also es sieht wohl so aus. Hab da jetzt mit einem Prof. von den E-Technikern gesprochen.

Java:
(byte) 0x180

180 ist hier Hexadezimal dargestellt. Sprich in 12 Bit da jede Stelle 4 Bit hat (2^4, klar).
Byte selbst hat nur 8 Bit, also werden bei der Konvertierung 4 Bit abgeschnitten. Ich kann also folgende Äquivalenz festhalten:

(byte) 0x180 <=> 0x80 (die 1 fällt bei der Konvertierung raus).

0x80 brauche ich dann nur noch binär darstellen. Das lässt sich ja einfach machen

8 = 1000
0 = 0000


Also 1000 0000

Und das ist im Zweierkomplement -128

1000 0001 wären -127 , 1111 1111 dann -1, klar.


Also spuckt Java bei (byte) 0x180 den Wert -128 aus.


Lg :toll:
 
Zuletzt bearbeitet:

kaoZ

Top Contributor
konvertiert in was ?

[EDIT]du meinst wenn du 0x180 zu byte castest ?!, dann kommt da -128 raus, du müsstest dann shiften um aufs richtige ergebnis zu kommen[/EDIT]
 
Zuletzt bearbeitet:

compuwurml

Mitglied
konvertiert in was ?

[EDIT]du meinst wenn du 0x180 zu byte castest ?!, dann kommt da -128 raus, du müsstest dann shiften um aufs richtige ergebnis zu kommen[/EDIT]

Der Ausdruck castet explizit die 0x180 in Byte ja. Und ich wollte nur wissen, wie ich möglichst schnell den Wert des Gesamten Ausdruckes per Hand bestimmen kann. Warum soll ich jetzt noch was shiften? Das war doch schon alles ? :oops:
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Konvertierung des int typs in den double typ für die Ausgabe mit Nachkommastellen Java Basics - Anfänger-Themen 4
M Konvertierung String -> double Java Basics - Anfänger-Themen 8
B Date Konvertierung Java Basics - Anfänger-Themen 0
T Datentypen Calender/Gregorianisch/Julianisch/JDN Konvertierung Java Basics - Anfänger-Themen 4
W Konvertierung und Vergleich unterschiedlicher Zeitformate Java Basics - Anfänger-Themen 11
W Methoden Konvertierung von Sonderzeichen Java Basics - Anfänger-Themen 2
S Konvertierung in Liste Java Basics - Anfänger-Themen 3
M Erste Schritte konvertierung von int zu char Java Basics - Anfänger-Themen 3
V Erste Schritte Konvertierung Java Basics - Anfänger-Themen 2
D Input/Output Stringbuffer Befehle bei Konvertierung in String Java Basics - Anfänger-Themen 19
T Problem mit Array Konvertierung Java Basics - Anfänger-Themen 13
D Konvertierung UnsignedInt zu long Java Basics - Anfänger-Themen 5
K Konvertierung von einem Text in eine Zahl in Excel(JXL) Java Basics - Anfänger-Themen 2
A Konvertierung String-->hex-->long Java Basics - Anfänger-Themen 7
D Methode zur Konvertierung von Oberklasse in Unterklasse Java Basics - Anfänger-Themen 5
H Konvertierung String -> int Java Basics - Anfänger-Themen 11
D konvertierung/char/int Java Basics - Anfänger-Themen 14
K Datentypen Explizite Konvertierung Java Basics - Anfänger-Themen 12
S Konvertierung von dez zu bin mit Bool-Array Java Basics - Anfänger-Themen 9
R Konvertierung int nach char, Ausgabefehler Java Basics - Anfänger-Themen 3
E Typ Konvertierung Java Basics - Anfänger-Themen 4
R datentypen konvertierung u modulorechnung Java Basics - Anfänger-Themen 15
I Unstimmigkeit bei String-nach-Double-Konvertierung Java Basics - Anfänger-Themen 7
G Konvertierung von charArray in String funzt net Java Basics - Anfänger-Themen 3
G Konvertierung String in long type Java Basics - Anfänger-Themen 15
I Konvertierung von double in int Java Basics - Anfänger-Themen 2
G Konvertierung Byte Array Java Basics - Anfänger-Themen 4
M Konvertierung v. Strings (evtl. mit Sonderzeichen) nach HTML Java Basics - Anfänger-Themen 8
G Probleme mit Konvertierung und Substraktion im Calendar Java Basics - Anfänger-Themen 4
B Rekursion von Hand durchführen Java Basics - Anfänger-Themen 2
U Fehler: The left-hand side of an assignment must be a variable Java Basics - Anfänger-Themen 5
B Rechnung per Hand anders als von Java Java Basics - Anfänger-Themen 6
Binary.Coder Doppeltes Hashing verläuft in "Endlosscheife" beim rechnen per Hand Java Basics - Anfänger-Themen 8
M parent process in die Hand bekommen Java Basics - Anfänger-Themen 2
G Kriege Java Datei nicht per Hand kompiliert Java Basics - Anfänger-Themen 4
P JRadiobuttons "von Hand" anordnen Java Basics - Anfänger-Themen 13
T Methode soll etwas ausrechnen und zurückgeben (klappt nd) hat wer eine Idee? Java Basics - Anfänger-Themen 11
sserio TXT-Datei Auslesen und den Wert jedes Namen ausrechnen etc. Java Basics - Anfänger-Themen 37
Leo_1789 Differenz ausrechnen zwischen denn idealgewicht und denn echten Gewicht Java Basics - Anfänger-Themen 7
D Restguthaben ausrechnen Java Basics - Anfänger-Themen 4
F Potenz ausrechnen Hilfe! Java Basics - Anfänger-Themen 7
D Gebühr ausrechnen [Buchaufgabe] Java Basics - Anfänger-Themen 9
C Rechenaufgabe im JLabel ausrechnen Java Basics - Anfänger-Themen 2
B Variablen im Java-Code selber "ausrechnen" Java Basics - Anfänger-Themen 8
C Variablen Array dynamisch halten und ausrechnen Java Basics - Anfänger-Themen 14
N alter mit Date ausrechnen Java Basics - Anfänger-Themen 10
StrikeTom Median ausrechnen Java Basics - Anfänger-Themen 3
D Rest ausrechnen Java Basics - Anfänger-Themen 2
K Datentypen Prozent ausrechnen, Probleme Java Basics - Anfänger-Themen 9
K BMI ausrechnen Java Basics - Anfänger-Themen 20
B Taschenrechner - Aufgabenstring umwandeln und ausrechnen Java Basics - Anfänger-Themen 6
C String "ausrechnen" Java Basics - Anfänger-Themen 6
C Mausklicks pro Minute ausrechnen Java Basics - Anfänger-Themen 12
M Gleichungen dynamisch erstellen und ausrechnen? Java Basics - Anfänger-Themen 8
P Farbwertanteile ausrechnen! geht so nich ganz Java Basics - Anfänger-Themen 2
D BreitenGrad ausrechnen Java Basics - Anfänger-Themen 13
G automatisch ausrechnen Java Basics - Anfänger-Themen 3
U tage ausrechnen Java Basics - Anfänger-Themen 4
B Formel in Textfeld ausrechnen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben