Now, it might be of some interest to provide a rigorous, although tedious method of defining "exponentiation".
1) First, by induction, it is unproblematic to define
x\equiv{x}^{1}, x^{n}=x^{n-1}*x, n\geq{2}, n\in\mathbb{N}, x\in\mathbb{R}
2) Let us now define a function Exp(x) on \mathbb{R}:
Exp(x)=1+\sum_{n=1}^{\infty}\frac{x^{n}}{n!}
Exp(x) can be shown to be larger than zero, and strictly increasing.
We also have Exp(0)=1
Since it is strictly increasing, we may define its inverse, Log(x), defined on the positive half-axis (zero not included).
3) We may now, for any b\in\mathbb{R}, a\in(0,\infty} define:
a^{b}=Exp(b*Log(a))
Thus, we have for any a>0, a^{0}=Exp(0*Log(a))=Exp(0)=1
4) We might extend our idea of exponentiation to give, for example, meaning to the function 0^{x} but the value of the expression 0^{0} will, at best, always be one from a "provisional" definition dictated by convenience, rather than that we may deduce its value from first principles.