Страница 1 из 4 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 39

Тема: Симуляция не работает в 1.8.62: Object reference not set to an instance of an object

  1. #1

    По умолчанию Симуляция не работает в 1.8.62: Object reference not set to an instance of an object

    1.8.62.6638, ошибка Object reference not set to an instance of an object

    xorshift128_pr110.png

    Ошибка:
    Снимок экрана 2016-07-16 в 18.28.12.png

    Проект: xorshift128_pr110.owl
    Последний раз редактировалось Владимир Ситников; 16.07.2016 в 18:30.

  2. #2

    По умолчанию

    ПР110 работает только с 16 разрядными внутренними переменными. Это для начала.

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

    По умолчанию

    Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
    ПР110 работает только с 16 разрядными внутренними переменными. Это для начала.
    А что так ?Почему не 64 ,как то не универсально ...
    Можно правда на Пр200 перенести ,но тогда опять для каждой ПР свой RND ,опять не универсально ...А кто то говорил ,что математика везде должна работать ,хоть на счетах ,хоть на ПР ,хоть на ПК . Так всегда бывает ,когда не учитываешь ,то на чем ездить будешь..
    Последний раз редактировалось rovki; 18.07.2016 в 10:58.
    электронщик до мозга костей и не только

  4. #4

    По умолчанию

    Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
    ПР110 работает только с 16 разрядными внутренними переменными. Это для начала.
    Внутренние -- пусть какие угодно будут.
    А в документации на ОЛ ограничений в 16 разрядов нет.
    Про XOR/SHL, конечно, вообще ничего не сказано про разрядность, но в ADD явно сказано, что речь о 32 bit unsigned int.
    Как уж они представляются в процессоре -- меня не волнует. Главное, чтобы работали как 32 bit unsigned int.

  5. #5

    По умолчанию

    Цитата Сообщение от rovki Посмотреть сообщение
    А что так ?Почему не 64 ,как то не универсально ...
    Вы на ПР110 больше граблей знаете.
    Один стек чего стоит...
    Так всегда бывает ,когда не учитываешь ,то на чем ездить будешь..
    Отож.

  6. #6
    Евстигнеев Максим
    Гость

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    1.8.62.6638, ошибка Object reference not set to an instance of an object

    xorshift128_pr110.png

    Ошибка:
    Снимок экрана 2016-07-16 в 18.28.12.png

    Проект: xorshift128_pr110.owl
    Спасибо, Владимир. Проблема понятна. В следующей версии 1.8 внесем ловушку для отлова данной ошибки.

    Возвращаю Вам ваш проект с исправлением.
    Вложения Вложения

  7. #7

    По умолчанию

    Цитата Сообщение от Евстигнеев Максим Посмотреть сообщение
    Спасибо, Владимир. Проблема понятна. В следующей версии 1.8 внесем ловушку для отлова данной ошибки.

    Возвращаю Вам ваш проект с исправлением.
    Поправил 4-ую константу -- в симуляции значения совпадают с теми, что вычисляются в C.
    xorshift128_pr110_correct.owl

    value = 3701687786
    value = 458299110
    value = 2500872618
    value = 3633119408
    value = 516391518
    value = 2377269574
    и т.д.

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

    По умолчанию

    Ну и как теперь его потреблять ,мелькают одни миллионы ,миллиарды ,а мне надо 0-100...
    электронщик до мозга костей и не только

  9. #9

    По умолчанию

    Цитата Сообщение от rovki Посмотреть сообщение
    Ну и как теперь его потреблять ,мелькают одни миллионы ,миллиарды ,а мне надо 0-100...
    Если от 0 до 100, то достаточно поставить "остаток от деления на 101".
    Для больших диапазонов начнёт ощущаться неравномерность (в java в таких случаях вообще цикл используется)
    Например, если потребуется число в диапазоне 0..(230+1), то просто так считать остаток от деления на это самое 230+1 уже нехорошо.

    Т.е. либо использовать float'ы (ну, поделить на 232-1 и умножить на 100), либо остаток от деления.


    Для степеней двойки можно просто and делать -- будет равномерный выход. Например, and(..., 15) -- и на выходе равномерное распределение от 0 до 15-и включительно.
    Последний раз редактировалось Владимир Ситников; 18.07.2016 в 14:41.

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

    По умолчанию

    Ну так и надо доделать до конца как у AI,ряд от 0 до 2 в степени 30 на ПР ни кого не интересует ...
    ограничений по диапазону быть не должно -хоть 36 ,хоть 49 ...
    электронщик до мозга костей и не только

Страница 1 из 4 123 ... ПоследняяПоследняя

Похожие темы

  1. Симуляция не подключенных к выходу элементов
    от Владимир Ситников в разделе Среда программирования OWEN Logic
    Ответов: 7
    Последнее сообщение: 10.02.2016, 00:48
  2. не работает пр 110
    от Алексей87 в разделе Программируемые реле
    Ответов: 8
    Последнее сообщение: 30.04.2014, 13:46
  3. Симуляция в OwenLogic 1.6
    от UriyG в разделе Программируемые реле
    Ответов: 2
    Последнее сообщение: 17.09.2012, 22:52
  4. симуляция работы пид регулятора
    от Вячеслав В в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 17.07.2007, 09:37

Ваши права

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