;               ESERCIZI0 CONFRONTO TRA BYTE
;
;confronta il valore presente sulla porta P1 con il valore di 
;riferimento presente nel registro 50H. se sono uguali accendi un led 
;mentre se sono diversi accendi altri 2 led a seconda se é <o>.
;
;-------------------------------------------------------------------
; ASSEGNAZIONE
;
; P3.0 --> LED UGUALE
; P3.1 --> LED MAGGIORE
; P3.2 --> LED MINORE
;-------------------------------------------------------------------
;       INIZIO ASSEMBLER
;
        $MOD51
        ORG 1000H
;
START:  SETB P3.0       ; spengo i led
        SETB P3.1
        SETB P3.2  
INIZIO: MOV A,P1 	; sposta il dato presente sulla porta P1 nell'accumulatore A
IST0: 	MOV 50H,#66 	; sposta il dato 66 nel registro 50H
IST1: 	CJNE A,50H,IST3 ; salta all'indirizzo IST3 se il numero presente nel registro 50H è diverso dal numero presente nell'accumulatore A
IST2: 	CLR P3.0 	; accendo led uguale
      	SETB P3.1 	; spengo led maggiore
      	SETB P3.2       ; spengo led minore
      	AJMP INIZIO     ; salto all'etichetta inizio
IST3: 	JC IST5         ; salta se carry e uguale a 1 all' etichetta IST5
IST4: 	SETB P3.0       ; spengo led uguale
      	SETB P3.1       ; spengo led maggiore
      	CLR P3.2        ; accendo led minore
      	AJMP INIZIO     ; salta all'etichetta inizio
IST5: 	SETB P3.0       ; spengo led uguale
      	SETB P3.1       ; spengo led maggiore
      	CLR P3.2        ; accendo led minore
FINE: 	AJMP INIZIO     ; salta a inizio
      	END         
