www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Datentypen und Rechnungen, die eine höhere Auflösung benötigen


Autor: Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hätte aml eine Frage ...

möchte eine Berechnung in dieser Art durchführen:

(inp_val - inp_val_min) / inp_val_width * out_val_width + out_val_min

Alle Werte sind 8 Bit Integerwerte. Bei dem Teilterm 
"(inp_val-inp_val_min)/inp_val_width" muss aber ein Wert von 0...1 
herauskommen, damit das so funktioniert, wie ich mir das denke. Muss ich 
die Variablen nun als float, double etc. anlegen oder geht das auch mit 
eine Casting. Wie genau hat dieses dafür auszusehen ?

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Daumenregel: Erst multiplizieren dann dividieren.

Autor: Maxxie (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder einfach Multiplikation und Division vertauschen.
Notfalls größeren Ordninaltyp casten in der Rechnung (short, long, long 
long) und bitte bitte flaot/double vermeiden.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.