Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ida.final.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
6 Mб
Скачать

Char LineA(long ea,long num)

Функция возвращает строку num многострочечного комментария, помещенного перед элементом, расположенным по линейному адресу ea.

Пример использования:

seg000:0100 mov ah, 9

seg000:0102 mov dx, offset aHello

seg000:0105 ; Строка 1

seg000:0105 ; Строка 2

seg000:0105 int 21h ;

a) исходные данные – требуется получить первую строку многострочечного комментария

Message(“>%s\n”,LineA(SegByName(“seg000”)+0x105,0)));

b) вызов функции LineA для получения первой строки многострочечного комментария.

> ; Строка 1

с) результат

??? #Верстальщику – change table

аргумент

пояснения

ea

линейный адрес

n

номер строки комментария от 0 до 500 включительно.

return

=return

пояснения

!=””

строка повторяемого комментария

==””

ошибка

Родственные функции: LineB

Интерактивный аналог: многострочечный комментарий отображается перед комментируемым элементном

Char LineB(long ea,long num)

Функция возвращает строку num многострочечного комментария, помещенного за элементом, расположенным по линейному адресу ea.

Пример использования:

seg000:0100 mov ah, 9

seg000:0102 mov dx, offset aHello

seg000:0102 ; Строка 1

seg000:0102 ; Строка 2

seg000:0105 int 21h ;

a) исходные данные – требуется получить первую строку многострочечного комментария

Message(“>%s\n”,LineB(SegByName(“seg000”)+0x102,0)));

b) вызов функции LineB для получения первой строки многострочечного комментария.

> ; Строка 1

с) результат

??? #Верстальщику – change table

аргумент

пояснения

ea

линейный адрес

n

номер строки комментария от 0 до 500 включительно.

return

=return

пояснения

!=””

строка повторяемого комментария

==””

ошибка

Родственные функции: LineA

Интерактивный аналог: многострочечный комментарий отображается перед комментируемым элементном

Long LocByName(char name)

Функция возвращает линейный адрес метки (имени функции) с именем name. Если ни одной метки (функции) с указанными именем не существует, функция возвращает значение BADADDR, сигнализируя об ошибке.

Функция чувствительна к регистру символов и различает имена, набранные строчечными и прописными буквами.

Внимание: функции требуется передавать подлинные имена меток, а не имена, отображаемые на экране, прошедшие через фильтр замены недопустимых символов (см. описание функции GetTrueName)

Пример использования:

seg000:0000 aHelloIdaPro db 'Hello, IDA Pro! ',0Dh,0Ah

a) исходные данные – требуется получить адрес метки “aHelloIdaPro”

Message(“>%s\n”,atoa(LocByName(“aHelloIdaPro”)));

b) вызов функции LocByName для получения адреса метки

>seg000:0000

c) результат – адрес метки “aHelloIdaPro”

??? #Верстальщику – change table

аргумент

пояснения

name

имя метки (функции) с учетом регистра

return

=return

пояснения

!=BADADDR

линейный адрес метки (функции)

==BADADDR

ошибка

Родственные функции: нет

Интерактивный аналог: “~View\Names”

??? all – дальше начинается не переработанный вариант

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]