The simple answer is because that's how the people who wrote Postgres designed it. To quote:
The null value sorts higher than any other value. In other words, with ascending sort order, null values sort at the end, and with descending sort order, null values sort at the beginning.
This assumes that you have specified an ORDER BY clause, if you haven't then the rows are returned randomly.
If the ORDER BY clause is specified, the returned rows are sorted in the specified order. If ORDER BY is not given, the rows are returned in whatever order the system finds fastest to produce.
NULLshould be ordered, so its up to the people that wrote it into Postgres: en.wikipedia.org/wiki/Order_by