Subtract Halfword
(SH)
General Description
Format
(RX)
Condition Code
Interrupt Action
Fixed-Point
Instructions
• The halfword operand specified by
the
second address
(XdBdD2)
is
expanded and subtracted from the operand specified by
the
first address
(R
l
).
The difference is placed in
the
general
register
specified by R
l
•
The sign and
the
magnitude
of
the difference determine
the
condition
code setting.
o 7 8 11 12 15 16 19 20
• 0 - difference is zero.
1-
difference is less
than
zero.
2 - difference is
greater
than
zero.
S - overflow.
• Fixed-point overflow.
Address
error:
Addressing.
Specification.
31
Notes •
1.
The halfword in
main
memory specified
by
the second address is
expanded
to
full-word length by propagating
the
sign
bit
value
through
the
16 high-order positions.
2.
The subtraction is completed by adding
the
one's complement of
the
second operand and a one in
the
low-order position
of
the
first
operand. All 32 bits
are
involved in
the
operation.
3. An overflow exists
if
the high-order numeric result
bit
and the
carry
out
of
the sign
bit
position disagree.
4. The operand specified by
the
second address is unaltered.
138