Browse Prior Art Database

Programmed Calculation of Multiplicative Function of Three Variables

IP.com Disclosure Number: IPCOM000077734D
Original Publication Date: 1972-Sep-01
Included in the Prior Art Database: 2005-Feb-25
Document File: 1 page(s) / 12K

Publishing Venue

IBM

Related People

Schor, MI: AUTHOR

Abstract

In the described scheme, it is desired to shift three hardware registers and compare each to a fourth register. The following function must be evaluated: f(N1, N2, N3) = K1*N1 + K2*N2 + K3*N3. where Ki's are constants, and is represent the number of shifts necessary before register i matches the fourth register (i=1, 2, 3).

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 67% of the total text.

Page 1 of 1

Programmed Calculation of Multiplicative Function of Three Variables

In the described scheme, it is desired to shift three hardware registers and compare each to a fourth register. The following function must be evaluated: f(N1, N2, N3) = K1*N1 + K2*N2 + K3*N3. where Ki's are constants, and is represent the number of shifts necessary before register i matches the fourth register (i=1, 2, 3).

Three hardware lines are available in the high-order positions of a storage register (bits 0, 2, and 4), to indicate the current truth value of the following statements: register (1) = register (4); register (2) = register (4); and register (3) = register (4). The bits, which will here be denoted by T1, T2, and T3, respectively, are on (equal to 1) if the registers do not compare.

In a system with limited arithmetic capabilities, one can perform the multiplication in function f as repeated additions. At each shift step, rather than having to add 1, 2, or 3 constants to the accumulated total, all seven combinations of 1, 2, or 3 constants (000 to 111) are stored in an available storage, and the appropriate one is fetched on the basis of which of the registers had compared. f(N1, N2, N3) is broken down into an iterative function, f1(t1, t2, t3), where the t's represent the 3 truth values discussed above: f1(t1, t2, t3) = t1*K1 + t2*K2 + t3*K3 + accum. result.

When the t's are all 0, then the function f is completely calculated. The t's are not exactly what the hardware provides...