Показано с 1 по 4 из 4

Тема: Размер структуры (типа данных)

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Добрый день!

    Действительно, выделение памяти в ПЛК для структур происходит строго с шагом в 4 байта.
    Как было уже указано выше, это происходит из-за выравнивания памяти в контроллере.

    При выравнивании учитывается выделяемая память под конкретную переменную и переменные, находящиеся выше. Если две переменные по суммарному объему занимают более 4 байт – происходит выравнивание и вторая переменная переопределяется в следующих 4 байтах.
    Работает это следующим образом:
    Размер структуры 1.PNG
    Поэтому для более эффективного использования памяти контроллера, необходимо учитывать выравнивание и группировать переменные по типу данных при объявлении в структуре.
    Ниже приведена оптимизация вышеупомянутого примера:
    Размер структуры 2.PNG
    Таким образом память, выделяемая под структуру, уменьшилась с 16 байт, до 12 байт.
    Последний раз редактировалось Осинский Алексей; 08.11.2017 в 10:21.

Похожие темы

  1. ТРМ133М и считывание типа данных Parpoint
    от Aleksey Belokon в разделе Эксплуатация
    Ответов: 2
    Последнее сообщение: 18.12.2018, 11:51
  2. Ответов: 0
    Последнее сообщение: 31.03.2017, 19:51
  3. Что значит ошибка "Размер поля данных не соответствует ожидаемому"
    от Сергей_Тула в разделе Помощь Разработчикам
    Ответов: 7
    Последнее сообщение: 14.02.2007, 11:38

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •