The format of an assignment is target := source. When the statement is executed,
(1) the expression on the right hand side of the statement is evaluated
(2) this value is then stored in the variable named on the left hand side.

This is a two step operation, not an equality test; an assignment should never be called "equals", but something like "gets", or "is assigned".