/    /  Compiler Design-3- Address Instruction Form

3- Address Instruction Form

 

Assignment Instruction of the form 

X = a op b

Where op is a binary operator such as arithmetic, logical, relational, and bitwise operators.

Ex:   x = a+b

x = a>b

x = a&&b

 

Assignment instruction of the form 

X = op a

Where op is unary operator such as unary minus, increment, decrement, and logical not

Ex:   x = -a

X = a —

X = ! a

 

Copy instruction of the form

X = y

Where y value is assigned to u 

Ex: goto L

Where L represents a set of statements.

 

A conditional jump of the form if u relational op u goto L and conditional jump of the form if x goto L1 else goto L2.

Ex: ij x> y goto L1

Ij x then goto L1

Else

Goto L2

 

Procedure calls and returns are implemented using the following format.

Procedure: X

y=call(p,x)

Return y

 

Address and pointer assignments of the form

X = &y

X = *y

Y = *x

Index copy instructions of the form x=y[i], x[i]=y

 

Reference Link

3- Address Instruction Form