Помощь с набивкой битов. Ворота-CS Набор 3 2014

Протокол кадрирования на основе битового заполнения использует 8-битный шаблон разделителя 01111110. Если выходная битовая строка после заполнения равна 01111100101, то входная битовая строка равна

(A) 0111110100

(B) 0111110101

(C) 0111111101

(D) 0111111111

Дан правильный ответ: B.

Мой вопрос: почему 1 добавляется после пяти единиц слева, даже если разделитель имеет шесть непрерывных единиц.

Я думаю, что мы добавим 1 только тогда, когда получим шесть последовательных единиц, чтобы избежать 0.

Поправьте меня, если я ошибаюсь.


person BuggerNot    schedule 06.12.2015    source источник


Ответы (1)


Разделитель задан 01111110. Разделитель в основном используется для определения начала и конца кадра. Поэтому нам нужно убедиться, что тот же шаблон (01111110) также находится во фрейме данных, тогда получатель не будет думать о нем как о начале или конце фрейма, а как о действительной части данных. Вот почему после «011111» битов данных вставляется один бит «0», чтобы убедиться, что он не создает впечатление начала или конца кадра.

Когда приемник получает, он проверяет пять последовательных единиц, и если следующий бит равен нулю, он отбрасывает его (если следующий бит равен 1 вместо 0, тогда проверьте следующий бит этого бита, если он равен 0, то это ошибка разделителя). произошло). Это известно как вставка битов '0'.

person ViX28    schedule 26.09.2016