# What's the point of Indirect Addressing?

Indirect addressing allows you to reference memory locations, larger than the operand limit of a CPU.

i.e

1 | ADD 2 3
2 | #2
3 | *32000
...
32000 | #5


This will add memory location 2 and 3, 3 points to location 32000, so when it's evaluated, the effect is:

1 | ADD 2 32000


Even though 32000 may exceed the operand size limit.

My question is, why do this?

Why not simple have this:

1 | ADD 2 3
2 | #2
3 | #5


It saves time wasted on extra references to memory and space in memory.