Re: Wie Singles zu convertieren? Kategorie: Programmierung Basic (von Baltus - 18.11.2010 20:03) | ||
Als Antwort auf Re: Wie Singles zu convertieren? von ulrich korth - 18.11.2010 18:59 | ||
| ||
Schade: Es handelt hier nicht um Long variabelen; es geht um Single . Am moment arbeite ich an eine Lösung (gültig für alle Dezimale) mit alle Ziffern in vier Bytes, und der Position der Komma und das Zeichen in ein fünfter Byte. Bespiel: Zahl: -123456,8877 Long: 1234568877 5er Byte: Zeichen=-, Ziffern vor der Komma=6 > > > > Ich wolle Singles (32 bits = 4 bytes) in vier auffolgende Adresse in EEPROM speichern. > > > > > > > > Wie kann ich eine Single in vier Bytes aufteilen? (Biteshift ">>" functioniert nicht am Single) > > > > Oder gibt es vielleicht eine andere Lösung? > > > > > > Ich würde die Single in 2 Word aufteilen. Die oberen 16 Bit durch 0xFFFF Dividieren. > > > Die Division braucht ohnehin etwa die gleiche Zeit wie Shift Befehle und funktioniert bei Single. > > > Gru� > > > Ernst H. > > Irrtum - ich dachte an ULong - bei Single .. keine Ahnung > > egal ob long, dword oder unsigned long kannst du folgende Routinen verwenden - nur den > Datentyp entspr. anpassen! > Gruss Ulrich > > void EEPROM_WriteLong(word pos, long val){ > EEPROM_WriteWord(pos, val); > EEPROM_WriteWord(pos+2, val>>16); > } > long EEPROM_ReadLong(word pos){ > long l; > l=EEPROM_ReadWord(pos+2); > l=(l<<16) + EEPROM_ReadWord(pos); > return l; > } | ||
Antwort schreiben Antworten: Re: Wie Singles zu convertieren? (von ulrich korth - 19.11.2010 14:59) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum