200 + 100 in a byte already overflows. The fix: before doing arithmetic, "unpack" the bytes into 16-bit words. Interleave with zeros — zero extension; interleave with a sign mask — sign extension.