|
2 / 2 / 2
Регистрация: 16.04.2013
Сообщений: 15
|
|||||||||||
Считывание бинарного файла в виде нулей и единиц16.04.2013, 10:30. Показов 14916. Ответов 12
Метки нет (Все метки)
Всем привет.
Необходимо реализовать помехоустойчивое кодирование для файла(код Хэмминга, если быть точным). Для этого мне необходимо каждый байт входного файла рассматривать в виде последовательности бит и иметь доступ к каждому биту. Сам алгоритм кодирования для текстовых файлов реализовал без проблем(каждый считываемый символ приводил к нужному виду с помощью
Суть проблемы:
Буду рад любой помощи.
0
|
|||||||||||
| 16.04.2013, 10:30 | |
|
Ответы с готовыми решениями:
12
Перевод бинарного изображения в массив из нулей и единиц Дана строка, состоящая из групп нулей и единиц. Посчитать количество нулей и единиц |
|
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
|
| 16.04.2013, 12:02 | |
|
А в чём проблема? Любой из указанных символов можно записать с помощью его кода.
Например '\r' это то же самое, что '\x0d' 'PNG' можно записать как '\x50\x4e\x47' Не важно как представлен символ, функция ord() всё равно вернёт его числовой код.
0
|
|
|
2 / 2 / 2
Регистрация: 16.04.2013
Сообщений: 15
|
|
| 16.04.2013, 12:09 [ТС] | |
|
Тогда такое уточнение:
Чтобы получить код каждого символа, мне нужно "\x25" передать одной функции, а "PNG" - другой, как это сделать с наименьшими потерями? Нужно же распарсить всю эту строку и то, что попадает под шаблон "\x**" - в одну сторону, что нет - в другую?
0
|
|
|
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 16.04.2013, 12:30 | ||||||
|
Нет. Все четыре указанных символа хранятся в памяти в виде числовых кодов. Это отображение на экране у них разное.
0b100101 0b1010000 0b1001110 0b1000111
1
|
||||||
|
2 / 2 / 2
Регистрация: 16.04.2013
Сообщений: 15
|
|
| 16.04.2013, 12:37 [ТС] | |
|
Спасибо большое, буду пробовать
0
|
|
|
2 / 2 / 2
Регистрация: 16.04.2013
Сообщений: 15
|
||||||
| 23.04.2013, 01:24 [ТС] | ||||||
|
Столкнулся с новой проблемой:
формирую нужную мне для записи строку, записываю в бинарном режиме в файл, вижу, что записывается 1276 байт(столько, сколько и должно), но размер файла на выходе = 1902 байта, соответственно, он не открывается так, как должен.
Добавлено через 21 час 44 минуты Ребят, неужели никто ничем не может помочь?
0
|
||||||
|
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 23.04.2013, 01:41 | ||||||
|
Так вроде ничего удивительного:
0
|
||||||
|
2 / 2 / 2
Регистрация: 16.04.2013
Сообщений: 15
|
|
| 23.04.2013, 03:02 [ТС] | |
|
Это понятно.
Собственно, глобальный вопрос в том, как считать файл(не текстовый), а потом, грубо говоря, записать его в первозданном виде, чтобы, если это png - он открывался как png, если mp3 - как mp3 и т.д. Считывание работает идеально, все преобразования, нужные мне, так же работают, как в одну, так и в другую сторону. Но вот с тем, чтобы записать файл в том же исходном виде назад - проблема. Пробовал тот метод, который привел выше - он работает не так, как надо, откуда-то берутся лигние байты. Кто-нибудь может подсказать работающий метод? Или объяснить, что не так в этом?
0
|
|
|
224 / 209 / 63
Регистрация: 26.05.2011
Сообщений: 363
|
||||||||||||
| 23.04.2013, 04:45 | ||||||||||||
1
|
||||||||||||
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||||
| 23.04.2013, 05:41 | ||||||||
0
|
||||||||
|
224 / 209 / 63
Регистрация: 26.05.2011
Сообщений: 363
|
|||||||
| 23.04.2013, 10:34 | |||||||
![]()
0
|
|||||||
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|||||||
| 23.04.2013, 14:36 | |||||||
0
|
|||||||
|
2 / 2 / 2
Регистрация: 16.04.2013
Сообщений: 15
|
|
| 24.04.2013, 02:25 [ТС] | |
|
0
|
|
| 24.04.2013, 02:25 | |
|
Помогаю со студенческими работами здесь
13
Дана строка, состоящая из групп нулей и единиц. Посчитать количество нулей и единиц
Считывание из бинарного файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|