Node:Conversion operators, Next:Shift operators, Previous:Input-output operators, Up:MIX instruction set
The following instructions convert between numerical values and their character representations.
NUM
CHAR
Digits are represented in MIX by the range of values 30-39 (digits
0-9). Thus, if the contents of rA
and rX
are, for instance,
[rA] = + 30 30 31 32 33 [rX] = + 31 35 39 30 34
the represented number is 0012315904, and NUM
will store this
value in rA
(i.e., we end up with [rA]
= + 0 46 62 52 0 = 12315904).
If any byte in rA
or rB
does not belong to the range
30-39, it is interpreted by NUM
as the digit obtained by taking
its value modulo 10. E.g. values 0, 10, 20, 30, 40, 50, 60 all represent the
digit 0; 2, 12, 22, etc. represent the digit 2, and so on. For
instance, the number 0012315904 mentioned above could also be
represented as
[rA] = + 10 40 31 52 23 [rX] = + 11 35 49 20 54
CHAR
performs the inverse operation, using only the values 30
to 39 for representing digits 0-9.