next up previous contents
След.: Работа с битами Выше: Битовые функции Пред.: Подсчет битов   Содержание

Установка битов

MASKL(I[,KIND]), MASKR -- возвращают целое число (заданной разновидности типа, если указан параметр KIND), у которого, первые I бит, соответственно слева и справа, равны $ 1$ , а остальные -- 0 . Например, MASKR(3) возвращает $ 7$ .

MERGE_BITS(I,J,MASK) -- аналогична функции MERGE для массивов (§13.5.4). Каждый бит результата равен соответствующему биту I, если соответствующий бит маски равен 1, и биту J в противном случае. Пример: MERGE_BITS(13,18,22) возвращает $ 4$ .

IBCLR(I,POS) и IBSET -- соответственно, обнуляет или ставит в единицу бит аргумента I в позиции POS. Остальные биты результата совпадают с битами аргумента.

MVBITS(FROM,FROMPOS,LEN,TO,TOPOS) -- копирует последовательность битов. Это поэлементная подпрограмма. Все аргументы, кроме TO, входящие. LEN битов аргумента TO, начиная с позиции TOPOS, устанавливаются равными битам аргумента FROM, начиная с позиции FROMPOS. Остальные биты TO не меняются.



Ilya A. Chernov 2012-12-19
X