#include "at89x52.h"
		org		0000h

basla:	
		// p1 bilgisi mov komutuyla degerleri alinabilir
		// p1'in high nibble anl komutuyla siniflanip okunabilir.
		// bir for dungusuyle toplam yapilabilir.
		// prototip
				// r0=p1
				// i=0
				// a=toplamdegiskenim=0
				// for (i:=0; i<r0+1; i++)
				// {
				//     a=a+i	
				// } 
xx:
		mov		a,p1
		anl		a,#00001111b
		mov		r0,a   // r0=da portun high nibble sifirlanmis hali var.
		// r0+1 kadar lik dongu yapilacak
		mov		a,#00h
		clr		c
	y:
		add		a,r0
		djnz	r0,y
		
		mov		p3,a
		
		sjmp	xx
		end