Browse Prior Art Database

# Divide Circuit

IP.com Disclosure Number: IPCOM000098768D
Original Publication Date: 1959-Dec-01
Included in the Prior Art Database: 2005-Mar-08
Document File: 3 page(s) / 97K

IBM

Tai, J: AUTHOR

## Abstract

In machines for performing division by over and over subtraction, time is lost in the determination of how many positions the divisor (DR) must be shifted so that its most significant digit is in the same denominational order as the most significant digit of the dividend (DD). These machines employ a trial and error method in which DR is always subtracted from the highest order of the accumulator in the first reduction cycle. Each time DR is successfully subtracted from DD in this position, a 1 is added to the proper order of the quotient (Q). The subtraction is continued in this position until too much has been subtracted as indicated by a negative result and a high order carry. DR is then added back once to compensate for the extra subtraction and, thereafter, DR is shifted to the next right position to repeat the process.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 55% of the total text.

Page 1 of 3

Divide Circuit

In machines for performing division by over and over subtraction, time is lost in the determination of how many positions the divisor (DR) must be shifted so that its most significant digit is in the same denominational order as the most significant digit of the dividend (DD). These machines employ a trial and error method in which DR is always subtracted from the highest order of the accumulator in the first reduction cycle. Each time DR is successfully subtracted from DD in this position, a 1 is added to the proper order of the quotient (Q). The subtraction is continued in this position until too much has been subtracted as indicated by a negative result and a high order carry. DR is then added back once to compensate for the extra subtraction and, thereafter, DR is shifted to the next right position to repeat the process.

For example, in a machine having a six order DD and a three order DR, the DD 000220 may be divided by 011 as follows: 000220 DD 011 subtract DR 989220 and high order carry*- add 0 to 1000's position of Q 011 re-add DR 000220 - 011 shift DR and subtract 999120 and high order carry - add 0 to 100's position of Q 011 re-add DR 000220 - 011 shift DR and subtract 000110 and no carry - add 1 to 10's position of Q - 011 subtract again 000000 and no carry - add another 1 to 10's position of Q - 011 999890 and high order carry - add 0 to 10's position of Q + 011 re-add DR 000000 - 011 999989 and high order carry - add 0 to units position of Q + 011 re-add DR 000000 remainder * more rigorously termed borrow 0020Q

The described system replaces the trial and error method in so far as it enables the machine to automatically determine the proper order to which DR should initially be shifted. The governing factor in determining the position of DR in a fixed capacity accumulator is the number of high order zeros in both DD and DR. When there are high order zeros in DD, DR should shift one position to the right for every zero in DD. A high order zero in DR has just the opposite effect and DR should shift one position to the left for every high order zero in DR.

For example, in the same problem as above the shift control is initially set at shift 3 and DD and DR are aligned as follows: DD 000220 - has 3 high order zeros DR 011 - has 1 high order zero

1

Page 2 of 3

The one high order 0 in DR causes a shift of DR one position to the left to the shift 4 position so that DD and DR are effectively aligned as follows: 000220

011

Then the three high order 0's in DD cause a shift of DR three positions to the left to the shift 1 position so that DD and DR are then effectively aligned as follows: 000220

011

From this new aligned position, the normal trial and error method of subtraction starts.

In the drawing, a control block (CB) 10 causes a two...