06457036 is referenced by 6 patents.
A system for accurately and efficiently determining the result of an integer multiple-divide operation having the form of (A*B)/C is disclosed. If the values of A, B, and C provide for an easy solution (e.g., A, B, or C are zero, A equals C or B equals C, or A or B equals one), the result is directly computed. Otherwise, if the product of A and B would produce an overflow condition, A and/or B are scaled by a tracked number of bits so that the product of scaled A and B would fit in an integer variable of the current computing system. Then, the product of scaled or unscaled A and B is computed. If C is large compared to the calculated product of A*B, C is scaled to minimize the likelihood of a false zero as a result. Then, the result is scaled if required. Thus, the result of an integer multiple-divide operation having the form of (A*B)/C is efficiently determined according to the system for accurately and efficiently performing an integer multiply-divide operation.