Float-Zahlenbereich --> 8bit Hexzahl

Gast #207384
Hallo zusammen,

ich habe ein riesen Problem.
Ein Zahlenbereich von -3,0 bis +3,0 soll in 255 Schritten als Hexwert
umgewandelt werden.
Also -3,0 entspricht 0x00 = 0d
      0,0 entspricht 0x7F = 127d
     +3,0 entspricht 0xFF = 255d

Bei einer Spanne von 6,0 erreiche ich bei Division durch 255 eine
Schrittweite von 0,0235...
Naiverweise habe ich an eine Tabelle gedacht. Aber das währe doch eine
zu plumpe Lösung , oder?

Was sagen die mathematischen Genies in diesem Forum dazu?

Es soll zwar in C programmiert werden, mich interessiert aber vorerst
das Prinzip zu einer Mathematischen Lösung.


Schönen Gruß    Brillitsch
Gast #207388
halt
hab au n fehler :-P
ohne die zeile
wert /= 255;!!!!!!!!

zum prinzip:

0-6 soll 0-255 entsprechen

255/6 = 42.5

daher bsp: wert = 0 (127 soll ergebnis sein)

wert += 3;   // wert = 3

wert *= 42.5;  //wert = 127.5

neuerwert = (char)wert //neuerwert = 127


also:

float wert;
char neuerwert

wert += 3;
wert *= 42.5;
neuerwert = (char)wert;
Gast #207390
Ich bin kein grosser Fan von so gebrochenen Zahlen.

Ich würde pro Bit mit 0.025 rechnen. bei 240 Schritten kannst du den
Breich von +3V bis -3V ausnutzen und hast noch reserve für Übersteuern
des Wertebereichs.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.