This document describes the M.I.T. Floating Point Arithmetic Package (DECUS No. 84), a collection of arithmetic subroutines developed by Bill Gasper and Tom Eggers from the Massachusetts Institute of Technology.
The package represents floating-point numbers in the form f x 2^e, where f is an 18-bit one's complement fraction (with the binary point between bits 0 and 1) and e is an 18-bit one's complement integer exponent of 2. The largest representable magnitude is approximately 10^39,000. Most routines return a normalized result (fraction f between 0.5 and 1 in magnitude), with the fraction in the accumulator (AC) and the exponent in the input/output (IO) register.
The library offers a comprehensive set of floating-point operations, including:
2^X and general X^Y), and Logarithm (base 2 and natural log).Floating Input, supporting digits, 'e', '-', 'x', and spaces) and for formatting floating-point numbers as output (Floating Output, typically in .71000 e2 format with 5 significant figures).The document provides detailed usage instructions for each routine, including parameter passing and return values. Error conditions, such as division by zero or invalid arguments for mathematical functions (e.g., negative square root, log of non-positive), typically cause a program "halt" (hlt). Performance figures are noted for some routines, for example, 385 microseconds for Square Root.
Site structure and layout ©2025 Majenko Technologies