rendered paste body; PIC16F84A
LIST P=16F84A
; Etiquetas
STATUS EQU 0x03
TRISA EQU 0x05
TRISB EQU 0x06
; Programa
RESET ORG 0x00
GOTO INICIO
INICIO BSF STATUS,5 ; Banco 1
MOVLW 0x1F ; 0001111
MOVWF TRISA ; TRISA como IN
CLRF TRISB ; TRISB como OUT
BCF STATUS,5 ; Banco 0
; AND RA1*RA2=RB6
BTFSC TRISA,1 ; si RA1 == 1
BTFSC TRISA,2 ; y RA2 == 1
BSF TRISB,6 ; RA1*RA2=1
; OR RA3+RA4=RB5
BTFSC TRISA,3 ; si RA3 == 1...
BSF TRISB,5 ; RB5 = 1
BTFSC TRISA,4 ; si RA4 == 1...
BSF TRISB,5 ; RB5 = 1
; NOT RA0 > RB4
BTFSC TRISA,0 ; si RA0 == 1
BCF TRISB,4 ; RB4 = 0
BTFSS TRISA,0 ; si RA0 == 0
BSF TRISB,4 ; RB4 = 1
END