288
Comparison Instructions
Section 5-19
Description
When the execution condition is OFF, CPSL(––) is not executed. When the
execution condition is ON, CPSL(––) compares the 32-bit (8-digit) signed
binary contents in Cp1+1, Cp1 and Cp2+1, Cp2 and outputs the result to the
GR, EQ, and LE flags in the SR area.
Precautions
Placing other instructions between CPSL(––) and the operation which
accesses the EQ, LE, and GR flags may change the status of these flags. Be
sure to access them before the desired status is changed.
Flags
ER:
Indirectly addressed EM/DM word is non-existent.
(Content of
*
EM/
*
DM word is not BCD, or the EM/DM area boundary
has been exceeded.)
EQ:
ON if Cp1+1, Cp1 equals Cp2+1, Cp2.
LE:
ON if Cp1+1, Cp1 is less than Cp2+1, Cp2.
GR:
ON if Cp1+1, Cp1 is greater than Cp2+1, Cp2.
Example
In the following example, the content of 103, 102 is less than that of DM 0021,
DM 0020, so 10002 is turned ON and the other bits, 10000 and 10001, are
turned OFF.
Comparison result
Flag status
GR (SR 25505)
EQ (SR 25506)
LE (SR 25507)
Cp1+1, Cp1 < Cp2+1, Cp2
0
0
1
Cp1+1, Cp1 = Cp2+1, Cp2
0
1
0
Cp1+1, Cp1 > Cp2+1, Cp2
1
0
0
CPSL(
−−
)
DM 0020
102
00500
25505
10000
25507
10002
TR
0
25506
10001
Greater Than
Equal
Less Than
000
Address Instruction
Operands
00000
LD
00500
00001
OUT
TR
0
00002
CPSL(
−−
)
102
DM
0020
000
00003
AND
25505
00004
OUT
10000
00005
LD
TR
0
00006
AND
25506
00007
OUT
10001
00008
LD
TR
0
00009
AND
25507
00010
OUT
10002
Cp2+1: DM 0021
0
5
6
A
<
Cp1: 102
F
5
7
B
(
−
2,101,938,823 decimal)
(90,872,283 decimal)
Cp1+1: 103
8
2
B
6
Cp2: DM 0020
9
9
D
B