/********************************************************* * intlib - Standard Library Routines for Integer Values * *********************************************************/ /* Integer Absolute Value * * Args: int w - Integer to test * * Returns: int v -Absolute value of w */ char iabs(); /* Integer Add * * Setup: setsrc(g) - Augend * * Args: int d - Addend * * Returns: char c - Carry * * int r - Sum */ char iadd(); /* ASCII to Integer * * Convert ASCII string to Unsigned Integer * * Args: &s - String to Convert * * Returns: char n - Number of digits parsed * * int v - Numeric value of string */ char atoi(); /* Integer to ASCII * * Convert Unsigned Integer to String * * Setup: setdst(s) - Destination String * * Args: int w - Unsigned Int to Convert * * Returns: char n - Length of string */ void itoa(); /* Integer Divide * * Divide Unsigned Integers * * Aetup: setdst(n) - Numerator * * Args: int d - Denominator * * Returns: int q - Quotient */ char idiv(); /* Integer Maximum * * Return Largest of Two Integers * * Requires: setsrc(i) - First Integer * * Args: int j - Second Integer * * Returns: int m - Greater of the Two */ char imax(); /* Integer Minimum * * Return smallest of Two Integers * * Requires: setsrc(i) - First Integer * * Args: int j - Second Integer * * Returns: int m - Lesser of the Two */ char imin(); /* Integer Multiply * * Multiply Unsigned Integers * * Requires: setdst(m) - Muliplicand * * Args: int r - Multiplier * * Returns: long p - Product */ char imult(); /* Integer Left Shift * * Args: char n - Number of Bits * * int w - Value to Shift * * Returns: char v - Overflow Bits * int r - Shifted Integer */ char ishftl(); /* Integer Shift Right * * Args: char n - Number of Bits * * int w - Value to Shift * * Returns: char v - Overflow Bits * int r - Shifted Integer */ char ishftr(); /* Integer Subtract * * Requires: setsrc(m) - Minuend * * Args: int s - Subtrahend * * Returns: char c - Carry * * int d - Difference */ char isub();