-         

Ergebnis 1 bis 2 von 2

Thema: Signed integer-Werte Vergleichen

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    27.01.2006
    Beiträge
    44

    Signed integer-Werte Vergleichen

    Anzeige

    Hallo zusammen,

    ich dachte nicht, dass ich jemals ein Problem haben werde zwei zahlen zu vergleichen. Allerdings wenn man zu signed integers schaut, dann habe ich festgestellt, das der vergleich zweier Zahlen keineswegs tivial ist.

    Ich habe für zwei signed 1-Byte Werte die folgende Sequenz:
    Code:
    	movf		b,w	; if ( a < b )
    	xorwf		a,w
    	andlw		0x80
    	btfsc		STATUS,Z	; Bit 7 set, if yes then skip next command.
    	goto		$+3
    	rlf		b,w
    	goto		$+3
    	movf		b,w
    	subwf		a,w
    	btfss		STATUS,C
    	goto		do_else	; Condition false
    do_true
    	movf		a,w	; Condition true.
    	movwf		b
    do_else				; Condition false
    	...
    Hat jemand von euch ein eine bessere (=kürzere) Variante?

    Grüße
    Mario

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Ich bin PIC-mäßig schon ein wenig entwöhnt. Aber schau mal da rein
    http://www.myke.com/basic.htm#byterange
    Das sind verschiedene Schmankerl für verschiedene Problemchen mit PICs
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •