Как выполнить сложение и умножение l oop на языке ассемблера - PullRequest
0 голосов
/ 23 апреля 2020

I sh для реализации программы по сборке рычага для приема ввода и выполнения операции в зависимости от условий.

Например: если вход загружен в r0, он должен проверить состояние как R0 == 0, затем загрузить r10 с 0, если r0> 0, то следует добавить к входному значению, например, если input 5, 5 + 4 + 3 + 2 + 1. Если оно меньше 0, умножить на -5 * -4. * -3 * -2 * -1 Поскольку я новичок в программе сборки оружия, мне нужна помощь с моей программой. Я попробовал:

 Mov ro #val
 Cmp r0 #0
 Beq true
 Mov r10 #0   

  Cmp r0 #0
  Bge true
  Mov r2 #0   //to hold sum
  Mov r1 #0
 Loop:
   Cmp r1 #val
   Add r2,r2, r1
   add r1,r1, #1
   B loop 
  Done
 Mov r3 #0    // to hold multiply
 Mov #r4,#1
Loop:
 Cmp r4, #val
 Mul r3, r3,r4
 Add r4,r4,#1
Done

Я новичок в этом языке сборки оружия, любая помощь моя потребность ценится

...