Verständnisfrage Long <-> Byte
- digger
- Administrator
- Beiträge: 691
- Registriert: Sa 23. Mai 2009, 22:44
- Wohnort: Schorfheide
- Kontaktdaten:
Verständnisfrage Long <-> Byte
Ich hab einige komische Effekte bei meinen Spin Versuchen, die ich mir nur wie folgt erklären kann.
Kann es sein, dass wenn ich ein Long habe welches ich byteweise lesen will, dass dann dass Byte mit dem Index[0] ganz rechts liegt und das byte mit dem Index[3] ganz links? Läuft der Index also wie in binärer Leseweise von links nach rechts?
Ich hätte es irgendwie in der Art der String-indizierung erwartet wo beim String "abcde" das byte[0] = "a" und byte[4] = "e" ist.
Kann es sein, dass wenn ich ein Long habe welches ich byteweise lesen will, dass dann dass Byte mit dem Index[0] ganz rechts liegt und das byte mit dem Index[3] ganz links? Läuft der Index also wie in binärer Leseweise von links nach rechts?
Ich hätte es irgendwie in der Art der String-indizierung erwartet wo beim String "abcde" das byte[0] = "a" und byte[4] = "e" ist.
Re: Verständnisfrage Long <-> Byte
digger hat geschrieben:Ich hab einige komische Effekte bei meinen Spin Versuchen, die ich mir nur wie folgt erklären kann.
Kann es sein, dass wenn ich ein Long habe welches ich byteweise lesen will, dass dann dass Byte mit dem Index[0] ganz rechts liegt und das byte mit dem Index[3] ganz links? Läuft der Index also wie in binärer Leseweise von links nach rechts?
Ich hätte es irgendwie in der Art der String-indizierung erwartet wo beim String "abcde" das byte[0] = "a" und byte[4] = "e" ist.
Code: Alles auswählen
|--MSB---| |--LSB--|
%0001 0110 1111 1111
Die "most significant bits" stehen links, die "least significant bits" rechts ... sozusagen.
Du musst die MSB also entweder durch shiften rausschieben oder halt von rechts nach links lesen
Gruß.
Rainer
"Wer andauernd begreift, was er tut, bleibt unter seinem Niveau."
- drohne235
- Administrator
- Beiträge: 2284
- Registriert: So 24. Mai 2009, 10:35
- Wohnort: Lutherstadt Wittenberg
- Kontaktdaten:
Re: Verständnisfrage Long <-> Byte
Du hast doch das gedruckte Propellerhandbuch digger. Schau mal auf Seite 208/209 dort ist es ziemlich gut in der Referenz zu "DAT" versteckt.
Edit: Oder Seite 100 im PDF Propeller Manuel welches über das Propeller Tool (Hilfe Menü) aufrufbar ist.
Edit: Oder Seite 100 im PDF Propeller Manuel welches über das Propeller Tool (Hilfe Menü) aufrufbar ist.
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
- digger
- Administrator
- Beiträge: 691
- Registriert: Sa 23. Mai 2009, 22:44
- Wohnort: Schorfheide
- Kontaktdaten:
Re: Verständnisfrage Long <-> Byte
Code: Alles auswählen
out := Long[11111111 11110000 00001111 00000000]
repeat i from 0 to 3
BYTE[output][i] := BYTE[@out][i]
i=0 --> Byte 00000000
i=1 --> Byte 00001111
i=2 --> Byte 11110000
i=3 --> Byte 11111111
Hat mich nur etwas irritiert.
@drohne
nach Seite 209 wäre Index[0] ja doch links ... jetzt muss ich nochmal von vorne anfangen, sonst wird das nix.
- drohne235
- Administrator
- Beiträge: 2284
- Registriert: So 24. Mai 2009, 10:35
- Wohnort: Lutherstadt Wittenberg
- Kontaktdaten:
Re: Verständnisfrage Long <-> Byte
Wieso rechts, das niederwertige Byte ist doch links.
Code: Alles auswählen
long $44332211
ergibt
[byte 0][byte 1][byte 2][byte 3]
[ 11][ 22][ 33][ 44]
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
- digger
- Administrator
- Beiträge: 691
- Registriert: Sa 23. Mai 2009, 22:44
- Wohnort: Schorfheide
- Kontaktdaten:
Re: Verständnisfrage Long <-> Byte
@drohne .. hab Nachsicht mit mir, langsam wacht meine eingerostete Rübe ja auf! 

Re: Verständnisfrage Long <-> Byte
Im Propeller-Manual auf Seite 161 (PDF-Manual) unter "Bitwise shift left" wird's ganz gut erklärt, finde ich.
Gruß.
Rainer
Gruß.
Rainer
"Wer andauernd begreift, was er tut, bleibt unter seinem Niveau."
- digger
- Administrator
- Beiträge: 691
- Registriert: Sa 23. Mai 2009, 22:44
- Wohnort: Schorfheide
- Kontaktdaten:
Re: Verständnisfrage Long <-> Byte
Danke Rainer .. ich sehe jetzt klarer, ich hoffe in den nächsten Tagen auch ein/zwei Tools beisteuern zu können. Auf jeden Fall weiss ich jetzt dass ich noch meilenweit entfernt von der Fähigkeit zur Integration des TCP/IP Stacks auf Administra bin. 
