[Back to MATH SWAG index] [Back to Main SWAG index] [Original]
{
>> Is there a faster way to find the GCD of two numbers than
>> Euclid's algorithm?
> Euclid's algorithm isn't fast enough for you?
Oh yes, I gather it is, but I'm interested in whether there are faster
ways or not.
> quick div or mod. The following should be fast enough.
> function GCD( u, v : LongInt) : LongInt;
Here's my implementation:
}
function gcd(a, b : word) : word; assembler;
asm
mov ax,a
mov bx,b
@start:
or bx,bx
jz @endgcd
xor dx,dx
div bx
mov ax,bx
mov bx,dx
jmp @start
@endgcd:
end;
[Back to MATH SWAG index] [Back to Main SWAG index] [Original]