# autor: Imenko Prezimić INDEX ra1234-2023
# int prebrojNajviseUzastopnih(unsigned long long* vrednost)
.section .text
.global prebrojNajviseUzastopnih
prebrojNajviseUzastopnih:
	pushl %ebp
	movl %esp, %ebp
	
	pushl %ebx
	pushl %esi
	pushl %edi

	movl $1, %esi		# maska nizih
	xorl %edi, %edi		# maska visih
	xorl %ecx, %ecx 	# brojac trenutnog broja nula
	movl 8(%ebp), %ebx

	movl (%ebx), %eax
	movl 4(%ebx), %edx
	xorl %ebx, %ebx 	# maksimalan broj nula
proveri_kraj:
	andl %esi, %esi
	jnz broji
	andl %edi, %edi
	jz proveri_brojac
broji:
	testl %esi, %eax
	jnz proveri_brojac
	testl %edi, %edx
	jnz proveri_brojac
	incl %ecx
pomeri_masku:
	shll $1, %esi
	rcll $1, %edi 
	jmp proveri_kraj
proveri_brojac:
	cmpl %ebx, %ecx
	jbe resetuj_brojac
	movl %ecx, %ebx		# pronadjen novi maksimum
resetuj_brojac:
	xorl %ecx, %ecx
	andl %esi, %esi
	jnz pomeri_masku
	andl %edi, %edi
	jnz pomeri_masku	# ako su oba nula znaci da smo prosli kroz citav broj
kraj:					
	movl %ebx, %eax
	popl %edi
	popl %esi
	popl %ebx
	movl %ebp, %esp
	popl %ebp
	ret
