mov esi,offset numeric_string
xor eax,eax
xor edx,edx
top_of_loop:
mov al,[esi]
cmp al,"9"
ja not_valid
cmp al,"0"
jb test_end
imul edx,10
inc esi
lea edx,[edx+eax-30]
jmp top_of_loop
test_end:
or al,al
jz end_of_valid_string
not_valid:
;code for set error exit
end_of_valid_string:
;code for valid exit