; multi-segment executable file template. data segment ; add your data here! data1 db 6 dup(?) temp db dup(0) pe db ' be name khoda' pea db 'adade yekraghami vared konid:(Ginoo.ir)$' ends stack segment dw 128 dup(0) ends code segment start: ; set segment registers: mov ax, data mov ds, ax mov es, ax mov dh,1 ;//////////////////////////////// mov cx,18 lea di,pe mov ah,02h loo: mov dl,[di] int 21h inc di loop loo ; ;/////////////////////////////// ; call mahdi ; ;////////////////////////////// mov ah,02h mov cx,40 lea di,pea loor: mov dl,[di] int 21h inc di loop loor ;///////////////////////////// ; call mahdi ; ; call mahdi ; ; ;//////////////////////////// lea si,data1 mov bl,6 call mahdi call mahdi ;//////////////////////////// looot: call mahdi mov ah,01h int 21h sub al,48 mov [si],al inc si dec bl jnz looot ;///////////////////////////// call mahdi call mahdi ;//////////////////////////// mov di,offset data1+5 mov si ,offset data1 ;/////////////////////////// dec si amh: inc si mov di,offset data1+5 cmp si,di ja az ;///////////////////////////// back: mov al,[si] cmp al,[di] jb jump dec di cmp si,di jae amh jmp back ;///////////////////////////// jump: xchg al,[di] mov [si],al dec di cmp si,di jae amh jmp back az: mov dh,6 lea si,data1 amin: mov ah,0eh mov al,[si] add al,48 mov cx,1 mov bh,00h mov bl,07h int 10h ; ;beyne har add yek khat chap kon . ; mov ah,0eh mov al,22 mov cx,1 mov bh,00h mov bl,07h int 10h inc si dec dh jz asd jmp amin asd: mov ah,1 int 21h mov ax, 4c00h int 21h ;///////////////////////////////////// mahdi proc mov ah,02 mov bh,00h inc dh mov dl,0 int 10h ret endp ends end start ; set entry point and stop the assembler.