Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#6

Re: Durchschnittsfarbe eines TBitmap via Scanline?

  Alt 21. Jan 2008, 20:37
Zitat von alzaimar:
Wieso 32bit?
Weil der Prozessor bei jedem Zugriff auf eine ungerade Adresse 2 Lesezyklen macht um den Speicherinhalt zu bekommen. Wenn es eine 32 Bit aligned Adresse ist nur einen. Somit ist bei einem pf24bit Bitmap nur jeder 4. Pixel aligned, somit ist der Zugriff mit 24 Bit deutlich langsamer als bei 32 Bit. Durch TLB und sonstiges CPU Features versucht man zwar genau diese unnötigen Zyklen zu vermeiden bzw. schon nebenbei durchzuführen, aber trotzdem ist es langsamer, auch wenn pro Pixel bei 32 Bit die Daten 8 Byte grösser sind. Das macht aber in dem Sinne nichts, da bei einer ungerade Adresse eh 64 Bit eingelesen werden um dann die unnötigen Bytes wieder weg zu werfen.

Also: Wenn es schon RGB Werte sein sollten, dann immer TRGBQuad, also pf32bit. Wir wollen der CPU ja nicht unnötig Arbeit machen, oder?
  Mit Zitat antworten Zitat