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

Тема: Помогите новичку

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,851

    По умолчанию

    Не знаю как там в GMWIN.
    В Кодесис без использования указателей вычисление в соответствии с этим описанием
    Захват-2.png
    Код:
    PROGRAM PLC_PRG
    VAR
        ARY_WORD: ARRAY [0..1] OF WORD:=16#4401,16#42E0; (*Данные в виде массива*)
        epo: INT; (*Порядок*)
        mant: DINT; (*Мантисса*)
        factor: REAL; (*Знак*)
        ARY_WORD_TO_FLOAT: REAL; (*Результат*)
    END_VAR
    
    IF ARY_WORD[0]>32768  THEN
    factor:=factor:=-1.0;
    ELSE
    factor:=factor:=1.0;
    END_IF
    epo:=SHR((16#7F80 AND ARY_WORD[0]),7) - 127; (*Для вычисления показателя степени из восьмиразрядного поля порядка вычитается смещение порядка равное 127*)
    
    mant:=WORD_TO_DINT(16#7F AND ARY_WORD[0])*65536 + WORD_TO_DINT(ARY_WORD[1]); (*Собираем мантиссу из частей*)
    mant:=mant+16#800000; (*Для вычисления мантиссы к единице добавляется дробная часть мантиссы из 23-х разрядного поля дробной части мантиссы*)
    
    ARY_WORD_TO_FLOAT:=factor*DINT_TO_REAL(mant)/EXPT(2,23-epo); (*Число равно произведению мантиссы со знаком на двойку в степени порядка*)
    Можно оформить в виде функции.
    Пример с Вашими данными
    Захват-10.png
    Последний раз редактировалось petera; 02.04.2016 в 22:09.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Похожие темы

  1. помогите новичку
    от алексей7676 в разделе ПЛК63/73
    Ответов: 1
    Последнее сообщение: 15.08.2015, 13:44
  2. Помогите новичку))))
    от Витек в разделе ПЛК1хх
    Ответов: 11
    Последнее сообщение: 28.02.2014, 19:40
  3. Помогите новичку
    от mixa kuban в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 10.05.2012, 20:32
  4. Помогите новичку
    от RAzov112 в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 18.02.2011, 09:25
  5. помогите новичку
    от al_vl_sher в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 15.03.2010, 11:46

Ваши права

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