Advertisement
matogens

zad.asm

Apr 30th, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. default rel
  2. global main
  3. extern scanf
  4. extern printf
  5.  
  6.  
  7. section .data
  8.  
  9. a dd 0
  10.  
  11. format db "%d", 0
  12.  
  13. tab dq _piec,_dst,_siedem,_def,_dziewiec,_dziesiec
  14.  
  15. section .text
  16.  
  17. main:
  18.  
  19.  
  20.     push rbp
  21.     mov rbp, rsp
  22.  
  23.     mov rdi, format
  24.     mov rsi, a
  25.     xor rax, rax
  26.     call scanf wrt ..plt
  27.  
  28.  
  29.     mov esi, [a]
  30.    
  31.     cmp esi, 5
  32.     jl _dst
  33.  
  34.     cmp esi, 10
  35.     jg _dst
  36.  
  37.     jmp qword [tab+8*rsi-40]  
  38.  
  39.     _piec:
  40.        
  41.         add esi, 5
  42.  
  43.     _siedem:
  44.  
  45.         add esi, 7
  46.         jmp _koniec
  47.  
  48.     _dziewiec:
  49.  
  50.         add esi, 9
  51.  
  52.     _dziesiec:
  53.  
  54.         add esi, 10
  55.         jmp _koniec
  56.  
  57.     _dst:
  58.  
  59.         mov esi, 100
  60.  
  61.     _koniec:
  62.  
  63.         mov rdi, format
  64.         xor rax, rax
  65.         call printf wrt ..plt
  66.  
  67.    
  68.         mov rsp, rbp
  69.         pop rbp
  70.         ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement