ż.include "m128def.inc" ; ;prg sumujacy elementy tablicy zakonczonej zerem ;i zapisac sume do rejestru R8 ;po zsumowaniu zapalic diode na bicie 0 portu A! ;
ldi r30, $00 ;za-adowanie rejestru r30 sta-Ś 00h ldi r31, $01 ;teraz rejestr indeksowy z ma wartoĄ 100h ;rejestr z ma takŚ wartoĄ poniewaŹ jest to poczŚtek ;pamiŕci RAM w mikrokontrolerze ATmega128
LOOP: ld r18, z+ ;-aduj r18 danŚ spod adresu wskazywanego przez rejestr indeksowy z ; i do rejestru indeksowego dodaj 1 add r8,r18; cpi r18, $00 ;porˇwnaj rejestr r18 ze sta-a 00h breq EndOfTable ;jeĄli rejestr r18 = 0 to skok do etykiety EndOfTable
rjmp LOOP ;skok do etykiety LOOP
EndOfTable: ;program skoczy tutaj jeĄli znalećliĄmy szukana wartoĄ
out $1b,r31 ; zapis 1 na port a END: rjmp END ;pŕtla niesko˝czona