In case of floating points, since they are an approximation, zero is not zero. Zero is a quantity approaching to zero. In fact dividing by zero with floats is entirely possible! (it leads to infinite, positive or negative depending on the sign).
For example, the quantity (try it in Python):
0.1 ** 100 / 1000**100 evaluates to 0.0
while the quantity
0.1 ** 100 / (-1000**100) evaluates to -0.0
It's clear that neither the two quantities are 0 (no division can produce a result that is exactly zero!) but they approach the zero. But one quantity is slightly less than zero, the other slightly more than zero.
Of course for integers -0 doesn't make sense (that is the reason why we invented 2 complement, to not have 2 "zeros")