ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
915
915
EMPFEHLEN
-
05.02.09 10:13 #1
- Registriert seit
- Nov 2004
- Beiträge
- 5
Hallo,
Code :1 2 3 4 5
1: byte[] data = new byte; 2: for(int i=0; i<4;++i){ 3: int shift = i <<3; 4: data[3-i]=(byte) ((number & (0xff << shift)) >>> shift); 5: }
Ok ein int belegt 4 Byte. shift ergibt demzufolge 0,8,16,24
24= 16777216 d.h. im 4 byte das erste bit anknipsen (0x00000001)
16=65535 d.h. im 3 byte das erste -||- (0x00000001)
8 = ...
0 = ...
Wenn ich jetzt 0xff << shift betrachte, dann bedeutet meiner Meinung nach
0xff << 0 = 1111 1111
0xff << 8 = 0000 0000
0xff << 16 = 0000 0000
0xff << 24 = 0000 0000
Welchen Sinn hat den ein schieben eines Byte um z.B. 24, 16, 8? Oder hab' ich da was falsch verstanden. Sind dann nicht immer Byte 3 Byte 2 und Byte1 immer gleich null? Und demnach auch der & mit number (wobei das ja wiederum 4 byte sind)?
Kann mir das mal jemand erklären.
Gruß
Franky
-
05.02.09 10:34 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
05.02.09 11:00 #3
- Registriert seit
- Nov 2004
- Beiträge
- 5
Hi,
Das sollte wohl eher new byte[4] heißen...
ja mein Fehler!
Ok, ich denke jetzt ist es mir klar. Danke.
Gruß
Franky
Ähnliche Themen
-
byte Array in Datei speichern und wieder in byte Array einlesen
Von riseX im Forum JavaAntworten: 5Letzter Beitrag: 22.02.10, 12:05 -
Konvertierung von Integer in Byte Array
Von javaprogger1987 im Forum JavaAntworten: 14Letzter Beitrag: 05.01.10, 21:09 -
Byte array in float und integer umwandeln
Von Rosi im Forum C/C++Antworten: 4Letzter Beitrag: 19.04.07, 15:15 -
Konvertierung eines 8Byte unsigned Char Array in einen double Wert
Von torsch2711 im Forum C/C++Antworten: 10Letzter Beitrag: 16.12.04, 12:29 -
Integer to Byte
Von Wolfsbein im Forum JavaAntworten: 5Letzter Beitrag: 18.10.04, 13:17





Zitieren

Login





