Дано шестизначное число, найти произведение его цифр - Assembler

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

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

Дано шестизначное число, найти произведение его цифр. Ребят помогите, очень нужно.

Решение задачи: «Дано шестизначное число, найти произведение его цифр»

textual
Листинг программы
mov eax,<положительное число>
mov ebx,10
mov ecx,1
@@:             ;repeat
   cdq          ;edx = 0
   div  ebx     ;eax = eax div 10
   imul ecx,edx ;ecx = ecx*(eax mod 10)
   test eax,eax
jne @b          ;until eax=0; 
;ответ в ecx

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

  1. Переменная <положительное число> хранит шестизначное число.
  2. Переменная ebx содержит 10.
  3. Переменная ecx содержит 1.
  4. Начинается цикл @@.
  5. В каждой итерации значение edx устанавливается равным 0.
  6. Значение eax делится на 10.
  7. Результат умножается на значение ecx.
  8. Проверяется, равно ли значение eax нулю. Если нет, то цикл продолжается.
  9. По завершении цикла, ответ хранится в переменной ecx.

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

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