himl_0010: код MATLAB с логическими операторами и функциями

ID: Заголовокhiml_0010: код MATLAB® с логическими операторами и функциями
Описание

Для логических операторов и логических функций в коде MATLAB, используйте логические типы данных

Примечания

Логические операторы: &&, ||, ~

Логические функции: and, or, notxor

Объяснение
  • Предотвратите неожиданные результаты

Проверки Model AdvisorПроверяйте использование логических операторов и функций в блоках MATLAB function (Simulink Check)
Ссылки
  • IEC 61508-3, Таблица A.3 (2) 'Язык программирования со строгим контролем типов’
    IEC 61508-3, Таблица A.3 (3) 'Языковое подмножество'

  • IEC 62304, 5.5.3 - критерии допустимости Программного блока

  • ISO 26262-6, Таблица 1 (b) 'Использование языковых подмножеств'
    ISO 26262-6, Таблица 1 (c) 'Осуществление строгого контроля типов'

  • EN 50128, таблица A.4 (8) 'язык программирования со строгим контролем типов'
    EN 50128, таблица A.4 (11) 'языковое подмножество'

  • DO-331, Раздел MB.6.3.1.g 'Алгоритмы точен'
    DO-331, Раздел MB.6.3.2.g 'Алгоритмы точен'

В последний раз измененныйR2018b
Примеры

Рекомендуемый

  • ~myLogical
    (myInt8 > int8(4)) && myLogical
    xor(myLogical1,myLogical2)
    

Не рекомендуемый

  • ~myInt8
    myInt8 && myDouble