Omron C200HX Computer Hardware User Manual


 
233
Note The actual SUB(31) operation involves subtracting Su and CY from 10,000 plus
Mi. For positive results the leftmost digit is truncated. For negative results the
10s complement is obtained. The procedure for establishing the correct answer
is given below.
First Subtraction
IR 010 1029
DM 0100 3452
CY 0
HR 20 7577 (1029 + (10000 3452))
CY 1 (negative result)
Second Subtraction
0000
HR 20 7577
CY 0
HR 20 2423 (0000 + (10000 7577))
CY 1 (negative result)
In the above case, the program would turn ON HR 2100 to indicate that the value
held in HR 20 is negative.
5-19-8 DOUBLE BCD SUBTRACT SUBL(55)
Mi: First minuend word (BCD)
IR, SR, AR, DM, HR, TC, LR
Su: First subtrahend word (BCD)
IR, SR, AR, DM, HR, TC, LR
Ladder Symbols
Operand Data Areas
R: First result word
IR, SR, AR, DM, HR, LR
SUBL(55)
Mi
Su
R
@SUBL(55)
Mi
Su
R
Limitations Each of the following pairs must be in the same data area: Mi and Mi+1, Su and
Su+1, and R and R+1.
Description When the execution condition is OFF, SUBL(55) is not executed. When the
execution condition is ON, SUBL(55) subtracts CY and the 8-digit contents of Su
and Su+1 from the 8-digit value in Mi and Mi+1, and places the result in R and
R+1. If the result is negative, CY is set and the 10s complement of the actual
result is placed in R. To convert the 10s complement to the true result, subtract
the content of R from zero. Since an 8-digit constant cannot be directly entered,
use the BSET(71) instruction (see 5-16-3 BLOCK SET BSET(71)) to create an
8-digit constant.
Mi + 1 Mi
Su + 1 Su
R + 1 R
CY
CY
Note The DOUBLE 2s COMPLEMENT NEGL(––) instruction can be used to con-
vert binary data only, it cannot be used with BCD data.
BCD Calculations Section 5-19