The instructions in this group perform the stated
arithmetical or logical operations involving y, the 48-bit word in register Y
and (except for the 03 and 04 functions) x, the 48-bit word in register X.
The result is written into accumulator Z in 3-address type or register X
in 2-address type (modified or unmodified).

**Function number 00 [0000 000]**

(3) z' = x + y (2) x' = x + y

Add x to y, writing the result to Z or X.
OVR is set if the result is out of range:
this cannot happen if x and y are of opposite signs.

**Function number 01 [0000 001]**

(3) z' = x – y (2) x' = x - y

Subtract y from x, writing the result into Z or X.
OVR is set if the result is out of range: this cannot happen if x and y
are of the same sign. OVR __will__ be set if x ≥
0 and y_{F} = -1.0.

**Function number 02 [0000 010]**

(3) z' = y - x (2) x' = y - x

Subtract x from y, writing the result into Z or X.
OVR is set if the result is out of range:
this cannot happen if x and y are of the same sign.
OVR will be set if y ≥
0
and x_{F} = -1.0.

The result of this instruction is equal in magnitude and opposite in sign to that of a 01-instruction with the same X and Y addresses.

If, in a 3-address 01-instruction, the X- and Y-addresses have been written in the wrong sequence, the error is most easily
corrected by changing the function number to 02.

**Function number 03 [0000 011]**

(3) z' = -y (2) x' = -y

Negate y into Z or X.
OVR is set if and only if y_{F}
= -1.0.

In 3-address form the X address is irrelevant and therefore it is recommended that this form should not be used.

If it is desired to overwrite a number by its own negative an instruction typified by

03 A100 A100

can be used but it is faster and therefore preferable to use

12 A100 0

Note that when a 2-address 03-instruction is obeyed, x is
extracted from the store, even though it is not used. When a 3-address 03-instruction is obeyed the X-address
is not checked for lock-outs or for violation of reservations unless replaced
(see 2.2.23 and 2.2.24).

**Function number 04 [0000 100]**

(3) z' = y (2) x' = y

Copy y into Z or X. OVR cannot be set by this instruction.

It is not necessary to regard y as a number.

In 3-address form X is irrelevant and therefore it is recommended that this form should not be used.

Note that when a 2-address 04-instruction is obeyed, x is
extracted from the store, even though it is not used. When a 3-address 04-instruction is obeyed the X-address is
not checked for lock-outs or for violation of reservations unless replaced.
(See 2.2.23 and
2.2.24).

**Function number 05 [0000 101]**

(3) z' = x & y (2) x' = x & y

Perform the logical operation 'and' between x and y, writing the result into Z or X. OVR cannot be set by this instruction.

For a fuller discussion of the logical operations see
Section 3.2.1.

**Function number 06 [0000 110]**

(3) z' = x Ú y (2) x' = x Ú y

Perform the logical operation 'or' between x and y, writing the result into Z or X. OVR cannot be set by this instruction.

For
a fuller discussion of the logical operations see Section
3.2.1.

**Function number 07 [000 111]**

(3) z' = x ≢ y (2) x' = x ≢ y

Perform the logical operation 'not equivalent' between x and y writing the result into 2 or X. OVR cannot be set by this instruction.

For a fuller discussion of the logical operations see Section 3.2.1.