Условный оператор if-else используется для принятия решения о дальнейшем пути исполнения программы. Синтаксис условного оператора в нотации языков С и C++: if (выражение) оператор_l; else оператор_2 Алгоритм работы условного оператора — вычисляется логическое значение выражения: если оно истинно, то выполняется оператор_1, в противном случае — оператор_2. В общем случае условный оператор может состоять из одного блока if (без бло- ка else): if (выражение) оператор_l; В программе на ассемблере данные варианты условного оператора можно реа- лизовать следующим образом: ;короткий вариант оператора if (выражение) оператор_1; сmр орl,ор2 ;вычисление выражения jпе епdif ;... ;последовательность команд, соответствующая оператор_l end i f: ;конец короткого условного оператора . Строго говоря, использование команды СМР при реализации условного оператора не является обязательным. В данном случае она скорее обозначает место вычисления некоторого условия в программе, по результатам которого принимается решение о ветвлении. Вместо данной команды можно использовать любую команду, изменя- ющую флаг, который будет анализироваться последующим оператором условного перехода. Эти же рассуждения касаются и команды JNE, вместо которой может сто- ять требуемая в данном вычислительном контексте команда условного перехода: ;полный вариант оператора if (выражение) оператор_l; else оператор_2 сmр орl,ор2 ;вычисление выражения jпе еlsеl ;... ;последовательность команд, соответствующая оператор_1 jmр end if elsel: ;... последовательность команд, соответствующая оператор_2 епdif: ;конец полного условного оператора Остается лишь добавить, что приведенные ранее рассуждения о командах СМР и ЗNЕ соответствуют также полной форме оператора if.