Как правильно на асемблере сделать loop типа for (C) (TASM) - Assembler
Формулировка задачи:
как
правильно
на асемблере сделать Луп типа for (C) допустим мне надо сложить все числа с адресса 600h до 520h, и хочу я это сделать спомощью лупа?
Листинг программы
- int main(){
- int i,data[]=1,2,3,4,5,result=0;
- for(i=0;i<5;i++)
- result=result+data[i];
- return 0;
- }
Решение задачи: «Как правильно на асемблере сделать loop типа for (C) (TASM)»
textual
Листинг программы
- szData equ 4;размер в байтах одного элемента
- mov ecx,1+(600h-520h)/szData
- mov esi,520h
- xor eax,eax
- for:
- add eax,[esi+ecx*szData-szData];базово-индексная адресация с маштабированием
- loop for
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д