Skip to content

Instantly share code, notes, and snippets.

@bulentsiyah
Last active October 20, 2017 13:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bulentsiyah/2f3f0302473749b96cb8e6738631f495 to your computer and use it in GitHub Desktop.
Save bulentsiyah/2f3f0302473749b96cb8e6738631f495 to your computer and use it in GitHub Desktop.
Yapay Sinir Ağı ile AND Kapısı (PIC Assembly) -- http://www.bulentsiyah.com/yapay-sinir-agi-ile-and-kapisi-pic-assembly/
;====andkps.ASM=========BULENTSİYAH===
LIST P=16F84
INCLUDE "P16F84.INC"
SINIRA    EQU h'0C' ;
SINIRB    EQU h'0D' ;
SINIRC    EQU h'0E' ;
SINIRD    EQU h'0F' ;
SINIRE    EQU h'10' ;
SINIRF    EQU h'11' ;
HSONUC    EQU h'13' ;
OGRENME    EQU h'14' ;
WAC        EQU h'15' ;
WAD        EQU h'16' ;
WAE        EQU h'17' ;
WBC        EQU h'18' ;
WBD        EQU h'19' ;
WBE        EQU h'1A' ;
WCF        EQU h'1B' ;
WDF        EQU h'1C' ;
WEF        EQU h'1D' ;
BCARPAN    EQU h'1E' ;
ICARPAN    EQU h'1F' ;
WTOPLA  EQU h'20'
SAYAC    EQU h'21'
WTASMA    EQU h'22'
WAZALTBIR EQU h'23'
WAZALTIKI EQU h'24'
AKTIVDEGER EQU h'25'
CLRW
MOVWF PORTA
MOVWF PORTB
BSF STATUS,5
CLRW
MOVWF TRISB
MOVLW h'FF'
MOVWF TRISA
BCF STATUS,5
;****************************
BASLAMAKICINTIKLA
BTFSS PORTA,0   ;
GOTO BASLAMAKICINTIKLA
;****************************
DEGERATAMA
MOVLW h'01'
MOVWF SINIRA
MOVLW h'01'
MOVWF SINIRB
MOVLW h'01'
MOVWF HSONUC
MOVLW h'01'
MOVWF OGRENME
MOVLW h'01'
MOVWF WAC
MOVLW h'01'
MOVWF WAD
MOVLW h'01'
MOVWF WAE
MOVLW h'01'
MOVWF WBC
MOVLW h'01'
MOVWF WBD
MOVLW h'01'
MOVWF WBE
MOVLW h'01'
MOVWF WCF
MOVLW h'01'
MOVWF WDF
MOVLW h'01'
MOVWF WEF
MOVLW h'00'
MOVWF WTOPLA
MOVLW h'00'
MOVWF SAYAC
;****************************
ITERASYON
MOVLW H'01'
ADDWF SAYAC,F
;CSINIRAGI
MOVLW h'00'
MOVWF SINIRC
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF WAC,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRC,F
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF WBC,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRC,F
MOVF SINIRC,W
CALL AKTİVASYONUYGULA
MOVWF SINIRC
;DSINIRAGI
MOVLW h'00'
MOVWF SINIRD
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF WAD,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRD,F
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF WBD,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRD,F
MOVF SINIRD,W
CALL AKTİVASYONUYGULA
MOVWF SINIRD
;ESINIRAGI
MOVLW h'00'
MOVWF SINIRE
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF WAE,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRE,F
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF WBE,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRE,F
MOVF SINIRE,W
CALL AKTİVASYONUYGULA
MOVWF SINIRE
;FSINIRAGI
MOVLW h'00'
MOVWF SINIRF
MOVF SINIRC,W
CALL CARPMABIRINCI
MOVF WCF,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRF,F
MOVF SINIRD,W
CALL CARPMABIRINCI
MOVF WDF,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRF,F
MOVF SINIRE,W
CALL CARPMABIRINCI
MOVF WEF,W
CALL CARPMAIKINCI
CALL CARP
ADDWF SINIRF,F
MOVF SINIRF,W
CALL AKTİVASYONUYGULA
MOVWF SINIRF
;AĞIRLIK HESABI ÖNCESİ EĞİTİMİN EĞİMİ
MOVF SINIRF,W
SUBWF HSONUC,W
BTFSC STATUS,C
GOTO AGIRLIKEKLEVEYAESITLE
GOTO AGIRLIKCIKART
AGIRLIKDON
MOVLW H'10' ;SAYAÇ
SUBWF SAYAC,W
BTFSC STATUS,C
GOTO SONSUZDONGU
GOTO ITERASYON
;****************************
CARPMABIRINCI
MOVWF BCARPAN
RETURN
CARPMAIKINCI
MOVWF ICARPAN
RETURN
CARP
MOVF BCARPAN,W
DECFSZ ICARPAN,F
GOTO CARPMA
MOVF BCARPAN,W
RETURN
CARPMA
ADDWF BCARPAN,F
DECFSZ ICARPAN,F
GOTO   CARPMA
MOVF BCARPAN,W
RETURN
;****************************
AKTİVASYONUYGULA
MOVWF AKTIVDEGER
MOVLW h'06' ;eşik değer 10.(7F)
SUBWF AKTIVDEGER,W
BTFSC STATUS,C
GOTO AKTIFBUYUK
GOTO AKTIVKUCUK
AKTIFBUYUK
MOVLW H'01'
RETURN
AKTIVKUCUK
MOVLW H'00'
RETURN
;****************************
AGIRLIKEKLEVEYAESITLE
BTFSC  STATUS,Z
GOTO AGIRLIKDON
;WAC
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WAC,F
MOVF WAC,W
CALL AGIRLIKTASMA
MOVWF WAC
;WAD
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WAD,F
MOVF WAD,W
CALL AGIRLIKTASMA
MOVWF WAD
;WAE
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WAE,F
MOVF WAE,W
CALL AGIRLIKTASMA
MOVWF WAE
;WBC
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WBC,F
MOVF WBC,W
CALL AGIRLIKTASMA
MOVWF WBC
;WBD
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WBD,F
MOVF WBD,W
CALL AGIRLIKTASMA
MOVWF WBD
;WBE
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WBE,F
MOVF WBE,W
CALL AGIRLIKTASMA
MOVWF WBE
;WCF
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRC,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WCF,F
MOVF WCF,W
CALL AGIRLIKTASMA
MOVWF WCF
;WDF
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRD,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WDF,F
MOVF WDF,W
CALL AGIRLIKTASMA
MOVWF WDF
;WEF
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRE,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
ADDWF WEF,F
MOVF WEF,W
CALL AGIRLIKTASMA
MOVWF WEF
GOTO AGIRLIKDON
;****************************
AGIRLIKTASMA
MOVWF WTASMA
MOVLW H'0A'
SUBWF WTASMA,W
BTFSC STATUS,C
GOTO AGIRLIKDUZELT
GOTO AGIRLIKDUZELTME
AGIRLIKDUZELT
MOVLW H'09'
RETURN
AGIRLIKDUZELTME
MOVF WTASMA,W
RETURN
;****************************
AGIRLIKCIKART
;WAC
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WAC,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
;MOVF WAC,W
;MOVWF PORTB
MOVWF WAC
;WAD
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
;MOVWF PORTB
CALL AGIRLIKBIRINCI
MOVF WAD,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WAD
;WAE
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRA,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WAE,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WAE
;WBC
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WBC,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WBC
;WBD
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WBD,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WBD
;WBE
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRB,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WBE,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WBE
;WCF
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRC,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WCF,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WCF
;WDF
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRD,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WDF,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WDF
;WEF
MOVLW h'00'
MOVWF WTOPLA
MOVF SINIRE,W
CALL CARPMABIRINCI
MOVF OGRENME,W
CALL CARPMAIKINCI
CALL CARP
ADDWF WTOPLA,F
MOVF WTOPLA,W
CALL AGIRLIKBIRINCI
MOVF WEF,W
CALL AGIRLIKIKINCI
CALL AGIRLIKAZALT
MOVWF WEF
GOTO AGIRLIKDON
;****************************
AGIRLIKBIRINCI
MOVWF WAZALTBIR
RETURN
AGIRLIKIKINCI
MOVWF WAZALTIKI
RETURN
AGIRLIKAZALT
MOVF WAZALTBIR,W
SUBWF WAZALTIKI,F
BTFSC STATUS,C
GOTO AGAZALTMA
GOTO AGAZALT
AGAZALTMA
MOVF WAZALTIKI,W
RETURN
AGAZALT
MOVLW H'01'
RETURN
;****************************
EKRANHAZIR
MOVF SINIRF,W
MOVWF PORTB
RETURN
;****************************
SONSUZDONGU
CALL    EKRANHAZIR
GOTO SONSUZDONGU
END
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment