11-4. Integer Logarithm
By the “integer logarithm” function we mean the function where x is a positive integer and b is an integer greater than or equal to 2. Usually, b = 2 or 10, and we denote these functions by “ilog2” and “ilog10,” respectively. We use “ilog” when the base is unspecified.
It is convenient to extend the definition to x = 0 by defining ilog(0) = −1 [CJS]. There are several reasons for this definition:
The function ilog2(x) is then related very simply to the number of leading zeros function, nlz(x), by the formula shown below, including the case x = 0. Thus, if one of these functions is implemented in hardware or software, the ...