fk0, легенда (05.02.2020 23:44, просмотров: 439) ответил Evgeny_CD на HDLC нервно курит в части эффективности кодирования ->
Ты думаешь дураки HDLC изобретали? А я думаю, дураки те, кто не понимает, почему 0x7E. Потому, что если у тебя по-настоящему последовательный канал передачи данных, где не байты 8-битные атомарно идут, а отдельные биты, начиная с младшего и до старшего, то тебе нужна синхронизация не только на уровне нахождения первого байта пакета, но тебе ещё нужно вообще уметь находить нулевой бит этого байта, иначе когда все данные сдвинутся на 1..7 бит ничего уже не разберёшь. А когда данные идут непрерывным потоком (в том же RS232), то там старт и стоп-биты объединяются и не отличимы от любого другого бита. А в синхронных каналах вовсе нет старт-стоп битов. Просто поток и всё. И в этом потоке нужно начало кадра на БИТОВОМ уровне поймать. И HDLC это делает. Без всяких оговорок что у него будет в канале, чего не будет, что будут какие-то костыли и подпорки в аппаратуре -- ничего не нужно, работает само.
[ZX]