Клиппер 5. Справочник

нулевой бит после идущих подряд


    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-коды символов двух строк

Содержание раздела