Pattern A |
|
The instruction is converted without any changes.
|
|
|
Pattern B |
|
With GP-Pro EX, variables with different lengths can not be allocated on one instruction. In case that the bit lengths of variables allocated on ADD instruction are different, the convert instruction to match the variable lengths is added and converted.
|
- |
Before Conversion |
|
|
Variable
|
Variable Type
|
Int_a.B[0]
|
Integer-Type
(Specified Byte)
|
Int_b
|
Integer-Type
|
Int_c.B[0]
|
Integer-Type
(Specified Byte)
|
|
|
- |
After Conversion |
|
1. |
An instruction to copy the data of "Int_a.B[0]" to 8 lower bits "Int08TmpTran(0).B[0]" of the integer variable "Int08TmpTran(0)" is created.
|
2. |
The integer data stored in "Int08TmpTran(0)" is added to "Int_b". The result of the operation is stored in "Int32TmpTran(0)".
|
3. |
An instruction to copy the data of 8 lower bits "Int32TmpTran(0).B[0]" of "Int32TmpTran(0)" to "Int_c.B[0]" is created. |
|
 |
|
Pattern C |
|
With GP-Pro EX, different types of variables can not be allocated on one instruction. In case that the variable types allocated on ADD instruction are different, the convert instruction to match the variable types is added and converted.
|
-
|
Before Conversion |
|
|
Variable
|
Variable Type
|
Real_a
|
Real-Type
|
Int_b
|
Integer-Type
|
Int_c
|
Integer-Type
|
|
|
- |
After Conversion |
|
1. |
An instruction to convert the integer data of "Int_b" to the real data and copy it on the real variable "RealTmpTran(0)" is created.
|
2. |
The real data of "Real_a" is added to the real variable "RealTmpTran(0)". The result of the operation is stored in "RealTmpTran(1)".
|
3. |
An instruction to convert the real data of "RealTmpTran(1)" to the integer data and copy it on "Int_c" is created. |
|

|
|
|
MEMO |
* |
The integer variables "Int08TmpTran(0)", "Int32TmpTran(0)", and the real variables "RealTmpTran(0)", "RealTmpTran(1)" are created automatically when conversion. |
|
|