Wenn das Ergebnis der Berechnung mit den Long Variablen stets kleiner als 100 ist, dann kannst du das Ergebnis ganz einfach wieder in eine Long-Variable schreiben und das niederwertigste Byte ist dein Ergebnisbyte.
Am einfachsten macht sich das in Bascom, indem du bei der Dimensionierung deiner Variablen das Byte per Overlay (siehe Handbuch) an die richtige Stelle über die Long Variable mit deinem Ergebnis legst, dann ersparst du dir irgendwelche Umrechnungen.
In Bascom funktioniert auch:
Bytevariable = Longvariable
Das Art der Typenumwandlung ist nicht schön, und Fehler lassen sich so schlecht auffinden, es geht aber. Was meiner Erfahrung nach NICHT geht, ist z.B. folgendes:
Bytevariable = Longvariable +1
Ich habe schon desöfteren festgestellt, das so Gewalt-Typenumwandlungen allein stehen müssen und nicht mit einer anderen Berechnung zusammen in einem Befehl stehen dürfen.
Schimpfen tut der Compiler nicht - es geht nur einfach nicht, bzw. kommen unsinnige Werte heraus.
Gruß MeckPommER
Lesezeichen