Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для начинающих > PCHAR в число


Автор: DoZENT 27.7.2006, 10:22
Как преобразовать переменную типа PCHAR в обычное число? 

Автор: ds29 27.7.2006, 10:28
было 100 раз
поиск для кого? 

Автор: DoZENT 27.7.2006, 10:44
Не нашел я по поиску  smile Не кинешь ссылку? 

Автор: oleg1973 18.8.2006, 03:46
atoi

Автор: angler 10.9.2006, 16:48
Код

; edx указывает на строку
    xor ecx, ecx 
    mov cl, BYTE PTR [edx] 
    xor eax, eax 

    xor cl, "0"  ;Переводит "0".."9" в 0..9
    cmp cl, 10 
    jae end 

convert_loop: 
    lea eax, DWORD PTR [eax+4*eax]  ; eax*=5 
    inc edx 
    lea eax, DWORD PTR [ecx+2*eax]  ; eax=eax*2+ecx 

    mov cl, BYTE PTR [edx] 
    xor cl, "0"
    cmp cl, 10 
    jb convert_loop 

end: 
    ret


Переводит в целое чило (беззнаковое) пер. PChar.
Оптимизирванный код The_Grey_Beast'а.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)