File DIVIDE

Directory of image this file is from
This file as a plain text file

[
[
[  JANC
[C DICKSON
[AUG 20
[
[DIVISION ROUTINE WITH POSITIVE 12-BIT INTEGERS
[SUCH THAT DIVISOR IS LESS THAN OR EQUAL TO DIVIDEND 
$0
[NORMALIZE LD AND INCREMENT DIVIDE COUNTER
LDA
9C
#1A TAN
2A
SLL
STO
9C
LDA [INCR DIVIDE CTR
9G
ADD
9B
STO
9G
LDA
9C
TRC
1A
#2A STO [WHEN SHIFTING DONE STORE LD AND # OF SHIFTS
9C
LDA
9G
STO
9F
[
[NORMALIZE LA AND DECREMENT DIVIDE COUNTER
#3A LDA
9D
TAN
4A 
SLL
STO
9D
CAD [DECR DIVIDE CTR
9G
STO
9G
LDA
9D
TRC 
3A
#4A STO [WHEN SHIFTING DONE STORE LA
9D
[
[-LD TO LC
LDA
9C
CAA
9B  [ONES COMPLEMENT PLUS 1
STO
9E
[
[DIVISION ROUTINE
ADD
9D
#1B STO
9D
BRP
2B 
LDA [IF RESULT NEGATIVE
9A
SLL
STO
9A
TRC
3B
#2B LDA [IF RESULT POSITIVE
9A
SLL
ADD
9B
STO
9A
#3B LDA [CK DIVIDE CTR
9G
BZA
5B
CAD [DECR DIVIDE CTR
9G
STO
9G
LDA
9D
BRP
4B
SLL [SHIFT LA LEFT 1
ADD [IF LAST QUOTIENT BIT WAS 0 ADD LD
9C
TRC
1B
#4B SLL [SHIFT LA LEFT 1
ADD [IF LAST QUOTIENT BIT WAS 1 ADD LC
9E
TRC
1B
#5B ADD [WHEN DIVISION FINISHED RELOAD ACC
9D
BRP
6B
ADD [IF REM NEGATIVE ADD LD
9C
#6B STO
9D
[
[SHIFT ROUTINE FOR REMAINDER
LDA [LOAD SHIFT CTR
9F
#1C BZA [CK SHIFT CTR
2C
STO
9F
LDA [RELOAD LA AND SHIFT
9D
SLR
STO
9D
CAD [RELOAD SHIFT CTR AND DECREMENT
9F
TRC
1C
#2C 0000 [DUMMY INSTR FOR HALTING
[
[REGISTERS
#9A 0000 [LQ OR QUOTIENT
#9B 0001 [INCREMENT FOR COUNTERS
#9C 0000 [LD OR DIVISOR
#9D 0000 [LA OR ACCUMULATOR
#9E 0000 [LC OR DIVISOR COMPLEMENT
#9F 0000 [SHIFT COUNTER FOR REMAINDER
#9G 0000 [DIVIDE COUNTER



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search