To tylko jedna z 2 stron tej notatki. Zaloguj się aby zobaczyć ten dokument.
Zobacz
całą notatkę
;==============================================================================
;Listing 7.35 Konwersja bin na bcd - wersja 16 bitowa
;==============================================================================
;deklaracje rejestrow
cblock r0, r1, r2 ;liczba dziesietna spakowana (6 cyfr)
lbyte, hbyte ;liczba binarna (2 bajty)
count ;licznik pomocniczy
endc ;r0 dziesiatki jednosci
;r1 tysiace setki
;r2 setki tys. dzies. tys
;lbyte mlodszy bajt
;hbyte starszy bajt
bin2bcd ;konwersja bin na bcd
movlw .16 ;liczba bitow
movwf count ;wpisz do licznika bitow
clrf r0
clrf r1
clrf r2
bcf status,c
goto bin2bc2
bin2l movlw r0
movwf fsr ;wskaznik na r0
bcdadj movlw 03h ;korekta dziesietna
addwf indf,f
btfss indf,3
subwf indf,f
movlw 30h
addwf indf,f
btfss indf,7
subwf indf,f
incf fsr,f
btfss fsr,3
goto bcdadj
bin2bc2 rlf lbyte,f ;przesuwa bity w rejestrach
rlf hbyte,f
rlf r0,f
rlf r1,f
rlf r2,f
decfsz count,f ;czy wszystkie bity?
goto bin2l
retlw 0
... zobacz całą notatkę
Komentarze użytkowników (0)