Forum: Mikrocontroller und Digitale Elektronik Wie vergleichen ob Wert Größer= oder kleiner 50


von Martin Gundrum (Gast)


Lesenswert?

Hallo,
ich hab folgendes Problem. Ich möchte prüfen ob ein Wert an z.B. P5
meines 80535 größer oder gleich 50 ist und dann an eine Marke Springen.
Und wenn er kleiner 50 ist an eine andere Marke. Ich finde nur keinen
passenden Befehl dafür. Kann mir jemand helfen wie ich das Problem
lösen kann?
Danke schonmal.
Gruß
Martin

von Sascha (Gast)


Lesenswert?

Kannst du mit dem cjne Befehl machen. Bei ungleich zu einem Label
springen. Wenn Wert kleiner oder größer, wird Carry-Flag gesetzt. Mußt
du nochmal schauen, genau weiß ich es auch nicht mehr......

Mfg Sascha

von Schoaschi (Gast)


Lesenswert?

if(wert >= 50)
 {
....
 }
else if(wert < 50)
 {
 ...
 }

PS.: Nachdem keine Programmiersprache zu finden war, entschloss ich
mich halt für C ;-). Also bitte die gewünschte Sprache angeben

von Martin Gundrum (Gast)


Lesenswert?

Assembler, hab ich vergessen hinzu zuschreiben.
Also mit CJNE kann ich ja nur ne Konstante oder Register mit einem Wert
vergleichen, damit weis ich aber nicht ob der größer oder kleiner ist
:-(.

von Sascha (Gast)


Lesenswert?

Dafür testest du ja dann das Carry-Flag....

test:       cjne  A,#50,test1        ;wenn ungleich, test1
            ....                     ;wenn gleich, wird hier
            ....                     ;weiter gemacht
            ret

test1:      jc    test2              ;Wert ist kleiner
            ....
            ....
            ret

test2:      ....                     ;Wert ist größer
            ....                     ;
            ret

       Mfg Sascha

von Sascha (Gast)


Lesenswert?

Ups, sorry

test1 wird abgearbeitet, wenn größer und test2 wenn kleiner....

Schau mal hier:
http://www.microcontroller-online.de/microcontroller/befehle/cjne.html


Mfg sascha

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.