;Pic16f84a kullanığımızı varsayaraktan diziyi 0x0C adresinden başlatıyorum
;Bu program ile 16f84a ile 67 adet değişen küçükten büyüğe sıralanabilir
;=======Kullanılan Yazmaçlar======
CBLOCK 0x0C ;a dizisinin eleman sayısı 67
a1 ;dizinin ilk elemanın ismi a1 adresi:0x0C
a2 ;0x0D
a3 ;0x0E
a4 ;0x0F
a5 ;0x10
; ....
; ...
a67 ;0x4E
TEMP ;0x4F
ENDC
;..................
;...............
;...................
BASLA movlw 0x0B ;dizinin ilk elemanın bir önceki adresi FSR yazmacına yüklendi
movwf FSR
UP movlw 0x17
subwf FSR,w
btfsc STATUS,Z ;dizinin son elemanı kontrol edildi mi?
GOTO CIKIS ;dizilim tamamlandı , ÇIKIŞ
incf FSR ;dizinin 2 elemanını karşılaştıran bölüm
movf INDF,w
incf FSR
subwf INDF,w
btfss STATUS,C ;sıralama doğru mu?
GOTO UP ;evet doğru , sıradakine bak
movf INDF,w ;doğru değil yerlerini değiştir
movwf TEMP
decf FSR
movf INDF,w
incf FSR
movwf INDF
decf FSR
movf TEMP,w
movwf INDF
GOTO UP ;Başa dön
CIKIS nop ;işlem tamam , a dizisi küçükten büyüğe dizildi
;............
;..............
;...............