Einzelnen Beitrag anzeigen

Popov
(Gast)

n/a Beiträge
 
#2

AW: was soll das übersetzt heißen?

  Alt 5. Jan 2013, 17:12
Es handelt sich hier wohl um eine 24 Bit Bitmap. Das macht 3 Byte. Hier wird der Wert jedes der Bytes ermittelt in dem man es mit $FF Wert AND rechnet.

Ein 3 Byte Beispiel

Delphi-Quellcode:
00101001 10011011 01001010
00000000 11111111 00000000 AND
--------------------------
00000000 10011011 00000000 Ergebnis
In der ersten Zeile ist ein 3 Byte Wert (24 Bite). Dadurch, dass hier nur das zweite Byte mit $FF (oder 11111111) und AND gerechnet wird, bekonnt man nur das Ergebnis des zweiten Bytes zurück. Denn 1 and 1 ergeben 1. Und 1 and 0 ergeben 0. Da also das erste und dritte Byte mit $00 gerechnet werden, ist da das Ergebnis immer $00.

//Edit:

Ach so, und SHR verschiebt den Wert um die Anzahl Bites nach Rechts. Hast du also 10101010 00000000 SHR 6, wird alles um 6 nach rechts verschoben 00000010 10101000.

Geändert von Popov ( 5. Jan 2013 um 17:20 Uhr)
  Mit Zitat antworten Zitat