Das binäre Schieben ist am Ende auch nur der Dreisatz, wenn man es mathematisch betrachtet.
Einziger Unterschied:
- 24-Bit-RGB (TColor) kann man schön einfach über eine passende API zerlegen (GetRValue usw.),
oder man macht das mathematisch (DIV und MOD)
oder man macht über binäres maskieren und rumgeschiebe (SHR und AND)
- während es bei dem 16-Bit-RGB die API nicht gibt.
Die Einzelwerte dann wieder zu dem Gesammtwert zusammensetzen geht dann andersrum und man kann auch gleich zerlegen und zusammensetzen auch schön in einer "Formel" zusammenfassen.
Ach ja, bei den binären Wegen wird immer abgerundet, außer man rechnet (addiert) vorher noch bissl was drauf. (gibt ja keinen Nachkommaanteil)