нулевой бит после идущих подряд
ZEROINSERT().
Описание
Функция выполняет обратное ZEROINSERT() действие, удаляя каждый
нулевой бит после идущих подряд пяти единичных (ранее вставленных в
соответствии с рекомендацией МККТТ (CCITT)). Удаление битов сокращает
блок максимум на 20%.
Примеры
. Формирование кадра и его прием:
cFlag := CHR(CTON("01111110", 2)) // По рекомендации
// МККТТ
cData := "Это передаваемый текст"
CRC := COM_CRC(cData)
cBlock :=cData + SUBSTR(L2BIN(CRC), 1, 2) // Добавление CRC
// к информационной
// части кадра
cBlock := ZEROINSERT(cBlock)
cBlock := cFlag + cBlock + cFlag
* Здесь должна располагаться часть программы, осуществляющая передачу
* кадра
cData := REMALL(cFlag, cBlock) // Удаление флагов
cData := ZEROREMOVE(cData)
* Далее необходимо проверить CRC и т.д.
See Also: ZEROINSERT()
Введение в обработку строк
------------------------------------------------------------------------------
ADDASCII() Добавляет число к ASCII-коду каждого символа строки
AFTERATNUM() Возвращает остаток строки после искомого вхождения подстроки
ASCIISUM() Возвращает сумму ASCII-кодов всех символов строки
ASCPOS() Возвращает ASCII-код символа, находящегося в заданной позиции
ATADJUST() Выравнивает искомую подстроку по заданной позиции
ATNUM() Возвращает позицию начала искомой подстроки в строке
ATREPL() Заменяет искомую подстроку в строке на заданную
ATTOKEN() Возвращает позицию элемента в строке
BEFORATNUM() Возвращает часть строки перед искомым вхождением подстроки
CENTER() Центрирует и расширяет строку
CHARADD() Суммирует ASCII-коды символов двух строк