model small .Stack 100h .Data op1 db 256 dup(0),'$' op2 db 256 dup(0),'$' ats db 256 dup('0'), '$' eil1 db '1-as operandas: $' eil2 db '2-as operandas: $' eil3 db 'Atsakymas: $' nauja_eil db 13,10,'$' .Code ivesti proc mov cl, 10h xor bx, bx; iv_cikl: mov ah, 01h int 21h cmp al, 0dh je iv_baigti mov dl, al xor ah, ah div cl cmp dl, 3ah jl iv_toliau add ah, 09h iv_toliau: inc bl mov [si][bx], ah cmp bl, 0ffh jb iv_cikl iv_baigti: mov [si], bl lea dx, nauja_eil call irasyti ret endp ivesti irasyti proc mov ah, 09h int 21h ret endp irasyti atimti proc xor bx, bx mov dl, op1 lyginti: cmp op1, bl je at_toliau cmp dl, op2[bx] jne at_toliau inc bl mov dl, op1[bx] jmp lyginti at_toliau: cmp dl, op2[bx] jb at_sukeisti xor dl, dl lea si, op1 lea di, op2 jmp at_atimti at_sukeisti: mov dl, '-' lea si, op2 lea di, op1 at_atimti: xor bh, bh mov bl, [si] add si, bx mov ch, bl mov bl, [di] add di, bx mov dh, bl xor cl, cl xor ah, ah mov bx, 00ffh at_cikl: cmp ch, cl je at_4 mov al, [si] add al, ah cmp dh, cl jbe at_1 sub al, [di] dec di at_1: cbw cmp ah, 00h je at_2 add al, 10h at_2: cmp al, 0ah jb at_3 add al, 07h at_3: add ats[bx], al dec bl dec si inc cl jmp at_cikl at_4: cmp ats[bx], '0' jne at_5 cmp bx, 00ffh je at_6 inc bx jmp at_4 at_5: cmp dl, '-' jne at_6 dec bx mov ats[bx], dl at_6: lea cx, ats[bx] ret endp atimti pradzia: mov ax, @data mov ds, ax lea dx, eil1 call irasyti lea si, op1 call ivesti lea dx, eil2 call irasyti lea si, op2 call ivesti call atimti lea dx, eil3 call irasyti mov dx, cx call irasyti mov ah, 4ch int 21h end pradzia