Eklärung signed/unsigned BRLO/BRLT?

Gast #345616
Lesenswert?

Hallo,

kann mir jeman derklären was ich unter signed unt unsigned zu verstehen
habe. So wie ichs mitbekommen habe hat das damit zu tun ob ein Ergebniss
negativ ist. Entweder wird das doch durch das MSB kenntlich gemacht oder
aber durch das N-Flag oder?

Mein konkreter Einsatzzweck ist folgendes: Ein Motor wird mit PWM
betrieben um zu verhindern das die PWM so niedrig ist das der Motor
nicht anläuft wollte ich einen Mindestwert vorgeben. Der trotz einer
neidrigere Potistellung nicht unterboten werden soll. Ich lese das
Poti(8Bit) also ein und erhalte z.b. 128 nun möchte ich das vergleichen
obs kleiner als z.b. 140 ist wenn ja soll zu einer Routine2 gesprungen
werden die den PWM-Wert auf 140 setzt und übergibt.

cpi temp(ADC-Wert), 140
brlt/brlo Routine2         ;Übergebe Mindestwert 140 an PWM-Einheit
rjmp Routine1              ;Übergebe höheren Wert an PWM-Einheit

was muss ich da jetzt benutzen brlt oder brlo und vorallem warum
Gast #345621
Lesenswert?

ja dort wird es so erklärt das im MSB steht obs negativ ist oder nicht.
Der Bereich geht dann also statt von 0 bis 255, von -127 bis +127.

Da ich in meinem Beispiel aber nichts abziehe oder addiere dürfte ich
doch kein negatives Vorzeichen erhalten und müsste also BRLO benutzen
richtig?
Gast #345623
Lesenswert?

> von -127 bis +127
Detail: Er geht von -128 bis +127.

Wenn Du nur mit vorzeichenlosen Zahlen arbeiten willst, dann mit BRLO.
BRLO prüft nur, ob das Carry-Flag gesetzt ist. BRLT prüft das
Signed-Flag, was nur beim Arbeiten mit negativen Zahlen funktioniert,
also nur dann, wenn das MSB tatsächlich als Vorzeichen-Bit
interpretiert wird.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren