Как работает инструкция "Test" - Assembler

Узнай цену своей работы

Формулировка задачи:

Исходя из описания, она используется для проверки битов. Т.е, в случае
mov al,11b
test al,01b
результат должен быть положительным. Также, для сравнения с нулем, используют нечто вроде test al,al. Выходит, перед сравнением, test инвертирует то ли источник, то ли приемник аналогично XOR, а после сравнивает. Я заблуждаюсь, но в чем?

Решение задачи: «Как работает инструкция "Test"»

textual
Листинг программы
test al,al
js label

Объяснение кода листинга программы

Вот что происходит в этом коде:

  1. test al,al - Эта инструкция выполняет сравнение двух регистров. В данном случае, это регистр al и al. Если они равны, то переходит к следующему шагу, иначе возвращается к началу цикла.
  2. js label - Эта инструкция переходит к метке label. Если регистры al равны, то это будет выполнено. Если они не равны, то код просто вернется к началу цикла. Вот как это выглядит в виде списка:
  3. test al,al
  4. js label

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

11   голосов , оценка 3.818 из 5