W kolejnej części naszego kursu programowania sterowników PLC LG XGB zapoznamy się z możliwością realizacji przez nie prostych funkcji arytmetycznych, takich jak dodawanie, odejmowanie, mnożenie oraz dzielenie. W artykule skupimy się na operacjach dodawania do siebie liczb, zaś ich odejmowanie, mnożenie i dzielenie przebiega w sposób analogiczny - funkcja ADD jest wówczas zastępowana odpowiednio funkcjami SUB, MUL i DIV.
Funkcja wykonuje operację dodawania liczb "S1" oraz "S2" i zapisuje go w "D". Liczby "S1" oraz "S2" mogą przyjmować wartości z zakresu od -32.768 (hFFFF) do 32.767 (h7FFF), przy czym również wynik ich dodawania ("D") musi mieścić się w tym zakresie.
Przykład programu:
Podobnie jak funkcja ADD również DADD wykonuje dodawanie dwóch liczb "S1" oraz "S2" i zapisujego go do "D", jednak dzięki temu że dodawane liczby mogą składać się z dwóch słów zwiększony został przedział wartości jaki mogą przyjmować zarówno dodawane liczby, jak również wynik ich dodawania. Dla funkcji DADD zakres ten wynosi od -2.147.483.648 (hFFFFFFFF) do 2.147.483.647 (h7FFFFFFF).
Przykład programu:
Funkcja ADDU służy do dodawania liczb naturalnych - bez znaku. Rezygnacja z zapisywania informacji o znaku liczby w 16-bitowym słowie pozwoliła na zwiększenie zakresu przyjmowanych wartości liczb. W przypadku dodawania liczb ze znakiem w 16-bitowym słowie 1-bit wykorzystywany był do zapisania informacji o znaku liczby, zaś na samą jej wartość pozostawało 15-bitów, cow zapisie binarnym dawało wartość 215=32.767. W przypadku dodawania liczb bez znaku do zapisania wartości liczby dysponujemy pełnym 16-bitowym słowem, co pozwala na zapisanie wartości równej 216=65.535 (hFFFF).
Przykład programu:
Funkcja łącząca w sobie cechy funkcji DADD oraz ADDU - pozwala na dodawanie liczb bez znaku, składających się z dwóch słów "S1+1" oraz "S2+1" i zapis wyniku w "D+1". Dzięki takiej kombinacji możliwy jest zapis liczby z przedziału od 0 do 4.294.967.295 (hFFFFFFFF).
Przykład programu:
Funkcja umożliwia realizację operacji dodawania liczb rzeczywistych "S1" oraz "S2" i zapisanie wyniku w "D". Zapisanie liczby rzeczywistej (REAL) w rejestrach sterownika PLC zajmuje 2 słowa. Liczby rzeczywiste mogą przyjmować wartości z zakresu:
± 2-126 ≤ | Operand | < ± 2128
Przykład programu:
Zapisanie liczby w formacie LREAL zajmuje w pamięci sterownika PLC aż 4 słowa, zaś zapisana liczba może należeć do następującego zakresu:
± 2-1022 ≤ | Operand | < ± 21024
Przykład programu: