Особенности битовых строк

<< Click to Display Table of Contents >>

Navigation:  Программирование в MasterSCADA 4D > Редактор ST > Синтаксис Master ST > Особенности вычислений >

Особенности битовых строк

К особенностям работы с битовыми строками в MasterSCADA 4D относятся:

1.Присвоение значений с переполнением:

Для переменных типа данных LWORD, DWORD, WORD или BYTE при превышении максимального значения работает циклическое присвоение:

Тип

Максимальное значение (MAX)

Пример переполнения

BYTE

255

a := 256 → a = 0

WORD

65,535

a := 65,536 → a = 0

DWORD

4,294,967,295

a := 4,294,967,296 → a = 0

LWORD

18,446,744,073,709,551,615

a := 18,446,744,073,709,551,616 → a = 0

Формула: a = N - MAX - 1, где:

a - переменная типа данных;

MAX - максимальное число для данного типа данных;

N - значение, записываемое в а.

2.Особенности вычитания:

При вычитании меньшего значения из большего (b < a) для битовых строк:

Формула:  b - a = MAX - a + b + 1, где:

MAX – максимальное значение для данного типа данных.

В случае, например, DWORD-переменных: b - a = 16#FFFFFFFF - a + b + 1.

В частности, это свойство используется для корректного вычисления длины временного интервала по отсчетам, полученным с помощью функции TIME.