There are a number of "simple" ways to calculate lograrithms- but they are all extremely tedious.
One method is to use the inverse function to the logarithm. The inverse function to , the logarithm base a, is the exponential function .
In particular, the inverse to the "common logarithm", base 10, is while the inverse to the "natural logarithm", base e, about 2.718..., is .
Calculating is the same as solving the equation [itex]x= a^x[/itex]. And there are a number of different, but tedious and repetative, ways to do that.
The simplest is the "midpoint method". First, by trial and error, find two numbers, and such that and . Since the logarithm is a "continuous function", there must some x between and such that . We don't know exactly where between that number is so just try the midpoint: try . If we are done! If not, either or . If the first, then we know that there must be a solution between and , if the second between and . So we just do the same thing again, choosing new value for between our current and either or . At each step, we have reduced the interval, in which we know the value must be, by 1/2.
A slightly faster, slightly more complicated method, is the "secant method". Given two values, and , such that and , instead of the midpoint, construct the equation of the line through the two points and . There is a standard formula for the line between two points: is the line between and . Solve that equation for , determine whether is larger than or less than y, and repeat.
A still faster but more sophisticated method is "Newton's method" for solving equations.
The derivative of is where "ln(a)" is the natural logarithm, base "e", of a. To solve the equation f(x)= 0 by Newton's method, choose any starting value, (so you don't have to find two starting values on either side of the true solution) and form . Basically, the idea is that we construct the straight line tangent to y= f(x) at the point and solve that linear equation to get a better approximation. Using that new value of , repeat to get a still better approximation. Newton's method has the property that it tends to double the number of correct decimal places in the answer on every step.
For , for fixed y, so that f(x)= 0 is equivalent to [itex]a^x- y= 0[/tex] or , so the formula becomes . In particular, for the natural logarithm, a= e, ln(a)= ln(e)= 1 so that is just . For the common logarithm, a= 10 and so the formula is . Of course, once you have found you continue in exactly the same way to find , , etc. to whatever accuracy you want.
Another straight forward method of finding approximate values of difficult functions is to use the "Taylor's series" about x= 0 (also called the "MacLaurin series") for the function. The Taylor's series for ln(1+ x) (Since log(0) is not defined, we cannot directly find the series for ln(x) about x= 0) is . As an infinite series, that is exactly . Taking a finite number of terms gives an approximation with the more terms taken, the better the approximation.
Finally, I am informed that modern calculators and computers use the "CORDIC" algorithm, about which I admit I know nothing! You might want to google on "CORDIC".