A stepper system will likely be out of position if it hits a limit, because the control issued the move and has no feedback to tell it how far the machine moved before the power was cut.
A servo system should not lose position when hitting a limit. The limits should be positioned before the dead stop so that the machine has time to decelerate under control of the system. Even then, the encoder feedback on the system cannot be fooled, and the position is always accessible from anywhere along the slideways.
Many servo systems will permit motion of the axis off the limit switch in the one free direction.
Needless to say, the interruption caused by hitting the limit may require rerunning the program from the beginning, but midprogram starts are possible under certain circumstances.
First you get good, then you get fast. Then grouchiness sets in.
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)