1*10514Sdlw /* 2*10514Sdlw * "@(#)pow_ii.c 1.1" 3*10514Sdlw */ 4*10514Sdlw 5*10514Sdlw long int pow_ii(ap, bp) 6*10514Sdlw long int *ap, *bp; 7*10514Sdlw { 8*10514Sdlw long int pow, x, n; 9*10514Sdlw 10*10514Sdlw pow = 1; 11*10514Sdlw x = *ap; 12*10514Sdlw n = *bp; 13*10514Sdlw 14*10514Sdlw if(n < 0) 15*10514Sdlw { } 16*10514Sdlw else if(n > 0) 17*10514Sdlw for( ; ; ) 18*10514Sdlw { 19*10514Sdlw if(n & 01) 20*10514Sdlw pow *= x; 21*10514Sdlw if(n >>= 1) 22*10514Sdlw x *= x; 23*10514Sdlw else 24*10514Sdlw break; 25*10514Sdlw } 26*10514Sdlw return(pow); 27*10514Sdlw } 28