.data r0 dd 0 r1 dd 0 .code mov eax, 1 ; n=1; mov ebx, 3 ; d0=3; mov edx, 7 ; d1=7; call ITRL push eax div ebx mov r0, eax pop eax mov eax, 1 ; n=1; mov ebx, 5 ; d0=5; mov edx, 9 ; d1=9; call ITRL push eax div ebx mov r1, eax pop eax pushad mov eax, r0 mov ebx, r1 mov ecx, 4 sub eax, ebx mul ecx mov r0, eax mov r1, ebx popad ; rest of code ITRL: mov ecx, 1000 mul edx ; eax = eax * edx add eax, ebx ; eax = eax + ebx push eax mov eax, ebx mul edx ; ebx = ebx * edx mov ebx, eax add edx, 4 ; edx = edx + 4 pop eax dec ecx cmp ecx, 0 jne ITRL ret