MATLAB: Large Integer problem

64 bit integersMATLABvery large integersvery large number arithmetic

Hi, I am getting these strange results:
Equations are of the form (x*y + n) – x*y which has the obvious result n. But Matlab gives strange results. These are the results I get in Matlab 2007 and 2010a:
(1812433253*19650218 + 1) – (1812433253*19650218) = 0
(1812433253*19650218 + 2) – (1812433253*19650218) = 0
(1812433253*19650218 + 3) – (1812433253*19650218) = 4
I realized that 1812433253*19650218 has more than 53 bits and these results has something to do with the way Matlab handles numbers between 53 bits and 64 bits. But I couldn't find a reliable way to carry out above operations correctly. Thanks.