Для себя Помочь с решением + подготовка к защите домашки. Задача “Дамп RS232“ Программе на вход дается сжатый поток бит с шины RS232 (протокол UART). Необходимо выделить полезные данные, передаваемые при помощи данного протокола удалив служебные биты. Данный протокол определен в битах. Перед началом передачи каждого байта на шину выдается специальный старт-бит со значением 0. Затем передаются биты передаваемого байта в порядке LSB (least significant bit first - младшим битом вперед). Затем передается бит четности, дополняющий количество единиц в полезной нагрузке до нечетного. Согласно стандарту здесь должен быть еще стоп-бит, но мы его опустим для удобства. Драйвер шины записывает все биты с шины, включая служебные (старт и четности) битовым потоком. Этот битовый поток предоставлен вам на вход очевидно в виде байт. Приходящие биты в байтах расположены в порядке от старшего к младшему (первый пришедший бит с шины ложится в старший бит байта в дампе). ваша задача восстановить поток полезные данных удалив из него служебные биты Картинка с пояснением(вышлю в чат) Ввод вывод - файловый. Файлы - произвольные, бинарные. Формат входных данных Произвольный бинарный файл, путь до которого передается в argv[1]. Байты данного файла явлются дампом с шины в описанном выше формате Формат результата Такой же прозвольный бинарный файл, путь до которого передается в argv[2]. Если вдруг в argv не присутсвует нужное количество аргументов, программа должна ничего не делать и завершиться с кодом 1. Если возникают проблемы с входным или выходным файлом - программа должна ничего не делать и завершиться с кодом 2 В случае, если программе не хватает доступного объема оперативной памяти, программа выводит “out of memory“ и возвращает ОС код 3. Примечания Программа должна корректно освобождать все занимаемые ресурсы перед выходом в случае любых ошибок. Это значит, что если вы делаете malloc, нужно обязательно делать free, для всех выделенных блоков. Можно использовать valgrind для проверок и я буду этим пользоваться. Выбирается в настройках языка при сдаче задачи. Valgrind это инструмент, предназначенный для поиска утечек памяти и прочих ошибок при работе с памятью. Тестовые файлы здесь бинарные. Во вложении набор тестов Примеров не будет, так как все бинарное.