|
;*******************************************************
;r22:r23:r24 (src) - значение, r20:r21 (dist) - результат
sqrt24: ldi mask,1
ldi count,12
clr work_h
clr work_l
clr dist_h
clr dist_l
sqrt24_1: cpi src_h, 64
cpc work_l, dist_l
cpc work_h, dist_h
brcs sqrt24_2
subi src_h, 64
sbc work_l, dist_l
sbc work_h, dist_h
sqrt24_2: rol dist_l
rol dist_h
eor dist_l, mask
lsl src_l
rol src_m
rol src_h
rol work_l
rol work_h
lsl src_l
rol src_m
rol src_h
rol work_l
rol work_h
dec count
brne sqrt24_1
cp dist_l, work_l
cpc dist_h, work_h
adc dist_l, src_m
adc dist_h, src_m
ret
;***********************************************************
;--------------------------------------
E-mail: info@telesys.ru