Страница 18 из 25 ПерваяПервая ... 81617181920 ... ПоследняяПоследняя
Показано с 171 по 180 из 245

Тема: Критическая ошибка в среде программирования Овен ЛОДЖИК или это я д-ак

  1. #171
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,150

    По умолчанию

    Выполняется последовательно ,но в одном цикле .Если поставить задержку .ТО получим в одном цикле одно значение ,а во втором другое .Например возьмите сравнение на равенство и подайте одно число(переменную) на два входа ,причем один вход сделайте задержку - получите формирователь импульса при смене числа .Не поставите задержку -будет всегда 1 . Элемент один ,переменная одна ,а линии связи разные и результат разный .
    электронщик до мозга костей и не только

  2. #172

    По умолчанию

    Цитата Сообщение от rovki Посмотреть сообщение
    Стек это внутренний механизм обработки схемы по всем выходам с обратными связями (в том числе когда одни выходы участвуют в формировании других) .Чем больше ОС тем глубже заполняется стек ..Раньше он был 6 ,потом 15 ,а потом динамическим ...
    Ну зачем запутывать люд честной?

    Стек нужен для хранения промежуточных значений.
    Про "обратную польская запись" слышали?

    На Wikipedia есть пример как на стековой машине вычислять выражения.


    Переводя с русского на русский, стек нужен не только для "линий задержки"/"обратных связей", а вообще для всех выражений.

    При этом ОЛ не оптимизирует использование стека, и получается, что в зависимости от способа записи (от схемы) получается разное использование стека.

  3. #173
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    13,001

    По умолчанию

    всю жизнь считал, что стек работает иначе. Первым записали - последним считали, последним записали - первым считали. А тут в ОЛ какой-то огород получился, а не стек.
    Скорее всего так обозвали, слово красивое наверное

  4. #174
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,552

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Ну так вот вопрос по оптимизации, если в участке схемы нет обратных связей, ни прямых, ни явных, зачем данный участок класть в стек ? все и так выполнится последовательно.
    Вот как раз к вопросу о последовательности. Я показал, что вся схема вычисляется слева на право и сверху в низ. Для левой картинки сколько промежуточных вычислений нужно держать в памяти пока получится результат? А вот для правой схемы только одно промежуточное значение.

  5. #175
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,552

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    Ну зачем запутывать люд честной?

    Стек нужен для хранения промежуточных значений.
    Про "обратную польская запись" слышали?

    На Wikipedia есть пример как на стековой машине вычислять выражения.


    Переводя с русского на русский, стек нужен не только для "линий задержки"/"обратных связей", а вообще для всех выражений.

    При этом ОЛ не оптимизирует использование стека, и получается, что в зависимости от способа записи (от схемы) получается разное использование стека.
    Вот поэтому для левой картинки в стек нужно поместить сразу все переменные, а в правой вычислять только две.

  6. #176

    По умолчанию

    Цитата Сообщение от Василий Кашуба Посмотреть сообщение
    Вот поэтому для левой картинки в стек нужно поместить сразу все переменные, а в правой вычислять только две.
    И? На результате это не должно сказываться.
    Моё утверждение в том, что от перестановки местами входов XOR результат не должен изменяться (само результирующее значение должно сохраняться).

    То, что стек используется по-разному -- не должно играть роли.

  7. #177
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,438

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    всю жизнь считал, что стек работает иначе. Первым записали - последним считали, последним записали - первым считали. А тут в ОЛ какой-то огород получился, а не стек.
    Скорее всего так обозвали, слово красивое наверное
    Может Алексея Толстого читали, помните про гиперболоид, он прекрасно понимал, что правильно назвать параболоид, но так назвал, потому что "звучит"!
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  8. #178

    По умолчанию

    Цитата Сообщение от Василий Кашуба Посмотреть сообщение
    Вот поэтому для левой картинки в стек нужно поместить сразу все переменные, а в правой вычислять только две.
    Это если бы каждый раз считали "от выхода к входу".
    А считают "от входа к выходу".
    Т.е., в обоих случаях, вначале стек заполняется значениями входов, но в разном порядке (для левой 8,7,6,5,4,3,2,1, для правой наоборот) а потом идут операции and,and,and....
    При and, впринципе, можно прервать вычисление такой цепочки, получив первый раз false. А при or/xor нельзя, и всёравно придётся прокрутить весь стек.
    Будет оптимизация, если проверять каждый результат и пытаться прерваться? Нет. Не будет. Потому, что проверка - это лишняя команда и цикл процессора. И в среднем, при всех возможных состояниях входов может и не получиться прироста быстродействия. К тому же, при компиляции нужно уметь находить такие выражения и каждый раз вставлять для них новый код.
    При одном элементе (баг, который я показывал) вообще нет смысла говорить про "порядок действий". Да и видно, что баг образовался не в коде самого лог.элемента, а ещё на входе.

  9. #179
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,552

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    И? На результате это не должно сказываться.
    Моё утверждение в том, что от перестановки местами входов XOR результат не должен изменяться (само результирующее значение должно сохраняться).

    То, что стек используется по-разному -- не должно играть роли.
    А где я написал что результат на выходе разный?

  10. #180

    По умолчанию

    Цитата Сообщение от pop70 Посмотреть сообщение
    Это если бы каждый раз считали "от выхода к входу".
    А считают "от входа к выходу".
    Тут у вас неточность, т.к. входа вообще может не быть. Иными словами, если блок подключить только к выходу, то он всё равно будет работать, а, если блок подключить только ко входу, то работать не будет.
    Значит, работают "от выхода".

    Цитата Сообщение от pop70 Посмотреть сообщение
    Т.е., в обоих случаях, вначале стек заполняется значениями входов, но в разном порядке (для левой 8,7,6,5,4,3,2,1, для правой наоборот) а потом идут операции and,and,and....
    Вряд ли.

    Скорее всего, в одном случае последовательность такая (стек используется на 2 элемента максимум, т.к. они сразу обрабатываются):
    Код:
    push in1 # Стек: in1
    push in2 # Стек: in2, in1
    and # берёт 2 элемента со стека, выполняет and, кладёт на стек результат
    push in3 # Стек: in3, результат AND(in1, in2)
    and # Стек: результат AND(in1, in2, in3)
    push n4
    and
    push n5
    and
    ...
    А в другом -- такая (сначала всё забиваем в стек, а потом вычисляем):
    Код:
    push in1 # Стек: in1
    push in2 # Стек: in2, in1
    push in3 # Стек: in3, in2, in1
    push in4 # Стек: in4, in3, in2, in1 <-- потребление стека растёт, а вычислений пока не происходит
    ...
    and
    and
    and
    and
    ..


    А дальше у вас верный вывод:
    Цитата Сообщение от pop70 Посмотреть сообщение
    Будет оптимизация, если проверять ...

Страница 18 из 25 ПерваяПервая ... 81617181920 ... ПоследняяПоследняя

Похожие темы

  1. Два вопроса по ОВЕН-Лоджик.
    от Sargon в разделе Среда программирования OWEN Logic
    Ответов: 33
    Последнее сообщение: 06.02.2017, 15:45
  2. ФИЧИ И БАГИ ОВЕН ЛОДЖИК
    от rovki в разделе Программируемые реле
    Ответов: 649
    Последнее сообщение: 29.07.2016, 10:33
  3. Универсальные макросы для ОВЕН ЛОДЖИК
    от rovki в разделе Программируемые реле
    Ответов: 197
    Последнее сообщение: 28.06.2016, 09:53
  4. Пожелания по развитию овен лоджик
    от rovki в разделе Программируемые реле
    Ответов: 146
    Последнее сообщение: 25.04.2013, 22:47
  5. Драйвер для ОВЕН ТРМ210 в среде LabVIEW
    от tzpp в разделе Помощь Разработчикам
    Ответов: 3
    Последнее сообщение: 16.02.2010, 13:06

Ваши права

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