LINUX.ORG.RU

можно ли создавать посредством gdb на асме программки подобно debug.exe под офтопиком

 , ,


0

0

под офтотиком был интерактивный командный отладчик debug.exe

у него была команда ассемблирования А переводившая простенкие асм команды в маш код

это дело можно было сохранять и тем самым создавать исполняемые .сom файлы.

посредством редиректа(недо HEREDOC) можно было использовать debug вкачестве недо ассемблера.

пример : from kipirvine.com/asm/debug/Debug_Tutorial.pdf

All of the commands and instructions may first be placed a text file, which we will call a script file. When Debug is run from DOS, you can use a redirection symbol (<) to tell it toB.5

USING SCRIPT FILES WITH DEBUG

read input from the script file instead of the console. For example, assume that a script

file called input.txt contains the following lines:

a 100

mov ax,5

mov bx,10

add ax,bx

int 20

(blank line)

Q

(Always remember to put a Q on a line by itself at the end of your script file. The Q command returns to the DOS prompt.)

Debug can be executed, using the script file as input:

debug < input.txt

If you are running in a task-switching environment such as Windows, you can edit and save the script file with the Notepad editor or DOS Edit (in a separate window). Then switch back to a window in which you are running Debug. In this way, a program may be modified, saved, assembled, and traced within a few seconds. If you would like the output to be sent to a disk file or the printer, use redirection operators on the DOS command line: debug < input.txt > prn debug < input.txt > output.txt (printer) (disk file)

можно ли для gdb писануть эдакий HEREDOC результатом выполнения которого будь создание исполнимого(в маш кодах) файла ?

можно. У gdb есть транслятор asm в прямой байт код, есть биндинги для питона и на них можно накодить что угодно, хоть вызов внешнего компилятора. Но зачем?

mashina ★★★★★ ()

можно было использовать debug вкачестве недо ассемблера.

Я пробовал это делать, и это ад. Успешно можно использовать только для cli; jmp 100.

i-rinat ★★★★★ ()

можно ли для gdb писануть эдакий HEREDOC результатом выполнения которого будь создание исполнимого(в маш кодах) файла ?

можно, но я не осилил. Терпения не хватило. Но ты дерзай, и рассказывай о результатах.

emulek ()
Ответ на: комментарий от emulek

http://minnie.tuhs.org/cgi-bin/utree.pl?file=PWB1/root/etc/shutdown

в частности

. . .

ed - /tmp/shutdown

g/shutdown/d

/^ 0 /d

1,$s/^\(.\{6\}\)\(.\{10\}\)\(.\).*/\1\3/

g/^.\{6\}-$/d

1,$s/^\(.\{6\}\).*/\1/

g/$$/d

1,$s/\(.*\)/kill -9 \1/

w

q

старый pwb (и вообще )shell синтаксис

ed я упомянул как пример управляемого скриптом интерактивного командного инстумента

qulinxao ★★☆ ()
Последнее исправление: qulinxao (всего исправлений: 2)
Ответ на: комментарий от emulek

ничё не мешает

просто если обучать программированию через скриптование ed'а по началу затем зашеливания последовательностьей затем либо sed(ну это экстим) либо Бурновский шелл со стандартыми операторами ( выбор по условию и цикл) затем прикручивание компилируемого(С) тока из за скорости .

т.е интерактивный управляемый отладчик со способности ассемблировать простенькие утилитки - вплоть до динамического создания нужного бинарника в прошитыми констатнами получеными как аргументы вызова шел-скрипта.

qulinxao ★★☆ ()
Ответ на: комментарий от qulinxao

просто если обучать программированию через скриптование ed'а по началу затем зашеливания последовательностьей затем либо sed(ну это экстим) либо Бурновский шелл со стандартыми операторами ( выбор по условию и цикл) затем прикручивание компилируемого(С) тока из за скорости .

я надеюсь ты не работаешь учителем информатике в школе, куда мой сын ходит?

т.е интерактивный управляемый отладчик со способности ассемблировать простенькие утилитки - вплоть до динамического создания нужного бинарника в прошитыми констатнами получеными как аргументы вызова шел-скрипта.

тут после каждой фразы нужно вставить «не нужно».

emulek ()
Ответ на: комментарий от rogerw

Теоретически там можно сделать любой файл. Фактически ограничивается com'ами, да.

i-rinat ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.