INFO - FAQ - CC2-Forum - CCPro-Forum |
|
' =========================================================================== ' Demoprogramm: Little-Endian-Format bei der OF-Syntax ' In OCBASIC 1.12a_e1 für Open-Maxi von Dietmar Harlos am 21. September 2024 ' =========================================================================== ' Bei Definitionen mit der OF-Syntax verwendet der OCBASIC-Compiler das ' sogenannte Little-Endian-Format statt Big-Endian. Beispielsweise ist ' BIT[1] einer WORD-Variable deren niederwertigstes BIT. Wenn es gesetzt ' wird, hat die WORD-Variable den Wert 1. Konsequenterweise gilt das Gesagte ' auch für die beiden BYTEs der WORD-Variable und auch für die beiden WORDs ' und vier BYTEs einer LONG-Variable. ' --- Definitionen ---------------------------------------------------------- INCLUDE "omax.def" 'Definitionen für die Open-Maxi DIM w WORD 'eine WORD-Variable DIM lsb BIT[1] OF w 'das niederwertigste BIT der WORD-Variable DIM hsb BIT[16] OF w 'das höchstwertigste BIT der WORD-Variable DIM wl BYTE[1] OF w 'das niederwertigste BYTE (LOWBYTE) DIM wh BYTE[2] OF w 'das höchstwertigste BYTE (HIGHBYTE) DIM b0 BIT[1] 'Dagegen: Das niederwertigste BIT des ersten BYTEs ' im USER-RAM. Das HIGHBYTE der WORD-Variablen. ' --- Hauptprogramm --------------------------------------------------------- PrintSpc=ON 'Bei PRINT dezimale Zahlen mit führendem Leerzeichen ausgeben End2Host=ON 'Bei Programmende (siehe END) gleich in den Host-Modus wechseln PRINT "Demoprogramm: Little-Endian-Format bei der OF-Syntax" PRINT "====================================================" WHILE NOT RXD PAUSE 25 w=0 lsb=ON ?lsb;w ' Ausgabe: -1 1 w=0 hsb=ON ?hsb;w ' Ausgabe: -1 -32768 w=0 wl=255 ?wl;w ' Ausgabe: 255 255 w=0 wh=1 ?wh;w ' Ausgabe: 1 256 w=0 b0=ON ?b0;w ' Ausgabe: -1 256 ? WEND ?:?"Programmende." END 'Zurück in den Hostmodus. Neustart mit RETURN-Taste. ' --- Programmende --------------------------------------------------------- Passender Link: Infosite zu den OM-Mikrocontrollern Meine Homepage: http://ccintern.dharlos.de |
Antwort schreiben |