The block reward halving was put in place to ensure that max money is 21.000.000 coins and to ensure the last coins are not mined out until around the year 2140 long when we will all be dust in the universe.
Below is a table of all block halving heights and the corresponding reward at that time.
I believe that Satoshi introduced this into the code for a number of reasons but I think the main one is to ensure a steady flow of reward for miners over the duration of mining's life.
If we make it to the end of this table is debatable and also depends on the rate of technology change we see in the from of chip sizes in NM and power consumption.
Bitcoin was also designed as a deflationary currency the idea behind this is that over time, the number of bitcoins will decrease and thus become scarcer over time.
Block No. Reward (BTC)
--------- ------------
0 50.00000000
210,000 25.00000000
420,000 12.50000000
630,000 6.25000000 <- we are here
840,000 3.12500000
1,050,000 1.56250000
1,260,000 0.78125000
1,470,000 0.39062500
1,680,000 0.19531250
1,890,000 0.09765625
2,100,000 0.04882812
2,310,000 0.02441406
2,520,000 0.01220703
2,730,000 0.00610351
2,940,000 0.00305175
3,150,000 0.00152587
3,360,000 0.00076293
3,570,000 0.00038146
3,780,000 0.00019073
3,990,000 0.00009536
4,200,000 0.00004768
4,410,000 0.00002384
4,620,000 0.00001192
4,830,000 0.00000596
5,040,000 0.00000298
5,250,000 0.00000149
5,460,000 0.00000074
5,670,000 0.00000037
5,880,000 0.00000018
6,090,000 0.00000009
6,300,000 0.00000004
6,510,000 0.00000002
6,720,000 0.00000001