orange and Drenius are correct, let me provide some of the theory behind it.
You want to separate movement direction from movement speed.
Direction is a vector, speed is a scalar; specifically the movement of an entity is described by the scalar product of direction and speed.
The direction vector should (needs to) be a unit vector
, so that the length of the movement vector (the distance traveled) is equal to speed.
To create a unit vector in the desired direction, you normalize any vector in that direction; the resultant vector will have a length of 1.
How you normalize is dependent on how you are representing your directions and locations, seen in orange and Drenius's responses.