Holzchopf Verfasst am: Mi, Nov 04, 2015 22:33 |
---|
Die Bitshift-Variante finde ich auch durchaus verständlicher und würde sich imho auch leichter mit den bereits vorhandenen Zusatz-Informationen auf der Hilfe-Seite in Verbindung bringen lassen.
Ich kümmer' mich mal drum oder versuche zumindest, dafür zu sorgen, dass sich darum gekümmert wird. Könnte aber ein Weilchen dauern. Edit 23.11.2015 Die Zusatztexte wurden bereits angepasst (Danke an Unbekannt!). Mit Hilfe von Xeres' Einsatz konnte ich nun auch noch die Standardbeispiele anpassen. |
Sirrus Verfasst am: Mi, Nov 04, 2015 22:15 |
Shift-Funktionen und logische Verknüpfungen gehören außerdem schon seit der Zeit der 8-Bit-Prozessoren zum Standardsatz von Prozessoren und wenn der Compiler die Funktionen entsprechend umsetzt, sind solche Funktionen deutlich schneller als Multiplikationen und Divisionen, die erst in 16-Bit-Prozessoren hinzu gekommen sind und Prozessorintern ohnehin mit Shift-Funktionen realisiert werden. ![]() |
Thunder Verfasst am: Mi, Nov 04, 2015 21:13 |
Ich würde (im Falle einer Überarbeitung) auch vorschlagen, die Bitshift-Befehle zu verwenden.
Sie sind um einiges einleuchtender, imho. Ich habe die Codes von der Hilfeseite immer verwendet und hatte absolut keinen Plan, wieso man durch $100..00 dividieren muss ![]() Also: BlitzBasic: [AUSKLAPPEN] a = rgb Shr 24 |
Sirrus Verfasst am: Mi, Nov 04, 2015 15:32 |
Warum 2 Rechenschritte, wenn es auch mit einem geht?
BlitzBasic: [AUSKLAPPEN] a=rgb Shr 24 |
DAK Verfasst am: Do, Mai 21, 2015 13:36 |
In der Hilfe steht unter "Berechnung der Farbanteile aus einem Farbcode" Folgendes:
BlitzBasic: [AUSKLAPPEN] a = (rgb And $FF000000)/$1000000 Diese Zeile funktioniert aber nicht, da Blitz im Zweierkomplement dividiert. Das heißt, wenn das linkeste Bit (=>Vorzeichen) auf 1 ist, dann wird bei einer Division alles links mit 1ern aufgefüllt. BlitzBasic: [AUSKLAPPEN] rgb = $FFFFFFFF Die richtige Weise die Zahl zu bekommen wäre Folgendes: BlitzBasic: [AUSKLAPPEN] a = (rgb / $1000000) And $FF |
Powered by phpBB © 2001 - 2006, phpBB Group