fork download
  1.  
  2. section .data
  3. msg1 db 10,13,"Enter 5 64 bit numbers"
  4. len1 equ $-msg1
  5. msg2 db 10,13,"Entered 5 64 bit numbers"
  6. len2 equ $-msg2
  7.  
  8. section .bss
  9. array resd 200
  10. counter resb 1
  11.  
  12. section .text
  13. global _start
  14. _start:
  15.  
  16. ;display
  17. mov Rax,1
  18. mov Rdi,1
  19. mov Rsi,msg1
  20. mov Rdx,len1
  21. syscall
  22.  
  23. ;accept
  24.  
  25. mov byte[counter],05
  26. mov rbx,00
  27.  
  28. loop1:
  29. mov rax,0 ; 0 for read
  30. mov rdi,0 ; 0 for keyboard
  31. mov rsi, array ;move pointer to start of array
  32. add rsi,rbx
  33. mov rdx,17
  34. syscall
  35. add rbx,17 ;to move counter
  36. dec byte[counter]
  37. JNZ loop1
  38.  
  39. ;display
  40. mov Rax,1
  41. mov Rdi,1
  42. mov Rsi,msg2
  43. mov Rdx,len2
  44. syscall
  45.  
  46. ;display
  47. mov byte[counter],05
  48. mov rbx,00
  49. loop2:
  50. mov rax,1 ;1 for write
  51. mov rdi, 1 ;1 for monitor
  52. mov rsi, array
  53. add rsi,rbx
  54. mov rdx,17 ;16 bit +1 for enter
  55. syscall
  56. add rbx,17
  57. dec byte[counter]
  58. JNZ loop2
  59.  
  60. ;exit system call
  61. mov rax ,60
  62. mov rdi,0
  63. syscall
  64.  
  65.  
  66.  
  67.  
  68.  
Success #stdin #stdout 0s 5288KB
stdin
Standard input is empty
stdout

Enter 5 64 bit numbers

Entered 5 64 bit numbers