Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

39 lignes
433B

  1. format ms64 coff
  2. section '.text' code readable executable
  3. use64
  4. public _loop
  5. _loop:
  6. xor eax, eax
  7. inc eax
  8. mov rbx, rdx ; RDX is overwritten by mul
  9. @again:
  10. cmp rbx, 0
  11. je @loop_end
  12. mul rcx
  13. dec rbx
  14. jmp @again
  15. @loop_end:
  16. ret
  17. public _tail_recursion
  18. _tail_recursion:
  19. test ecx, ecx
  20. je @is_0
  21. mov eax, ecx
  22. dec ecx
  23. @loop:
  24. test ecx, ecx
  25. jz @tr_end
  26. mul ecx
  27. dec ecx
  28. jnz @loop
  29. jmp @tr_end
  30. @is_0:
  31. mov eax, 1
  32. @tr_end:
  33. ret