Универсальная MOD / DIV функция. Регистры можно поменять.
Цитата
LDI R25,5
m0:MOV R17,R20 ; это регистры из вашего задания
MOV R16,R21
LDI R18,10 ; это на что делим (на 10)
LDI R19,0
Цитата
CLR R14
CLR R15
LDI R24,0x10
m1: ADD R16,R16
ADC R17,R17
ADC R14,R14
ADC R15,R15
CP R14,R18
CPC R15,R19
BRCS m2
SUB R14,R18
SBC R15,R19
INC R16
m2: DEC R24
BRNE m1
; здесь переносите R15:R14 в ... REZULTAT
MOV R20,R17
MOV R21,R16
dec R25
BRNE m0 ; и далее идёте в начало цикла (цитаты)
Внутри средней цитаты: Параметры: R17:R16 - делимое, R19:R18 - делитель. Выход: R17:R16 - результат. R15:R14 - остаток. Все нечётные регистры - старшие байты значений.
Сообщение отредактировал GetSmart - May 21 2006, 20:50