1. Главная
  2. Библиотека
  3. Программирование
  4. Разработать программу, выполняющую вывод на экран текст...
Решение задачи

Разработать программу, выполняющую вывод на экран текстового сообщения и последующее вычисление выражения: Y=[(Х1+Х2)ХЗ–Х4]/Х5, где Х1—Х5 — десятичные целые числа. Результат вычисления выражения программа помещает в регистры AX и DX. Вывести эти

  • Программирование

Условие:

Разработать с помощью Debug программу, выполняющую вывод на экран текстового сообщения и последующее вычисление выражения:
Y=[(Х1+Х2)ХЗ–Х4]/Х5,
где Х1—Х5 — десятичные целые числа, выбранные в соответствии с номером варианта из таблицы 3.
Результат вычисления выражения программа помещает в регистры AX и DX. Нужно вывести эти результаты в двоичной системе счисления.
Структура выходного сообщения программы:
«Программа вычисления выражения Y=[(Х1+Х2)ХЗ–Х4]/Х5, где X1=..., X2=..., X3=..., X4=..., X5=...»
AX=0011110111000101 DX=0000000000010101
Промежуточные результаты можно будет наблюдать при запуске программы в debug, выполняя пошаговое выполнение инструкций.
Вместо точек должны выводиться заданные числа (в шестнадцатеричной системе).
Таблица 1 — Значения чисел X1 – X5
№ варианта
X1 X2 X3 X4 X5
269 331 18 4151 14


Примечание 1. Загрузка в регистры заданных чисел (преобразованных вручную в шестнадцатеричную систему) должна производиться только с помощью инструкций MOV.
Примечание 2. Рекомендуется выполнить проверку результата выполнения программы путем сравнения его с результатом ручного счета. Так как при ручном счете используется десятичная система счисления, то перед сравнением результатов их необходимо записать в одной и той же системе.

Решение:

Ниже приведён пошаговый анализ решения задачи. Шаг 1. Определяем исходные значения. Согласно таблице имеем:   X1 = 269,  X2 = 331,  X3 = 18,  X4 = 4151,  X5 = 14. Поскольку в программе загрузка выполняется инструкцией MOV с шестнадцатеричными литералами, необходимо перевести каждое число в шестнадцатеричную систему. Шаг 2. Перевод чисел в шестнадцатеричное представление.   269 (десятичное) делим на 16: 269 = 16·16 + 13, значит X1 = 0x10D.   331 = 16·20 + 11, поэтому X2 = 0x14B.   18 = 16·1 + 2, следовательно X3 = 0x12.   4151 делим поочерёдно: 4151 ÷ 16 = 259 с остатком 7; 259 ÷ 16 = 16 с ос...

Не нашел нужную задачу?

Воспользуйся поиском

Выбери предмет