mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wert aus Tabelle suchen


Autor: markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo zusammen!

habe ein problem mit einer tabelle die aus 16bit zahlen besteht.
insgesamt habe ich 15 bereiche, die jeweils durch eine untere und eine 
obere grenze begrenzt sind. arbeite mit einem mega8 und in assembler.

nun möchte ich aus einer vorhergehenden berechnung herausfinden in 
welchem dieser bereiche sich mein ergebnis befindet.
ich habe das schon mal mit 8bit zahlen realisiert, dort war es recht 
einfach. habe damals mittels "brge" und "brlt"  die zahlen verglichen 
und konnt so den bereich recht einfach eingrenzen.

das prinzip ist mir schon klar nur wie setzte ich das in assembler um. 
ich müsste zuerst das high byte der oberen grenze mit dem high byte 
meines ergebnisses vergleichen und anschließend mit der unteren grenze. 
sollten die die highbytes gleich sein müsste ich mir noch die low bytes 
ansehen.
ich schaffe es einfach nicht einen ordentlichen assembler code zu 
schreiben in dem ich diese idee umsetzen kann.
irgendwie steh ich aufm schlauch...
kann mir jemand helfen?
vielen dank!
markus

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ markus (Gast)

>das prinzip ist mir schon klar nur wie setzte ich das in assembler um.
>ich müsste zuerst das high byte der oberen grenze mit dem high byte
>meines ergebnisses vergleichen und anschließend mit der unteren grenze.
>sollten die die highbytes gleich sein müsste ich mir noch die low bytes
>ansehen.

Nöö, du musst mehrstellige Arithmetik mit Übertrag machen. Also CP + CPC 
verwenden. Sie wie in

AVR-Tutorial: Arithmetik
http://www.mikrocontroller.net/articles/AVR-Tutori...

MfG
Falk

Autor: markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielen dank für die links!
werde sie mir gleich mal ansehen!

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.