Арифметика с 4 байтными числами - Assembler
Формулировка задачи:
положим у меня есть код
в итоге получаю в DX=FFFF, AX=7000
Мне нужно число FFFF7000 (-36864b) (DX:AX) перевести в 10 код, для вывода на экран, это можно сделать делением с остатком, на A.
Вопрос: как оформить деление этого 4битного числа, тоесть делить сразу два регистра памяти?
Вообщем, вывести на экран число -36864.
p.s использую 16 разрядный компилятор
MOV AX,1000h MOV BX,FFF7 IMUL BX
Решение задачи: «Арифметика с 4 байтными числами»
textual
Листинг программы
mov ax,8D01 mov bx, 000A cwd div bx
Объяснение кода листинга программы
mov ax,8D01
- Переменнаяax
получает значение 8D01 (13611).mov bx, 000A
- Переменнаяbx
получает значение 000A (10).cwd
- Код переходит к работе с словами (составляющими байта) вместо байтов.div bx
- Деление без остатка переменнойax
на переменнуюbx
. Результат будет сохранен в переменнойax
, а остаток от деления - в переменнойdx
.