%%% is 2in equal 1in+1in
%\emergencystretch 3em
%\def\stripit#1>{}
%\def\showx#1{\def\x{#1}{\tt \expandafter\stripit\meaning\x}}
\TeX's arithmetic forgets to round when dealing with units. For
example, 1in is defined to be exactly 72.27pt. We can check that by
writing \verb|\dimen0=100in \the\dimen0| and getting {\dimen0=100in \the\dimen0}.
So far, so good. But when we write \verb|\dimen0=1in \the\dimen0|, we get {\dimen0=1in \the\dimen0}.
Oops. This becomes worse since a number called 72.27pt actually
exists, as witnessed by \verb|\dimen0=72.27pt \the\dimen0| which
gives us {\dimen0=72.27pt \the\dimen0}.
So we have the unfortunate situation that {\tt 1in} (which should be
exactly 72.27pt) gives a number different from the number actually
called {\tt 72.27pt}. This is because \TeX\ truncates when working
with the fractions representing exact units, but rounds when working
with decimal fractions.
\TeX\ calculates {\tt 1in} as
$$\left\lfloor 1\times{7227\over100}\times 2^{16}\right\rfloor2^{-16}$$
namely truncating the fractional calculation rather than rounding it.
Other artifacts of \TeX's fractional representation of units mean that
$\tt 2in \neq 1in+1in$: Indeed
\beginverbatim
\dimen0=1in \advance\dimen0 1in \the\dimen0 \dimen0=2in =\the\dimen0
\endverbatim
leaves us with {\dimen0=1in \advance\dimen0 1in \the\dimen0 \dimen0=2in =\the\dimen0}.