Найти сумму целых положительных чисел из промежутка от А до В, кратных 4 - Assembler
Формулировка задачи:
Задача 1:Найти сумму целых положительных чисел из промежутка от А до В, кратных 4 (значения переменных А и В вводятся с клавиатуры). нужна именно вставка ассемблера в c++
по типу такого Есть решениее на c++ ,но нужно ассемблер...
Решение задачи: «Найти сумму целых положительных чисел из промежутка от А до В, кратных 4»
textual
Листинг программы
.386 .model flat, stdcall option casemap:none ;include и includelib .data .code Sum PROC STDCALL USES ebx A:DWORD, B:DWORD mov edx, [A] mov ebx, edx and ebx, 3 jz check_range mov eax, 4 sub eax, ebx add edx, eax check_range: mov ebx, [B] cmp edx, ebx ja exit_zero mov eax, ebx and eax, 3 sub ebx, eax mov eax, ebx sub eax, edx shr eax, 2 inc eax add ebx, edx shr ebx, 1 xor edx, edx mul ebx jmp done exit_zero: xor eax, eax xor edx, edx done: ret Sum endp start: invoke Sum, 10, 10 invoke Sum, 12, 12 invoke Sum, 11, 13 invoke Sum, 13, 12 invoke Sum, 12, 13 invoke Sum, 12, 16 invoke Sum, 7778, 42332 invoke Sum, 0, 21978978 ;invoke ExitProcess, 0 ret end start
Объяснение кода листинга программы
Список элементов:
- Переменная
edx
используется для хранения значения аргумента А функцииSum
. - Переменная
ebx
используется для хранения значения аргумента В функцииSum
. - Переменная
eax
используется для хранения промежуточных значений в процессе вычисления суммы. - Переменная
ebx
используется для хранения значения, полученного после вычисления суммы. - Переменная
edx
используется для хранения значения аргумента В функцииSum
. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы. - Переменная
edx
используется для хранения значения аргумента А функцииSum
. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы. - Переменная
ebx
используется для хранения значения, полученного после вычисления суммы. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы. - Переменная
edx
используется для хранения значения аргумента В функцииSum
. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы. - Переменная
edx
используется для хранения значения аргумента А функцииSum
. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы. - Переменная
ebx
используется для хранения значения, полученного после вычисления суммы. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы. - Переменная
edx
используется для хранения значения аргумента В функцииSum
. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы. - Переменная
edx
используется для хранения значения аргумента А функцииSum
. - Переменная
eax
используется для хранения значения, полученного после вычисления суммы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д