Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2008, 16:27   #1
Mitron
Форумчанин
 
Аватар для Mitron
 
Регистрация: 10.05.2007
Сообщений: 117
По умолчанию ASCII строки

Здрасте, нужно целое число заданное ASCII строкой перевести в число(WORD).подскажите плиз.
Задачи на заказ

Блажен тот, кто ничего не знает: он не рискует быть не понятым.
Mitron вне форума Ответить с цитированием
Старый 10.02.2008, 19:42   #2
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

пример перевода строки в число (32-х битный код, FASM)
Код:
STR_to_DWORD:
; IN  ESI = pointer to ZS
;     EAX = notation (разрядность числа) 
; OUT EAX = result
    push esi
    push ebx
    push edi
    push edx
    push ecx

    cmp eax, 16
    ja .error
    cmp eax, 2
    jb .error

    mov ecx, eax

    mov edi, esi
    call GetZSLength
    mov edi, eax
    add edi, esi  ; edi point to end ZS

    xor eax, eax
    xor edx, edx
    inc edx

   .rep:
    dec edi

    xor ebx, ebx
    mov bl, [edi]
    cmp bl, 30h
    jb .error
    cmp bl, 39h
    jna .digit
    cmp bl, 41h
    jb .error
   @@:
    cmp bl, 46h
    jna .sim_upcase
    cmp bl, 61h
    jb .error
   @@:
    cmp bl, 66h
    jna .sim_lowcase
    ja .error

   .digit:
    sub bl, 30h
    jmp @f
   .sim_upcase:
    sub bl, 37h
    jmp @f
   .sim_lowcase:
    sub bl, 57h
   @@:
    cmp bl, cl
    ja .error

    imul ebx, edx
    add eax, ebx
    imul edx, ecx
    cmp edi, esi
    jnz .rep
   .endrep:


    jmp @f
   .error:
    xor eax, eax
   @@:

    pop ecx
    pop edx
    pop edi
    pop ebx
    pop esi
    ret
rpy3uH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ASCII в ANSI JRcoker Общие вопросы Delphi 5 03.08.2008 15:49
Перекодировка из ASCII Dimo444ka Помощь студентам 2 25.05.2008 13:22
Шифрование данных ASCII кодом на Assembler Cerebrate Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 5 26.02.2008 13:56
Перевод кода символа в символ таблицы ASCII nerh Общие вопросы C/C++ 3 01.02.2008 20:34
Что такое коды ASCII и зачем они?? Ларик Помощь студентам 2 27.01.2008 19:41