строки

Тема в разделе "WASM.BEGINNERS", создана пользователем splinter, 5 июн 2009.

  1. splinter

    splinter New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2009
    Сообщения:
    45
    есть такая ситуация:

    нужно вывести на экран в консоли некоторые символы, которые лежат по определённому адресу.

    Вывод происходит с помощью функции API WriteConsole

    Напимер, мне нужно вывести какой-то символ, как он выглядит в 16-ричной кодировке (число), который лежит по определённому адресу. Функция же выводит на экран символ с кодом этого числа. Как этого избежать?
    ----
    И ещё 1 задача.
    Есть строка по определённому адресу, состоящая из 3 символов.
    Как получить коды этих символов?
    в идеае их нужно записать в файл)
     
  2. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    прочитать байт в 32х регистр есть команда movzx byte ptr [...], регистр потом скормишь функции wsprintf с ключём %x - шестнадцатиричный или %u десятичный беззнаковый (можешь и три байта передать её как параметры, только не забудь их по отдельности в dword преобразовать через movzx), а уже её выходной буфер передашь WriteConsole.
    http://www.wasm.ru/forum/viewtopic.php?pid=264115#p264115
     
  3. splinter

    splinter New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2009
    Сообщения:
    45
    а какнить другими путями?
    и ка вывести код символа по его коду и наоборот?
     
  4. splinter

    splinter New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2009
    Сообщения:
    45
    ЗЫ
    мне нужно необязатеьлно выводить на экран, а можно, в файл к примеру
     
  5. Mika0x65

    Mika0x65 New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2005
    Сообщения:
    1.384
    splinter
    А в чем разница? Все равно надо привести число к ASCII виду. Для этого есть sprintf, как уже сказали, или itoa, она тоже в ntdll. А потом хоть в винчестер, хоть на экран -- куда угодно.