1 #include "os.h" 2 #include <mp.h> 3 #include "dat.h" 4 5 // prereq: alen >= blen 6 int mpveccmp(mpdigit * a,int alen,mpdigit * b,int blen)7mpveccmp(mpdigit *a, int alen, mpdigit *b, int blen) 8 { 9 mpdigit x; 10 11 while(alen > blen) 12 if(a[--alen] != 0) 13 return 1; 14 while(blen > alen) 15 if(b[--blen] != 0) 16 return -1; 17 while(alen > 0){ 18 --alen; 19 x = a[alen] - b[alen]; 20 if(x == 0) 21 continue; 22 if(x > a[alen]) 23 return -1; 24 else 25 return 1; 26 } 27 return 0; 28 } 29