Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/34: Рейтинг темы: голосов - 34, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 30.06.2021
Сообщений: 24

Разбить файл на биты MFC

09.07.2021, 13:25. Показов 6605. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Файл записан в 16-ричном виде ( 28 0B 29 AA C8 FF FF FF 7F 87 9B 6D 75 79 B9 C6), 16 байтов в каждом по 8 бит - это соответствует картинке размером 8х16, так вот, мне нужно прочитать этот файл и разложить его, так чтобы в буфере остался двоичный код. Подскажите, как это можно сделать максимально простым способом?

Добавлено через 3 часа 36 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    for (ii=0; ii<16; ii++)
        {
          for (i=0; i<8; i++)
          {
                 
                        
              for( fd=0;fd<7; fd++)
                        {
                            bit=(buff[m]>>fd & 1);
                            if(bit == 0)
                            
                            Color=RGB (0, 0, 0);
                            
                      else  // иначе
                      Color=RGB (1000, 1000, 1000);
                        
          
          
                SetPixel(dc,i,ii,Color); // рисуем каждый
                  m++;
Я думаю, такая тема должна сработать, но переменная i не меняется, пока цикл
C++
1
 for( fd=0;fd<7; fd++)
не пройдет полностью. Как сделать, чтобы i изменялась после каждого круга?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.07.2021, 13:25
Ответы с готовыми решениями:

Разбить файл на биты
Каким образом осуществить разбиение файла на биты, а потом ещё его желательно будет и собрать. Пока, собственно вопроса по коду нету,...

Как разбить бинарный файл на младшие и старшие биты
Сабж собственнно. Есть бинарный файл(.BIN) Весит он 1024 байта. Его каким-то образом разбивают(split) на два файла - 960(старшие...

Разбить текст на биты
как разбить текст на биты и если очередной бит информации, которую хотим написать равен единице, то в тексте удвоить пробел между словами в...

4
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
09.07.2021, 13:49
Лучший ответ Сообщение было отмечено Shpork как решение

Решение

Shpork, может, как-то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
    for (int x = 0; x < 16; x++)
    {
        for (int y = 0; y < 8; y++)
        {
            if (((buff[x] >> y) & 1) == 0)
                Color = RGB (0, 0, 0);
            else  // иначе
                Color = RGB (1000, 1000, 1000);
 
            SetPixel(dc, x, y, Color); // рисуем каждый
        }
    }
1
1 / 1 / 0
Регистрация: 30.06.2021
Сообщений: 24
09.07.2021, 13:52  [ТС]
Да, работает, спасибо
0
фрилансер
 Аватар для Алексей1153
6462 / 5670 / 1131
Регистрация: 11.10.2019
Сообщений: 15,097
09.07.2021, 13:53
Цитата Сообщение от Shpork Посмотреть сообщение
RGB (1000, 1000, 1000)
аргументы RGB могут принимать значение от 0 до 255
0
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
09.07.2021, 14:00
Цитата Сообщение от Алексей1153 Посмотреть сообщение
аргументы RGB могут принимать значение от 0 до 255
Это так
Отработает, как остаток от деления на 256, т.е. 232
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.07.2021, 14:00
Помогаю со студенческими работами здесь

В каждом байте числа обнулить 0-ой и 7-ой биты и сделать единичными 3-ий и 4-ый биты
Надо: Прочитать беззнаковое целое число из стандартного потока ввода и в каждом байте числа обнулить нулевой и седьмой биты и сделать...

Ввести целое число A. Инвертировать все биты с 4 по 8, включая эти биты. Вывести результат
нужна помощь в битовых операциях.Ввести целое число A. Инвертировать все биты с 4 по 8, включая эти биты. Вывести результат.

Ввести целое число A. Инвертировать все биты со 2 по 14, включая эти биты. Вывести результат
Помогите, сколько не пробовал, не получается. Ввести целое число A. Инвертировать все биты со 2 по 14, включая эти биты. Вывести результат.

Используя битовые операции поменять местами в них четные биты второго числа на нечетные биты первого
Написать программу, которая позволит ввести два числа типа unsigned int с клавиатуры, напечатать их на консоли, используя битовые...

Инвертировать все биты с 2 по 14 включая эти биты
Ввести целое A. Инвертировать все биты с 2 по 14 включая эти биты. Вывести полученное число Помогите,пожалуйста,ничего не понимаю в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru