Turbohesse
Level-2
- Beiträge
- 58
- Reaktionspunkte
- 1
-> Hier kostenlos registrieren
Hallo Leute,
ich habe aktuell folgendes Problem:
Ich muss einen Wert im Display mit 2 Nachkommastellen eintragen, da die 0N keine nachkommastellen kennt, skaliere ich diesen um den Faktor 100 im Display.
Das ergibt den Wert z.B. 125 für 1,25 (das ist in etwa auch alles.... also ich bewege mich da zwischen 100 und 140)
Dazu kommt ein festgelegtes Gewicht was ich einem gewicht am Analogeingang subtrahiere und dieses Ergebnis dann durch ein weiteres festgelegtes Gewicht teile.
Das Problem ist, dadurch, das ich überall den Faktor 100 habe und ich bei einem Eingangswert von z.B.450 Digits demnach 45.000 Digits habe, muss ich ein Doppelwort benutzen. Dies habe mit [DINC D158] realisiert, D159 ist frei!
In dieser Programmzeile liest er das auch korrekt ein, in den Nachfolgenden Rechenoperationen nicht! Ist dort evtl der befehl nichtmehr D158 sondern D?158 ???
noch eine info zur Programmstruktur in Kurzform:
M8000 als (S) ----------------------------[DINC DXXX]
I-------------------------Variablen alle so benannt
I-------------------------[MUL D158 K100 D160] Ab hier ist dann D158= -22xxx also data overflow.....
Was hab ich falch gemacht, bzw. wie geht es anders?
ich habe aktuell folgendes Problem:
Ich muss einen Wert im Display mit 2 Nachkommastellen eintragen, da die 0N keine nachkommastellen kennt, skaliere ich diesen um den Faktor 100 im Display.
Das ergibt den Wert z.B. 125 für 1,25 (das ist in etwa auch alles.... also ich bewege mich da zwischen 100 und 140)
Dazu kommt ein festgelegtes Gewicht was ich einem gewicht am Analogeingang subtrahiere und dieses Ergebnis dann durch ein weiteres festgelegtes Gewicht teile.
Das Problem ist, dadurch, das ich überall den Faktor 100 habe und ich bei einem Eingangswert von z.B.450 Digits demnach 45.000 Digits habe, muss ich ein Doppelwort benutzen. Dies habe mit [DINC D158] realisiert, D159 ist frei!
In dieser Programmzeile liest er das auch korrekt ein, in den Nachfolgenden Rechenoperationen nicht! Ist dort evtl der befehl nichtmehr D158 sondern D?158 ???
noch eine info zur Programmstruktur in Kurzform:
M8000 als (S) ----------------------------[DINC DXXX]
I-------------------------Variablen alle so benannt
I-------------------------[MUL D158 K100 D160] Ab hier ist dann D158= -22xxx also data overflow.....
Was hab ich falch gemacht, bzw. wie geht es anders?