Previous Page Single Page Next Page  

* NAME: AB16-CCT4 DOC 70180658000 REV H PAGE 63

2979 05300 0 01 05255 JMP DIV1 NO, DO THE NEXT DIVISION 2980 05301 101000 NOP 2981 05302 -0 01 05241 JMP* DIVT RETURN 2982 * 2983 * 2984 * 2985 * MULTIPLICATION ROUTINE 2986 * 2987 05303 0 000000 MPY DAC ** ENTRY 2988 05304 101400 SMI CHECK SIGN OF MULTIPLIER 2989 05305 0 01 05317 JMP MPYB POSTIVE 2990 05306 140407 TCA NEGATIVE TWO,S COMPLEMENT 2991 05307 000201 IAB MULTIPLIER IN B REGISTER 2992 05310 -0 02 05303 LDA* MPY LOAD MULTIPLICAND 2993 05311 101400 SMI CHECK SIGN 2994 05312 0 01 05324 JMP MPYC POSTIVE 2995 05313 140407 TCA NEGATIVE TWO,S COMPLEMENT 2996 05314 0 10 05340 MPYA JST MPYS EXIT TO PERFORM MULTIPLICATION 2997 05315 0 12 05303 IRS MPY INCREMENT FOR RETURN 2998 05316 -0 01 05303 JMP* MPY EXIT 2999 * 3000 05317 000201 MPYB IAB PLACE MULTIPLIER IN B REG 3001 05320 -0 02 05303 LDA* MPY 3002 05321 101400 SMI ICHECK SIGN OF MULTIPLICAND 3003 05322 0 01 05314 JMP MPYA MULTIPLICAND PLUS, GO TO MULTIPLY 3004 05323 140407 TCA 3005 05324 0 10 05340 MPYC JST MPYS NEGATIVE-2'S COMPLEMENT RESULT 3006 05325 140200 RCB RESET C BIT 3007 05326 140401 CMA ONE'S COMPLEMENT HI-ORDER 3008 05327 000201 IAB 3009 05330 140407 TCA TWO'S COMPLEMENT LOW ORDER 3010 05331 101040 SNZ IS RESULT ZERO 3011 05332 140600 SCB INSERT 1 FOR CARRY IN 3012 05333 140100 SSP RESET MSB TO ZERO 3013 05334 000201 IAB HI-ORDER TO A, LOW ORDER TO B 3014 05335 141216 ACA 3015 05336 0 12 05303 IRS MPY INCREMENT FOR RETURN 3016 05337 -0 01 05303 JMP* MPY EXIT 3017 * 3018 * MULTIPLICATION SUBROUTINE FOR POSTIVE VALUES 3019 * 3020 05340 0 000000 MPYS DAC ** ENTRANCE 3021 05341 0 04 05403 STA COMM STORE MULTIPLICAND 3022 05342 000201 IAB MULTIPLIER IN A MULTIPLICAND IN B. 3023 05343 0 04 05404 STA COMM+1 STORE MULTIPLIER 3024 05344 0 05 05403 ERA COMM IF NEG. MINUS LARGEST NEGATIVE NUMBER 3025 05345 100400 SPL IF ZERO NORMAL OR BOTH ARE LARGEST NEG NO. 3026 05346 0 01 05375 JMP MLNN LARGEST NEG NO. IS PRESENT. MULT. IN B 3027 05347 000201 IAB TEST MULTIPLICAND FOR LNN, IF NEG 3028 05350 101400 SMI BOTH OPERANDS ARE LNN CK FOR BOTH 1.00000.
  Previous Page Single Page Next Page