Выделите байт Specifi c с помощью GDB - PullRequest
2 голосов
/ 11 апреля 2020

Я проверяю ассемблерный код программы и хотел бы выделить определенное значение c:

gdb a.out
b main
run
s ...                   until where I want to focus my attention
x/32 0x555555554b80     display nicely the bytes

Теперь, есть ли способ попросить GDB отобразить вывод и выделить, если байт равно желаемому значению (здесь 0x27)?

x/32 0x555555554b80  |   0x27

Выделив, я имею в виду выделение этого байта жирным или зеленым, или что бы оно ни выделялось!

PS: я осведомлен о этом вопросе , но 1 / он не отвечает на мой вопрос, 2 / я хотел бы использовать gdb

1 Ответ

1 голос
/ 14 апреля 2020

Нет встроенного способа сделать это. Тем не менее, это можно сделать с помощью некоторых сценариев.

Относительно простой способ с достаточно новым GDB - использовать команду pipe для передачи вывода x через программу, которая будет сделайте выделение, которое вы хотите. Например, GNU grep может таким образом раскрасить соответствие.

Возможны другие подходы. Например, вы можете написать новую x -подобную команду в Python, используя Python API GDB.

...