#define u R5
#define v R6
#define dimensiune R1
.section program;
.global _calcul_mediana_asm;

_calcul_mediana_asm:
// transfer parametri
P0=R0;
// sfarsit transfer parametri
u=0;

WHILE_U: 	CC=u<dimensiune;
			IF !CC JUMP END_WHILE_U;
			v=u;
			R3=B[P0];
			P1=P0;
WHILE_V:	v+=1;
			CC=v<dimensiune;	
			IF !CC JUMP END_WHILE_V;
			P1+=1;
			R4=B[P1];
			CC=R3<R4;
			IF CC JUMP FARA_REORDONARE;
			B[P0]=R4;
			B[P1]=R3;// interschimbare
			R3=R4;
FARA_REORDONARE: JUMP WHILE_V;
END_WHILE_V:u+=1;
			P0+=1;
			JUMP WHILE_U; 
END_WHILE_U:
RTS;
_calcul_mediana_asm.end: