forked from KolibriOS/kolibrios
Programs: fasm updated to 1.67.14, small fixes in desktop, stackcfg, calc, board, pipes, freecell, big cleanup of unused programs, added some applications from 0.6.3.0 distr... git-svn-id: svn://kolibrios.org@205 a494cfbc-eb01-0410-851d-a64ba20cac60
41 lines
566 B
FASM
41 lines
566 B
FASM
macro use_text_work
|
|
{
|
|
;edi - указатель на строку, ограниченную нулем
|
|
;число возвращается в eax
|
|
zstr_to_int:
|
|
xor eax,eax
|
|
mov ecx,10
|
|
.next:
|
|
movsx ebx,byte [edi]
|
|
inc edi
|
|
test ebx,ebx
|
|
jz .end_str
|
|
cmp bl,'9'
|
|
jg .no_figure
|
|
cmp bl,'0'
|
|
jl .no_figure
|
|
sub ebx,'0'
|
|
mul ecx
|
|
add eax,ebx
|
|
.no_figure:
|
|
jmp .next
|
|
.end_str:
|
|
ret
|
|
|
|
;edi - указатель на строку
|
|
;eax - число
|
|
;ebx - количесво знаков
|
|
int_to_str:
|
|
mov ecx,10
|
|
.next:
|
|
test ebx,ebx
|
|
jz .end
|
|
xor edx,edx
|
|
div ecx
|
|
add dl,'0'
|
|
dec ebx
|
|
mov [edi+ebx],dl
|
|
jmp .next
|
|
.end:
|
|
ret
|
|
} |