Для реализации алгоритмов, пути в которых зависят от исходных данных, используют команды условной передачи управления.
## Пример
В качестве примера (несколько упрощенного по сравнению с заданиями лабораторной работы № 2) рассмотрим программу вычисления функции
```math
\begin{cases}
    (x-11)^2-125\ при\ x ≥ 16, \\
    \frac{x^2+72x-6400}{-168}\ при\ x < 16
\end{cases}
```
причем x вводится с устройства ввода IR, результат y выводится на OR.  
Граф-схема алгоритма решения задачи:  
![Граф-схема алгоритма решения задачи](../../Pictures/ЛБ04_01.%20Граф-схема%20алгоритма%20решения%20задачи.png)  
В данной лабораторной работе используются двухсловные команды с непосредственной адресацией, позволяющие оперировать отрицательными числами и числами по модулю, превышающие 999, в качестве непосредственного операнда.  
Оценив размер программы примерно в 20-25 команд, отведем для области данных ячейки ОЗУ, начиная с адреса 030. Составленная программа с комментариями представлена в виде таблицы.  

| Адрес | Мнемокод      | Код      | Примечание                        |
| ----- | ------------- | -------- | --------------------------------- |
| 000   | `IN`          | 01 0 000 | Ввод х                            |
| 001   | `WR 30`       | 22 0 030 | Размещение х в ОЗУ (ОЗО)          |
| 002   | `SUB #16`     | 24 1 016 | Сравнение с границей - (х-16)     |
| 003   | `JS 010`      | 13 0 010 | Переход по отрицательной разности |
| 004   | `RD 30`       | 21 0 030 | Вычисления по первой формуле      |
| 005   | `SUB #11`     | 24 1 011 |                                   |
| 006   | `WR 31`       | 22 0 031 |                                   |
| 007   | `MUL 31`      | 25 0 031 |                                   |
| 008   | `SUB #125`    | 24 1 125 |                                   |
| 009   | `JMP 020`     | 10 0 020 | Переход на вывод результата       |
| 010   | `RD 30`       | 21 0 030 | Вычисления по второй формуле      |
| 011   | `MUL 30`      | 25 0 030 |                                   |
| 012   | `WR 31`       | 22 0 031 |                                   |
| 013   | `RD 30`       | 21 0 030 |                                   |
| 014   | `MUL #72`     | 25 1 072 |                                   |
| 015   | `ADD 31`      | 23 0 031 |                                   |
| 016   | `ADI 106400`  | 43 0 000 |                                   |
| 017   |               | 10 6 400 |                                   |
| 018   | `DIVI 100168` | 46 0 000 |                                   |
| 019   |               | 10 0 168 |                                   |
| 020   | `OUT`         | 02 0 000 | Вывод результата                  |
| 021   | `HLT`         | 09 0 000 | Стоп                              |
## Задание
1. Разработать программу вычисления и вывода значения функции для вводимого из IR значения аргумента х:
```math
\begin{cases}
    F_i(x)\ при\ x ≥ a, \\
    F_j(x)\ при\ x < a
\end{cases}
```
2. Исходя из допустимых пределов изменения аргумента функций и значения параметра a для своего варианта задания выделить на числовой оси Ox области, в которых функция y вычисляется по представленной в п. 1 формуле, и недопустимые значения аргумента. На недопустимых значениях аргумента программа должна выдавать на OR максимальное по модулю отрицательное число: 199 999.
3. Ввести текст программы в окно Текст программы, при этом возможен набор и редактирование текста непосредственно в окне Текст программы или загрузка текста из файла, подготовленного в другом редакторе.
4. Ассемблировать текст программы, при необходимости исправить синтаксические ошибки.
5. Отладить программу. Для этого:
	- записать в IR значение аргумента x > a (в области допустимых значений);
	- записать в PC стартовый адрес программы;
	- проверить правильность выполнения программы (т. е. правильность результата и адреса останова) в автоматическом режиме. В случае наличия ошибки выполнить пп. 5, г и 5, д; иначе перейти к п. 5, е;
	- записать в PC стартовый адрес программы;
	- наблюдая выполнение программы в режиме Шаг, найти команду, являющуюся причиной ошибки; исправить ее; выполнить пп. 5, а — 5, в;
	- записать в IR значение аргумента x < a (в области допустимых значений); выполнить пп. 5, б и 5, в;
	- записать в IR недопустимое значение аргумента x и выполнить пп. 5, б и 5, в.
6. Для выбранного допустимого значения аргумента x наблюдать выполнение отлаженной программы в режиме Шаг и записать содержимое регистров ЭВМ перед выполнением каждой команды.
#### Вариант

| Номер варианта | i                            | j                            | a   |
| -------------- | ---------------------------- | ---------------------------- | --- |
| 12             | $\frac{8100}{x^2}$; $1≤x≤90$ | $\frac{x+17}{1-x}$; $2≤x≤12$ | 12  |
