2.8,23.6 Control Commands
The commands which control the flow of the
micro–program are of the following two types:
a. Branch command . . .
IF [ f conditional expre-
ssion>] GO TO n ;
b. Repeat Command . . . WHILE [ < conditional
expression > ] DO m ,
(1) Branch Command
a. IF [ < conditional expression >] GO TO n ;
If < conditional expression>of this command is
established, a branch is made to the block of
sequence number n within the same program.
When a variable or an expression is used for n,
the branch destination may be changed. If the
condition is not satisfied, the program proceeds
to the next block.
E ;F [< Conditional>]GO TO n;
r
Q
expression
;
.-
(Next Block)
~ -“
* “
m .
0
5 “
~..;l ~
IF [< conditional expression>] may be omitted to
provide a simple branch command as shown below:
Conditional expressions are EQ , NE, CT, LT, GE,
and LE. They are represented as follows:
Conditional ExWession
Meaning
#i EQ#j (#i= ?#j)
#i NE#j
(ifi=k?fj)
#i GTi!j
(#i> #j)
#i LT#j (#i < #j)
#i GE#j
(#i2#j)
#i LE#j (#i Z #j)
A constant
and < expression> may be used for #i
and #j.
A variable and <expression > may be
used for n.
Notes:
1.
The sequence number must be located at the
head of the block when it is called for by a
branch command.
Otherwise, the data prior to
the sequence number is ignored as shown below:
Branch Destlnatloc Se~uence No
~
,gnored
2.
The reverse branch on the program takes
longer execution time than the forward branch.
(2) Repeat Command
a.
WHILE [ < conditional expression >] DO m ;
(m = 1, 2 and 3)
GO TOn;
Nn. .. ;
—
END m ;
While <conditional expression > is satisfied, the
blocks between DO m and END m are repeated.
When it is unsatisfied, the processing branches
to the block following END in.
---- .
TJ
[
- WHILE <Conditional DO m;e
—
.c
m
r I
1
expression>
2
~
~
*
~
:
END
m;
d
(BlockfollowingEND m)
81