Цитата(zltigo @ Nov 20 2015, 19:24)

Не хранит

. Ну и BREAK это вообще не к байту относится.
Навороченных UART, котрые хранят, вообще раз два и все

. Самое навороченным в этом плане был набортный у древного AM186CC. Впромем там и битов было сколько хошь, и поддержка адресации в старших битах. A 16550 это все тот-же 8250 к которому грубо FIFO только на данные прикрутили

.
Вот передо мной открыт юзер-мануал на LPC43xx страница UART. В заголовке его написано: "Register locations conform to ‘550 industry standard".
Далее, при описании регистра LSR вижу такие фразы:
"Note: A parity error is associated with the character at the top of the USART RBR FIFO."
Это же самое указано и для FE и для BREAK.
Если они, как пишут, реализовали у себя регистры x550, то вполне возможно, что и всю структуру FIFO тоже.
А почему в оригинальном 16550 не может быть так же?
Считываем LSR, если стоит бит0 - считываем вершину FIFO, после этого пара регистров LSR/RBR обновляется поднимающимся из FIFO следующим принятым символом с его статусными битами (символ - в RBR, статусы - в LSR).
Логично.