Упаковка битов в байт

Тема в разделе "Микроконтроллеры AVR", создана пользователем Yerabdi, 24 окт 2020.

  1. SergeiL

    SergeiL Оракул Модератор

    Не, мне нравится, интересно. :)
    Так это известно, многие этим пользуемся лет так - 30, под Windows - 20.
    Нужно же как то развиваться. :)
     
  2. SergeiL

    SergeiL Оракул Модератор

    Все работает на ESP, Спасибо!
    sizeof() был 4, стал равен 3 после установки #pragma pack на 1.

    Да уж, подкинули тему, разбираюсь потихоньку в отпуске, между прогулками по Крыму.
    Си->С++ конечно эволюционировал за то время пока я был далек от этого...
     
  3. Asper Daffy

    Asper Daffy Иксперд

    Ну, да, для 32-битного процессора, обычно умолчание не 1.

    Удачи!
     
  4. SergeiL

    SergeiL Оракул Модератор

    Спасибо за пример, разобрался с примером до деталей - очень прикольно!!!
    Пока закомментировал структуру, иначе обязательно нужно правильно указывать (расписывать) количество элементов в структуре, иначе размер "битового массива" выбирается по тому что больше в union, указанному размеру битового массива с округление до большего или кол-ву эл. в структуре. Не знаю, может это можно как то обойти.
    В 1990-ых С++ как то не зашел, может доки не те были, может на Си можно было все сделать. Сейчас вечерами читаю - многое разъясняется.
    В 1997 перешел на абсолютно другую работу, и Си и МК, остались как личные интересы.
     
    Последнее редактирование: 11 ноя 2020