SETBIT - запись одного бита в целое число
Назначение.
Функция SETBIT() перезаписывает один бит в 32-битном целочисленном значении.
Входные параметры.
-
in1 - тип данных BOOLEAN (значение записываемого бита).
-
in2 - тип данных INTEGER (смещение в битах), значение в диапазоне [0 .. 31].
-
in3 - тип данных INTEGER (значение переменной до записи бита).
Выходной параметр.
-
out - тип данных INTEGER (значение переменной после записи бита). Если in2<0 или in2>31, выход out=in3.
Описание алгоритма.
В 32-битном целом числе in3 значение бита с порядковым номером in2 будет заменено на значение in1, результат передается на выход out в виде целого числа. Значения других битов в числе in3 не изменяются.
Описание синтаксиса.
|
На языке ST
|
На языках FBD/LD
|
|
out := SETBIT(in1, in2, in3)
|
![]() |
|
Примеры:
SETBIT(false, 9, 2024); //out = 1512
SETBIT(true, 11, 2024); //out = 4072
SETBIT(true, 33, 2024); //out = 2024
SETBIT(true, -1, 2024); //out = 2024
|
Примеры:
![]() ![]() |



