Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Оператор проверки логического выражения (If Then.)

Читайте также:
  1. II. Группировка месторождений по сложности геологического строения для целей разведки
  2. III. Изучение геологического строения месторождений и вещественного состава руд
  3. IV НОРМИ І ВИМОГИ ОХОРОНИ ПРАЦІ НА РОБОЧОМУ МІСЦІ ОПЕРАТОРА КОМП'ЮТЕРНОГО НАБОРУ
  4. АКТ ПРОВЕРКИ № 1
  5. Алгебраические выражения
  6. АНАЛИЗ СУЩЕСТВУЮЩЕГО ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА
  7. Арифметические операторы

Оператор If Then содержит список операторов, выполняемых в том случае, если булевское выражение, расположенное между ключевыми словами IF и THEN, принимает истинное значение.

Следующий пример демонстрирует использование оператора If Then:

 

IF a[] == b[] THEN

c[8..1] = H "77";

addr[3..1] = f[3..1].q;

f[].d = addr[] + 1;

ELSIF g3 $ g4 THEN

f[].d = addr[];

ELSE

d = VCC;

END IF;

 

Оператор If Then имеет следующие характеристики:

¨ Между ключевыми словами IF и THEN располагается булевское выражение, в зависимости от значения которого выполняется или не выполняется список операторов, располагающийся за ключевым словом THEN. Каждый оператор в этом списке оканчивается символом (;).

¨ Между ключевыми словами ELSEIF и THEN располагается дополнительное булевское выражение а за ключевым словом THEN также располагается список операторов, выполняемых в зависимости от значения булевского выражения. Эти необязательные ключевые слова и операторы могут повторяться многократно.

¨ Оператор(ы), следующий за ключевым словом THEN, активизируется в том случае, если соответствующее ему булевское выражение принимает истинное значение. При этом последующие конструкции ELSEIF THEN игнорируются.

¨ Ключевое слово ELSE, за которым следует один или более операторов, схоже по своему значению с ключевыми словами WHEN OTHERS в операторе Case. Если ни одно из булевских выражений не приняло истинное значение, то выполняются операторы, следующие за ключевым словом ELSE. В примере, показанном выше, если ни одно из булевских выражений не приняло истинного значения, то выполняется оператор d = VCC. Использование ключевого слова ELSE не является обязательным.

¨ Значения булевских выражений, следующих за ключевыми словами IF и ELSEIF оцениваются последовательно.

¨ Оператор If Then заканчивается ключевыми словами END IF за которыми следует символ (;).

Оператор If Then может генерировать логические схемы, которые слишком сложны для компилятора. Если оператор If Then содержит сложные булевские выражения, то учет инверсии каждого из этих выражений вероятно приведет к еще более сложным булевским выражениям. Например, если a и b сложные выражения, то инверсия этих выражений может быть еще более сложной.

 

Оператор If: Интерпретация компилятором:

IF a THEN IF a THEN

c = d; c = d;

END IF;

ELSIF b THEN IF!a & b THEN

c = e; c = e;

END IF;

ELSE IF!a &!b THEN

c = f; c = f;

END IF; END IF;

 

ÞВ отличие от операторов If Then, которые могут оценивать лишь значения булевских выражений, операторы If Generate могут оценивать значения наборов арифметических выражений. Основное различие между операторами If Then и If Generate состоит в том, что в первом случае значение булевского выражения оценивается аппаратным способом (в кремнии), а во втором случае значение набора арифметических выражений оценивается на этапе компиляции.


Дата добавления: 2015-08-21; просмотров: 55 | Нарушение авторских прав


Читайте в этой же книге: Диапазоны и поддиапазоны шин | Арифметические операторы | Массивы примитивов | Мегафункции и библиотеки параметризуемых модулей | Определение включаемого текста (оператор Include) | Определение параметров (оператор Parameters) | Определение прототипов логических функций (оператор Function Prototype). | Определение порядка следования битов (оператор Options) | Объявление объектов (Instance Declarations) | Объявление конечных автоматов (State Machine Declarations) |
<== предыдущая страница | следующая страница ==>
Задание исходных значений (Defaults Statment)| Использование ссылок на прототипы функций (In-Line Logic Function Reference)

mybiblioteka.su - 2015-2024 год. (0.006 сек.)