22 lines
1.3 KiB
Markdown
22 lines
1.3 KiB
Markdown
#### Зависимость по управлению.
|
|
|
|
Определяют порядок инструкции с учетом инструкций перехода.
|
|
|
|
Каждая инструкция в программе кроме тех, которые находятся в самом первом базовом блоке программы, зависима по управлению от некоторого множества переходов.
|
|
|
|
Инструкцию, зависимую по управлению от перехода нельзя переместить перед переходом так, что ее исполнение более не будет управляться переходом.
|
|
|
|
Инструкцию, не зависимую по управлению от перехода нельзя переместить так, что ее исполнение будет управляться переходом (в часть then).
|
|
|
|
В некоторых случаях возможно обойти эти ограничения и сохранить корректное исполнение.
|
|
|
|
**Пример зависимости:**
|
|
```c
|
|
if p1 {
|
|
s1; // s1 зависима по управлению от p1
|
|
}
|
|
|
|
if p2 {
|
|
s2; // s2 зависима по управлению от p2, но не от p1
|
|
}
|
|
``` |