Advertisement
SquirrelInBox

XmodY

Oct 11th, 2015
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .model tiny
  2. .code
  3. org 100h
  4.  
  5. e:
  6.     ; все нужное занулили
  7.     xor ax, ax
  8.     xor dx, dx
  9.     xor bx, bx
  10.     xor cx, cx
  11.     ; в cx записали хвост
  12.     mov cx, cs:[80h]
  13.     ; зачем-то почистили начало хвоста
  14.     xor ch, ch
  15.    
  16.     ; записали указатель на второе число
  17.     mov si, 84h
  18.    
  19.     ;получили первое число - цифру, записали в bh,
  20.     ;bl занулили, чтобы дальше использовать
  21.     mov bl, cs:[82h]   
  22.     sub bl, '0'
  23.     mov bh, bl
  24.    
  25.     ;уменьшили длину до второго числа
  26.     xor bl, bl
  27.     dec cx
  28.     dec cx
  29.     dec cx
  30.    
  31. for_loop:
  32.     ; прочитали очередную цифру, результат записали в al
  33.     mov bl, [si]
  34.     sub bl, '0'
  35.     mul num
  36.     add al, bl
  37.     inc si
  38.     loop for_loop
  39.    
  40.     ; переместили второе число обратно в bl
  41.     xor bl, bl
  42.     mov bl, bh
  43.     xor bh, bh
  44.    
  45.     ; нашли остаток от деления al на bl, превратили в символ и вывели
  46.     div bx
  47.     add dl, '0'
  48.     mov ah, dl
  49.     mov ah, 02h
  50.     int 21h
  51.     ret
  52.     num db 10
  53. end e
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement