/COPYRIGHT 1970, DIGITAL EQUIPMENT CORP., MAYNARD, MASS.
/EDIT 2   9-25-70
	.TITLE .BB	/RAISE INTEG. BASE (A) TO INTEG. POWER (B)
	/A**B
       .GLOBL .BB,.AD,.ER
/             CALLING SEQUENCE
/      JMS*   (.BB)           SUBR CALL (A IN A-REG)
/      LAC(*) ADDR            ADDR OF B (* IF INDIRECT)
/      NEXT   INSTRUCTION     SUBR RETURN (RESULT IN A REG)
/
.BB    CAL    0              /ENTRY-EXIT
	SZA
	JMP BB11
	XCT* .BB		/GET EXPONENT
	SPA!SNA!CLA
	JMS* .ER
	AND 15			/(500015) DUMMY INSTR
	ISZ .BB			/BUMP EXIT
	JMP* .BB
BB11	DAC	BB01		/STORE BASE (A)
       LAC    BB04           /GET A (1)
       DAC    BB05           /INITIALIZE RESULT
       XCT*   .BB            /GET EXP
       ISZ    .BB            /BUMP EXIT
       DAC    BB02           /STORE EXP(B)
       SPA!CLA               /IF NEG EXP, EXIT  A=ZERO
       JMP*   .BB
       LAW    -1             /IS THE BASE = 1
       TAD    BB01
       SNA
       JMP    BB10           /YES-EXIT A= 1
BB06   LAC    BB02           /SET EXP = EXP/2
       RCR
       DAC    BB02
       SNL                   /WAS B17 SET
       JMP    BB07           / NO
       LAC    BB01           /YES-  BASE
       JMS*   .AD            /       *   (INTEGER MULTIPLY (.AD))
       LAC    BB05           /     RESULT
       DAC    BB05           /     TO RESULT
BB07   LAC    BB02           /IS EXP NOW ZERO
       SNA                   / NO
       JMP    BB10           / YES-EXIT
       LAC    BB01           /   BASE
       JMS*   .AD            /    *   (INTEGER MULTIPLY (.AD))
       LAC    BB01           /   BASE
       DAC    BB01           /   TO BASE
       JMP    BB06           /CYCLE
BB10   LAC    BB05           /LOAD RESULT
       JMP*   .BB            /EXIT
BB01   CAL    0              /BASE (A)
BB02   CAL    0              /EXP  (B)
BB04          1
BB05   CAL    0              /RESULT
       .END
