Показано с 1 по 10 из 32

Тема: Работа с массивами

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    10.05.2011
    Адрес
    Харьков
    Сообщений
    21

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Если бы dwDist и dwCount присваивались константы, то конечно, но на их вход подаются функции о которых я писал, выходит что участвуют.
    Это, извините, отмазка . Никто вам не запрещает присваивать этим параметрам константы, особенно параметру dwCount.
    Цитата Сообщение от capzap Посмотреть сообщение
    В любом случае, даже если это не так, циклы всеравно существуют
    Согласен, ведь процессор 32-разрядный и за один такт оперирует всего 4-мя байтами . Думаю в процессоре существуют аппаратные средства для копирования блоков памяти, обращение к которым осуществляется через инструкции процессора, доступ к которым в CodeSys реализован через обсуждаемую библиотеку. Например, тот же самый DMA.

    Цитата Сообщение от Логвиненко Андрей Посмотреть сообщение
    Все зависит от оптимальности кода, сгенерированого компилятором.
    Чесно говоря, не вижу, как можно оптимизировать один простой цикл так, чтобы увеличить производительность на несколько порядков.

  2. #2
    Пользователь
    Регистрация
    10.05.2011
    Адрес
    Харьков
    Сообщений
    21

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Опаньки ...


    Спор ни о чем. Вычислите адрес массива один раз при старте контроллера и используйте эту переменную. Почти константа.

    Вот описание процессора используемого в овене. Если есть желание, можете поискать что-нибудь про копирование блоков памяти.

    Вечером выложу свои результаты тестов SysMemLib.

Ваши права

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