Шаг 117.
Управляющие структуры языка С. Конструкция If
На этом шаге мы рассмотрим представление различных конструкций If.
Начиная с этого шага мы рассмотрим некоторые управляющие структуры языка С и их отображение в язык ассемблера.
- Неполная условная конструкция.
if (простое условие)
{
. . . .
}
если условие простое, например, i == 1, то оно заменяется следующей последовательностью
СМР ЕАХ,1
JNZ L1
. . . .
L1:
- Полная условная конструкция.
if (простое условие)
{
. . . .
}
else
{
. . . .
}
CMP ЕАХ,1
JNZ L1
. . . .
JMP L2
L1:
. . . .
L2:
- Вложенные условные конструкции. Здесь все достаточно очевидно:
СМР ЕАХ,1
JNZ L1
СМР ЕВХ,2
JNZ L1
. . . .
L1:
Что, конечно, равносильно одному составному условию, связанному союзом "И". Союз "ИЛИ", как известно,
заменяется проверкой условий в блоке "ELSE".
На следующем шаге мы рассмотрим оператор выбора.
Предыдущий шаг
Содержание
Следующий шаг