Микропрограммирование 8086: деление - Assembler

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

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

Проблемка с делением в i8086. Как реализовать деление на число, не равное 2 в какой-то степени? К примеру, мне нужно поделить некое число, занесенное в регистр AX на 15 и выделить его остаток, который записывается куда-нибудь. В методичке указано, что остаток от деления числа на 15 равен остатку от деления на 15 суммы его 16-ричных цифр, что ничуть не облегчает задачу (приведена исчерпывающая информация). Помогите разобраться или посоветуйте литературу пожалуйста!

Решение задачи: «Микропрограммирование 8086: деление»

textual
Листинг программы
mov ax,37
mov bl,15
div bl; al=2 (частное) ah=7 (остаток)

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

  1. mov ax,37 — Перемещение значения 37 в регистр AX.
  2. mov bl,15 — Перемещение значения 15 в регистр BL.
  3. div bl — Деление значения в регистре AX на значение в регистре BL.
  4. al=2 (частное) — Значение частного (2) сохраняется в регистре AL.
  5. ah=7 (остаток) — Значение остатка (7) сохраняется в регистре AH.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

5   голосов , оценка 4.2 из 5
Похожие ответы