хекс в десятичый

Discussion in 'WASM.BEGINNERS' started by TOLSTOPUZ, Sep 4, 2008.

  1. TOLSTOPUZ

    TOLSTOPUZ New Member

    Blog Posts:
    0
    Joined:
    Apr 26, 2008
    Messages:
    509
    .data
    buf word 1 dup (?)

    .code
    mov ax , 07D8 ; 2008 год
    mov buf, ax

    И как это теперь "прочитать по русски"? т.е. 2008
     
  2. S_Alex

    S_Alex Alex

    Blog Posts:
    0
    Joined:
    Aug 27, 2004
    Messages:
    561
    Location:
    Ukraine
    MasmLib.hlp

    atodw Convert ascii number to DWORD
    htodw Convert hex string to DWORD
    dwtoa Convert DWORD to ascii string
    dw2hex Convert DWORD to hex string
    dw2 all Convert DWORD to ascii hex
    udw2str Convert unsigned DWORD to string
    ustr2dw Convert string to unsigned DWORD
    ltoa Convert signed DWORD to ascii string
    atol Convert ascii string to signed DWORD
     
  3. 2FED

    2FED New Member

    Blog Posts:
    0
    Joined:
    Feb 20, 2008
    Messages:
    1,002
    TOLSTOPUZ как понять прочитать? buf это ведь не строка, и


    mov ax , 07D8h ; 2008 год
    mov buf, ax
    cmp buf,2008 ; будет корректно работать.
     
  4. TOLSTOPUZ

    TOLSTOPUZ New Member

    Blog Posts:
    0
    Joined:
    Apr 26, 2008
    Messages:
    509
    Год - может быть любой. Что мне, все года сравнивать, массив создавать7
    Нужен алгос, преобразующий число хекс в десятичное.
     
  5. Y_Mur

    Y_Mur Active Member

    Blog Posts:
    0
    Joined:
    Sep 6, 2006
    Messages:
    2,494
    TOLSTOPUZ
    Так ты всё таки не на экран десятичное выводишь, а сравниваешь десятичное с hex ?
    Тогда открою маленький секрет - и 07D8h и десятичное 2008 преобразуются компилятором в двоичное 11111011000b ;)), так что в программе пиши как хочешь всё сравнится правильно, поскольку и 07D8h и 2008 и 11111011000b это одно и тоже число.
     
  6. TOLSTOPUZ

    TOLSTOPUZ New Member

    Blog Posts:
    0
    Joined:
    Apr 26, 2008
    Messages:
    509
    Нет, из буфера-то я вывожу именно на экран.
    Сравнить-то я ессно сравнил бы...
    Мне надо вывести мессагу для пользователя с нормальной цифрой.
    Вообще вопрос о сравнении не стоит..
     
  7. onSide

    onSide New Member

    Blog Posts:
    0
    Joined:
    Jun 18, 2008
    Messages:
    476
    TOLSTOPUZ юзай алгоритм для перевода из двоичной в десятичную... Это уже основы, поэтому изучай это сам ;)
     
  8. Y_Mur

    Y_Mur Active Member

    Blog Posts:
    0
    Joined:
    Sep 6, 2006
    Messages:
    2,494
    TOLSTOPUZ
    Тогда или по ссылке в #5
    Или wsprintf
    %d - позиция для десятичного числа, %x - для hex