Я думаю, что эти числа в начале каждой строки этой домашней задачи - это не номера строк, а значения счетчиков программ (то есть адреса слов во флэш-памяти, где каждое слово составляет два байта).
The *Инструкция 1003 * хранит абсолютные адреса, поэтому в инструкции jmp Forward
будет просто храниться число 822 .
Инструкция rjmp
хранит число k
и вызывает счетчик программы (ПК) изменить на PC + k + 1
.Таким образом, мы должны решить для k, зная, что ПК изначально равен 822, и он должен измениться на 140. Итак, мы знаем 140 = 822 + k + 1, и, следовательно, k = 140 - 822 - 1 = -683 .