/COPYRIGHT 1970, DIGITAL EQUIPMENT CORP., MAYNARD, MASS.
/EDIT 2   9-25-70
       .TITLE .BC    RAISE REAL BASE (A) TO INTEGER POWER (B) A**B
       .GLOBL .BC,.EE,.AK,.AH,.AW,.EF,.AB,.ER
/             CALLING SEQUENCE    (A**B = EXP(BLOGE(A)))
/      JMS*   (.BC)           SUBR CALL (A IN FLOAT ACC)
/      LAC(*) ADDR            ADDR OF B (* IF INDIRECT)
/      NEXT INSTRUCTION       SUBR RETURN (RESULT IN FLOAT ACC)
/
.BC    CAL    0              /ENTRY-EXIT
       LAC*   .AB
       DAC    BC01           /SAVE BASE SIGN
       AND    (377777)
	SZA
	JMP BC10
	XCT* .BC		/GET EXPONENT
	SPA!SNA!CLA
	JMS* .ER
	AND 15			/DUMMY INSTR (500015)
	JMP BC11		/ANS=BASE
BC10	DAC*   .AB            /ABSOLUTE BASE
       JMS*   .EE            /COMPUTE LOG2(A) (.EE)
       JMS*   .AK            /MULTIPLY REAL (.AK)
       .DSA   BC05           / (LOG2(A)*LOGE(2)= LOGE(A))
       JMS*   .AH            /STORE REAL IN TEMP (.AH)
       .DSA   BC07
       XCT*   .BC            /GET EXP
       JMS*   .AW            /FLOAT TO ACC
       JMS*   .AK            /MULTIPLY REAL (.AK)
       .DSA   BC07           / (B * LOGE(A))
       JMS*   .EF            /COMPUTE EXP (.EF)  (EXP(B * LOGE(A)))
       XCT*   .BC
       RTR
       AND    BC01           /DETERMINE ANSWER SIGN
       AND    (400000)       /AS (-1) ** POWER
       XOR*   .AB
       DAC*   .AB            /SET ANSWER SIGN
BC11	ISZ    .BC            /BUMP EXIT
       JMP*   .BC            /EXIT
BC05          140000         /LOGE(2) (1)  (0.6931471806)
              261344         /        (2)
BC07   CAL    0              /TEMP(1)
       CAL    0              /     (2)
BC01   .DSA   0
       .END
