The inputs are 4
and 3
, as bytes. The input is taken as ASCII characters, the values are thus 52 and 51.
The first input is decremented by 8, 6 times, so 52 - 48 = 4.
The second input is added to the first input, so 4 plus 51 = 55.
55 is written to the output, and that is ASCII
7
.
The program sums up two ASCII digits.
The JavaScript interpreter is entirely correct. You were looking at the first register, which holds the byte value of 55
, but the output box shows 7
, the ASCII character.