himl_0008: типы данных реляционных операторов кода MATLAB

Идентификатор: Заголовокhiml_0008: MATLAB® типы данных реляционных операторов кода
Описание

Для кода MATLAB с реляционными операторами используйте совпадающий тип данных для левого и правого операндов.

ПримечаниеЕсли эти два операнда имеют различные типы данных, MATLAB будет продвигать оба операнда к общему типу данных. Это может привести к неожиданным результатам.
Объяснение
  • Предотвратите неявные отливки

  • Предотвратите неожиданные результаты

Проверки Model AdvisorПроверяйте использование реляционных операторов в блоках MATLAB function (Simulink Check)
Ссылки
  • DO-331, Section MB.6.3.1.g 'Алгоритмы точны'
    DO-331, Section MB.6.3.2.g 'Алгоритмы точны'

  • IEC 61508-3, Таблица A.3 (2) 'Сильно типизированный язык программирования "
    IEC 61508-3, Таблица A.3 (3) 'Подмножество языка "

  • МЭК 62304, 5.5.3 - Критерии приемки Модуля ПО

  • ISO 26262-6, таблица 1 (b) «Использование языковых подмножеств»
    ISO 26262-6, таблица 1 с) «Обеспечение соблюдения строгих типоразмеров »

  • EN 50128, таблица A.4 (8) 'Сильно типизированный язык программирования'
    EN 50128, таблица A.4 (11) 'Language Subset'

См. также
Последнее изменениеR2018b
Примеры

Рекомендуется

  • myBool == true
    myInt8 == int8(1) 
    

Не рекомендуется

  • myBool == 1
    myInt8 == true
    myInt8 == 1
    myInt8 == int16(1)
    myEnum1.EnumVal == int32(1)