Witam rozpoczołem pierwsze kroki w pisaniu programów w assamblerze. Jako pierwszy programik napiasłem skrypt do generowania kodu BCD na wyjściu procesora. Jeśli ktoś może zobaczyć czy program jest napisany prawidłowo to będę wdzięczny. Konkretnie interesuje mnie czy tak to powinno być pisane czy są jakieś błędy. Jeśli tak to poproszę o info co jest źle
.include "2313def.inc"
.def acc1= r16
.def acc2= r12
.cseg
.org 0x00
rjmp reset
reset:
cli
ldi acc1,LOW(RAMEND)
out SPL,acc1
clr acc1
loop:
ldi acc1,0x00
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
rjmp loop
.exit
.include "2313def.inc"
.def acc1= r16
.def acc2= r12
.cseg
.org 0x00
rjmp reset
reset:
cli
ldi acc1,LOW(RAMEND)
out SPL,acc1
clr acc1
loop:
ldi acc1,0x00
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
inc acc1
out portb,acc1
out ddrb,acc1
rjmp loop
.exit