In order of importance:
- Counting (needed for loops)
- Addition, subtraction, multiplication, division.
- Algebra (only really required to understand the use of variables).
- Boolean algebra, boolean logic and binary.
- Exponents and logarithms (i.e. understand O(n) notation).
Anything more advanced than that is usually algorithm-specific or domain-specific. Depending on which areas you are interested in, the following may also be relevant:
- Linear algebra and trigonometry (3D visualization)
- Discrete mathematics and set theory (database design, algorithm design, compiler design).
- Statistics (well, for statistical and/or scientific/economic applications. possibly also useful for algorithm design).
- Physics (for simulations).
Understanding functions is also useful (don't remember what the mathematical term is for that area), but if you know how to program you probably already do.
My point being: A ten year old should know enough mathematics to be able to understand programming. There isn't really much math required for the basic understanding of things. It's all about the logic, really.