Hallo Experten, mit der Multiplikation habe ich so meine Sorgen. Im Anhang befinden sich 4 Dateien, in denen nur ein Wert mit einer Konstanten multipliziert wird. In mul1_xxx.lst wird die Konstante in einer temporären Variablen zwischengelagert und die Multiplikation läuft so, wie gewünscht. In mul2_xxx.lst wird direkt mit der Konstante multipliziert. Trotz Casting auf unsigned int rechnet der MSPGCC mit negativen Werten. Bei der Programmausführung von mul2_180 bleibt die Zeile 14: c2 43 39 01 mov.b #0, &0x0139 ;r3 As==00 ohne Wirkung, da schon vorher 0x0139 mit einem Word-Befehl beschrieben worden ist. Den MSPGCC rufe ich mit folgenden Parametern auf: -x c -c -g -O2 -Wall -mmcu=msp430x147 Kann mir jemand das unterschiedliche Verhalten von mul1_xxx und mul2_xxx erklären? Viele Grüße von Marcus
Sorry, das habe ich noch vergessen: H:\>msp430-gcc -v Reading specs from /cygdrive/d/Programme/mspgcc/bin/../lib/gcc-lib/msp430/3.2.3/ specs Configured with: ./configure --target=msp430 --prefix=/c/daten/mspgcc/build/inst alled --disable-nls Thread model: single gcc version 3.2.3 Das ist wohl von 23.07.2004. Viele Grüße von Marcus
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.