Упражнение №3 для закрепления знаний по командам передачи данных и арифметических вычислений - Assembler
Формулировка задачи:
Задание 3
В памяти записать числа 27 и B9. Логически перемножить эти числа. Результат инвертировать и сохранить в AX. В полученном числе маскировать нулём 6, 2 разряды, умножить на 12, найти дополнительный код
Решение задачи: «Упражнение №3 для закрепления знаний по командам передачи данных и арифметических вычислений»
textual
Листинг программы
MOV[9],27 MOV[10],B9 AND[10],[9]; операнды не могут быть типа память-память, ;только регистр-регистр, регистр-память, регистр-значение, память-значение, пр этом значение всегда справа NOT[10] MOV[10],AX AND AX,BB MOV[11],12 MUL AX,[11];умножение как бы правильно, не так как в задании 1, ;вот только АХ указывать не нужно, он по умолчанию используется в команде NE6 AX INT3
Объяснение кода листинга программы
- MOV[9],27 Перемещение числа 27 в регистр 9.
- MOV[10],B9 Перемещение содержимого регистра B9 в регистр 10.
- AND[10],[9] Логическое ИЛИ между регистрами 10 и 9.
- NOT[10] Логическое отрицание (инверсия) регистра 10.
- MOV[10],AX Перемещение содержимого регистра AX в регистр 10.
- AND AX,BB Логическое ИЛИ между регистром AX и числом BB.
- MOV[11],12 Перемещение числа 12 в регистр 11.
- MUL AX,[11] Умножение регистра AX на число в регистре 11.
- NE6 AX Проверка на неравенство регистра AX числу 6.
- INT3 Ввод команды прерывания 3.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д