ADDR
В
Код операції: ( для переходу щодо PC)
47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24
000
00111
в
А
COND
J
CI
23
22
21
20
19
18
17
16
15
14 13 12
11
10
9
8
7
6
5
4
3
2
1
0
RELADDR
COND визначає умову для перевірки. Якщо в команді не визначено ніякого умови, то COND є умовою TRUE, і команда виконується завжди. У вибирає тип переходу - перехід або виклик. J визначає, затриманий перехід чи ні. Поле адреси ADDR визначає 24-розрядний адреса пам'яті програми. RELADDR - Це 24-розрядне число у вигляді двійкового доповнення, яке додається до поточному значенню PC для генерації адреси переходу. Біт А активізує переривання циклу. CI активізує очищення переривання. (Для викликів CI і А ігноруються)
Непрямий (або відносно PC) перехід/виклик, необов'язкова умова, необов'язкова операція обчислення
Функція:
Перехід чи виклик за адресою, що визначається перед-модифікованим значенням регістра I, або по адресою щодо PC. Адресу щодо PC - це 6-розрядне число у вигляді двійкового доповнення. Якщо регістр I визначений, то він модифікується певним значенням регістра М для генерації адреси переходу. На вміст регістра I операція модифікації не впливає. p> Перехід чи виклик виконується, якщо задана умова вірно. Якщо операція обчислення визначена без ELSE, то вона виконується паралельно з викликом або переходом. Якщо операція обчислення визначена з ELSE, то вона виконується, тільки якщо задане умова помилково. Зауважимо, що умова має бути задане, якщо визначена фраза ELSE обчислення.
Перехід чи виклик за певною адресою або адресою щодо PC. Адресу щодо PC - Це 24-розрядне число у вигляді двійкового доповнення. Модифікатор команди DB вказує, що перехід затриманий; інакше - він не затриманий. Якщо модифікатор переривання циклу (LA) визначений для переходу, то дані витягуються з стеків циклу і стека PC при виконанні переходу. Модифікатор LA повинен використовуватися тільки у випадку, якщо перехід виконується за кордон циклу. Якщо циклу немає або адресу переходу знаходиться всередині циклу, то модифікатор LA не повинен використовуватися.
Модифікатор очищення переривання (CI) команди JUMP дозволяє повторно використовувати переривання під час його обробки. Зазвичай ADSP-2106x ігнорує і не фіксує переривання, яке відбувається повторно, коли програма його обробки вже виконується. Команда JUMP (CI) повинна розміщуватися всередині програми обробки переривання. JUMP (CI) очищає стан поточного переривання без виходу з програми обробки переривання, зводячи програму обробки переривання до стандартної підпрограмі - це дозволяє перериванню статися знову в результаті якої-небудь події або завдання в системі ADSP-2106x. Команда JUMP (CI) зводить програму обробки переривання до стандартної підпрограмі, обнулити відповідний біт в регістрі фіксування переривання (IRPTL) і регістрі покажчика маски переривання (IMASKP). Потім ADSP-2106x дозволяє переривання статися знову. При поверненні з підпрограми, в яку була зведена програма обробки переривання командою JUMP (CI), повинен використовуватися модифікатор (LR) команди RTS (у в...