Сумма последовательности чисел на Ассемблере. Где ошибка?

Я написал программу, которая должна была найти сумму последовательности чисел, но она неправильно работает.
Подскажете где ошибка?
section .text
main:
	xor eax, eax
	xor ecx, ecx
	push 20
	call ssn
ssn:
	pop ecx
	L1:
		add eax, ecx
		loop L1
	ret
  • Вопрос задан
  • 123 просмотра
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Но в регистре eax лежит какой-то адрес

call ssn -> ложит адрес следующего оператора, куда возвращаться после выхода
ssn:
  pop ecx -> тут ты этот адрес и извлекаешь
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы