Задача на assembler. Вычислить выражение.

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

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

Помогите решить задачу

Решение задачи: «Задача на assembler. Вычислить выражение.»

textual
Листинг программы
;mov byte ptr ds:[0200h],4
;mov byte ptr ds:[0201h],13
;mov byte ptr ds:[0202h],2
 
mov al,byte ptr ds:[0200h]
imul al
 
mov dx,ax
 
mov al,byte ptr ds:[0201h]
mov bl,byte ptr ds:[0202h]
imul bl
 
add ax,dx
mov bl,14
idiv bl
 
dec al
 
mov byte ptr ds:[0203h],al

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

В данном коде на языке Assembler происходит следующее:

  1. Переменная al получает значение 4, которое хранится в байте по адресу 0200h в сегменте данных (ds).
  2. Переменная al получает значение 13, которое хранится в байте по адресу 0201h в сегменте данных (ds).
  3. Переменная al получает значение 2, которое хранится в байте по адресу 0202h в сегменте данных (ds).
  4. Переменная ax получает значение, равное произведению значения переменной al и 4.
  5. Переменная dx получает значение, равное половине значения переменной ax.
  6. Переменная al получает значение 14.
  7. Переменная bl получает значение, равное произведению значения переменной al и 2.
  8. Сумма значений переменных ax и dx сохраняется в переменной ax.
  9. Делится значение переменной ax на значение переменной bl. Результат сохраняется в переменной al.
  10. Значение переменной al уменьшается на единицу.
  11. Значение переменной al записывается в байт по адресу 0203h в сегменте данных (ds).

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

9   голосов , оценка 3.667 из 5