برنامه تبدیل یک عدد صحیح علامت دار دو بایتی ذخیره شده در AX و ذخیره رشته بدست آمده در سگمنت داده با استفاده از اشاره گر di.

قبل از فراخوانی باید در سگمنت داده 6 بایت برای ذخیره رشته عددی تعریف و di توسط برنامه main با آفست آن مقداردهی شود.

 

 

procs                segment

                        assume cs:procs

itoa                   proc far

                        cmp ax,8000h ;case of  -32768 smallest number in 2 bytes

                        jne normal

                        mov byte ptr [di],-

                        mov byte ptr [di+1],3

                        mov byte ptr [di+2],2

                        mov byte ptr [di+3],7

                        mov byte ptr [di+4],6

                        mov byte ptr [di+5],8

                        jmp short finish

normal: mov dx,ax

                        mov al,

                        mov cx,5

                        cld

                        rep stosb

                        mov ax,dx

                        mov cl,

                        cmp ax,0

                        jge setup

                        mov cl,-

                        neg ax

setup:               mov bx,10

divloop:            mov dx,0

                        div bx

                        add dl,30h

                        mov byte ptr [di], dl

                        dec di

                        cmp ax,0

                        jne divloop

                        mov byte ptr [di],cl

finish:                ret

itoa                   endp

procs                ends