How to Enter Addresses in FBD (GS 4.5)

Instruction parameters are represented initially in a variety of ways in the FBD Program Editor. The different parameter types permit different types of assignment:

??.? Only bit value assignments (such as an absolute or symbolic bit address, or a boolean value such as OFF or ON) are valid for this type of input or output parameter. You can negate this type of input, and turn this type of input and/or output into an immediate parameter.
???? This type of input or output parameter does not accept bit value assignments; press F1 to see a list of the data types that are valid, because valid data types vary from one instruction to another.
<< You can either connect this input parameter to a preceding instruction or make a bit value assignment to this input parameter. You can negate this type of input; you can turn this type of input into an immediate parameter.
>> You can either connect this output parameter to a subsequent instruction or make a bit value assignment to this output parameter. You can turn this type of output into an immediate parameter.
>| You can leave this ENO output parameter unassigned, or connect it to a subsequent instruction, or make a bit value assignment to this output parameter.

You can assign values/make connections for the parameters of an instruction when you first place the instruction in the program, or come back to it later. Parameters that are represented in red (<<, >>, ??.?, ????) must be assigned a value or connected to another instruction before your program can be compiled properly. (The black >| output parameter (the ENO parameter) can be left unassigned.)

For examples of how the FBD Program Editor displays illegal/undefined parameter values, see How the Program Editor Shows Entry Errors in FBD (GS 4.9).)

Assigning Values to a Parameter

To assign a constant value (such as 100) or an absolute address (such as I0.1), simply type the desired value in the address area of the instruction. (Use the mouse or the ENTER key to select the address area for typing.)

To assign a symbolic address (a global symbol or local variable that uses a name such as INPUT1), you must perform the following simple steps:

1.Type the symbol or variable name in the address area of the instruction.

2.For Global Symbols, use the Symbol Table to assign a symbol name to a memory address.

Note: You do not have to pre-define symbols in order to use them in your program. You can define memory addresses later.

For Local Variables, use the Local Variable Table at the top of the program editor window. Enter the symbol name in the ôNameö column. You do not enter an address for a local variable because the compiler automatically assigns L memory addresses. You can minimize the size of the Local Variable Table by dragging the table edge.

The use of local variables is an advanced programming technique. Inexperienced programmers should consider assigning all symbolic values as global symbols in the Symbol Table/Global Variable Table.


The Program Editor automatically formats address values after you enter them. You do not need to type the formatting characters; they will appear in the display after you finish typing.

Examples of How the Program Editor Displays Addresses

I0.0 Absolute address is designated by memory area and address number (SIMATIC program editor)
%I0.0 Percent sign precedes an absolute address in IEC (IEC program editor)
#INPUT1 Pound symbol precedes a local variable (SIMATIC or IEC program editor)
INPUT1 Global symbol name (SIMATIC or IEC program editor)

Matching Addresses and Defining Symbols

When you right-click on a parameter of an instruction, the pop-up menu allows you to quickly define the address in the symbol table or select from up to five possible matches based on what has already been typed in the address area.


ĚUse the ENTER key to cycle through all the elements of a network, one parameter at a time, in order to quickly edit any necessary addresses.

ĚAlternatively, select individual parameters by right-clicking, and define symbols or find matches for those addresses by using the pop-up menu.

Valid and Invalid Symbolic Names

Symbolic names are permitted to contain alphanumeric characters and underscores. They are also permitted to contain extended characters (ASCII 128 to ASCII 255). The first character is restricted to alpha and extended characters only.

Valid names: Illegal names:
a11 1loop
a_b_1_2 l:kdl";ld

So illegal names are ones that begin with a number or contain characters that are not alphanumeric or in the extended character set.

See Also:

Addressing (GS 2.2)


Select Mnemonic Set



SIMATIC and IEC 1131-3 Data Types