The power of the Custom Macro language lies in the use of a variety of arithmetic functions within the custom macro body. This features gives the user the power to re-define and re-calculate the values of variables “on the fly.” This post is meant as a brief explanation and overall view of some of these functions available with a more in-depth view given in following posts in this series.

*Types of Commands Available *

*Definition and Substitution*

( #100 = #101 )

*Addition and Subtraction*

( #100 = #101 + #102 )

( #100 = #101 – #102 )

*Multiplication and Division*

( #100 = #101 * #102 )

( #100 = #101 / #102 )

*Logical Sum — Exclusive OR — Logical Product*

( #100 = #101 OR #102 )

( #100 = #101 XOR #102 )

( #100 = #101 AND #102 )

*Trigonometric Functions*

( #100 = SIN(#101)) —– Sine

( #100 = COS(#101)) —– Cosine

( #100 = TAN(#101)) —– Tangent

( #100 = ATAN(#101)) —– Arc Tangent

( #100 = ASIN(#101)) —– Arc Sine

( #100 = ACOS(#101)) —– Arc Cosine

*Other Mathematical Functions*

( #100 = SQRT(#101)) —– Square Root

( #100 = ABS(#101)) —– Absolute Value

( #100 = BIN(#101)) —– Conversion from BCD to BIN

( #100 = BCD(#101)) —– Conversion from BIN to BCD

( #100 = ROUND(#101)) —– Rounding Off

( #100 = FIX(#101)) —– Discard fractions less than 1

( #100 = FUP(#101)) —– Add 1 for fractions less than 1

( #100 = LN(#101)) —– Natural Logarithm

( #100 = EXP(#101)) —– Exponent with base

( #100 = ADP(#101)) —– Addition of

Another powerful feature of the Custom Macro language is the ability for the user to control the flow of the programs execution. Using a variety of what is called CONTROL COMMANDS, the user can repeat areas, jump to areas and set conditions for program execution.Again, presented here is a brief explanation and overall view of some of these functions available with a more in-depth view given in following posts in this series.

*Types of Control Commands Available *

*DIVERGENCE*

IF < condition> GOTO N—-

When the <condition> is satisfied, the program execution jumps

to sequence number N—-.

Example : IF [#100 = #102] GOTO N100

*CONDITIONAL EXPRESSIONS EXPLAINED*

The following are expressions that can be used to define conditional expressions :

EQ = equal to

NE = not equal to

GT = greater than

LT = less than

GE = greater than or equal to

LE = less than or equal to

*ITERATION*

WHILE < condition> DO <number>

……

END <number>

While the <condition> is satisfied, the program executes blocks between the WHILE statement and the END statement.

*Example : *

WHILE [#100 LT #102] DO 1

( program commands )

( program commands )

( program commands )

#100 = #100 + 1 ( add 1 to #100 at the end of each body run )

END 1

*BRANCH COMMAND*

GOTO N—-

Program execution jumps to sequence number N—-

Example : GOTO N101

—————————-

Being well versed in the information from this post will be a big help as we go forward with some macro programming examples in future posts.

The fun is just beginning … *Stay Tuned !!*

Kenney Skonieczny – President

Kentech Inc.

www.KentechInc.com