Aqui hay un sitio dedicado a principiantes:
http://www.avr-asm-tutorial.net/avr_en/beginner/index.html
En todo caso, me tome la molestia de podar un codigo:
 
; 
;**** Comienzo del segmento de codigo
.def            RAMEND=1023              ; Fin de la RAM (ajustar de acuerdo al modelo) 
.cseg					;Segmento CODE
.org 0                                  ; Contador de posicion a cero
		rjmp reset		;Manejador del reset
		nop			;interrupcion no atendid
		nop                     ;interrupcion no atendida
		nop			;interrupcion no atendida
;*** Manejador del reset **************************************************
;*** Configura el puerto
reset:		
                ldi R16,LOW(RAMEND) ; Inicializa el apuintador de pila
                out SPL,R16
                ldi R16,HIGH(RAMEND)
                out SPH,R16
		ser R16			; R16 a unos
		out DDRB,R16		;Configura todo el puerto B como salidas
		out PORTB,R16		;Pone todas las patillas de B a uno
		clr flags		;Borramos las banderas
				
;**** Parpadeo
blink:
		ser R16			; R16 a unos
		out PORTB,R16		;Pone todas las patillas de B a uno
                rcall retardo
		clr R16			; R16 a ceros
		out PORTB,R16		;Pone todas las patillas de B a cero
                rcall retardo
                rjmp blink
; retardo simple
retardo:
                ser r15                 ; r15 a FFh
retardo1:
                dec r15                 ; decrementa
                cpi r15,0               ; compara con cero
                brne retardo1        ; si no es igual salta a retardo1
                ret                     ; regresa de subrutina