When I plug an image to the "bump node" ( or "Displacement" ) Does it consider the black value as 0.0 height or the gray ones (0.5,0.5,0.5)
It doesn't matter at all.
Bump mapping doesn't really care whether the colour of a particular pixel is black or grey or white or even negative. What it does care about, is the relation between that pixel and the pixels surrounding it.
The only thing that matter is the difference between the values. The two sets of pixels in the image above will give identical results, because the difference between black (0.0) and grey (0.5) is
0.5, and the difference between grey and white (1.0) is also
As proof, here are two identical renders:
Why is it like this?
Under the hood, Blender is simply calculating the surface normal for each pixel. A normal is simply the direction that point on the surface is facing, irregardless of its position.
Note: None of this is true for actual displacement, only bump mapping.