Advertisement
Guest User

Untitled

a guest
Jan 13th, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. start:  
  2.     xor     ax,ax
  3.     xor     dx,dx
  4.     xor     bx,bx
  5.     xor     cx,cx
  6.     xor     di,di
  7.    
  8.     mov     cx,3    ;   przyjmujemy maksymalnie 3 cyfrowa liczbe
  9.     jmp     wpiszZmiennaA
  10.    
  11.    
  12. ;pobierz zmienna A 
  13. wpiszZmiennaA:
  14.    
  15.     mov     ah,9
  16.     mov     dx,ent1
  17.     int     21h
  18.    
  19.     mov     ah,9
  20.     mov     dx, wpZmien1
  21.     int     21h
  22.  
  23.     mov     ah,1                                                           
  24.     int     21h
  25.    
  26.     jmp     sprZmiennaA
  27.  
  28. ;sprawdzamy czy zmienna  nie jest jakims znakiem specjalnym lub  enterem
  29. sprZmiennaA:
  30.  
  31.     cmp     al, 13
  32.     je          koniecWpiszZmienna
  33.    
  34.     cmp     al,48
  35.     jb          zlyZnak
  36.  
  37.     cmp     al,57
  38.     ja          zlyZnak
  39.    
  40.     mov     ah,0
  41.    
  42.     sub     ax,48
  43.    
  44.     push    ax
  45.    
  46.     inc     di
  47.    
  48.     loop        wpiszZmiennaA
  49.    
  50. koniecWpiszZmiennaA:
  51.     cmp     cx,3            ; jesli petla nie wykona sie ani razu, bo wprowadzilismy np enter, znaczy ze podano zly znak
  52.     je          zlyZnak
  53.    
  54.     xor     ax,ax
  55.     xor     dx,dx
  56.     xor     cx,cx
  57.     xor     bx,bx
  58.    
  59. sciagnijZeStosu:
  60.     sub     di,1
  61.    
  62.     mov     cx,di
  63.     pop     ax
  64.    
  65.     add     bh,ax
  66.     mov     bl,10
  67. petlaDoStosu:
  68.     xor     ax,ax
  69.    
  70.     pop         ax
  71.     mul     bl
  72.    
  73.     add     bh,ax
  74.    
  75.     xor     ax,ax
  76.     mov     ax,bl
  77.    
  78.     mul     bl
  79.     mov     bl,ax
  80.    
  81.     loop petlaDoStosu
  82.    
  83.     xor     ax,ax
  84.     mov     ax,bh
  85.     push    ax
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement