Преобразование кода сборки в машинный код - PullRequest
4 голосов
/ 03 марта 2010

Мой вопрос: как я могу узнать заменяемый машинный код из инструкций ассемблерного кода? А как написать бинарный файл, который можно выполнить? Спасибо.

Ответы [ 4 ]

4 голосов
/ 03 марта 2010

Если у вас есть фрагмент кода сборки и вы хотите его выполнить, сначала вам нужно будет запустить его через ассемблер для создания двоичного файла. Доступно несколько ассемблеров, я бы рекомендовал начать с NASM , поскольку он довольно популярен и работает на нескольких платформах.

Затем, чтобы собрать / связать вашу программу, просто запустите:

nasm -o object.o your-source-file.asm
ld -s -o your-output-executable object.o
0 голосов
/ 03 марта 2010

Если вы используете Windows, просто сделайте следующее: перейдите в Run и напишите cmd, затем запишите debug write a100, затем напишите любую инструкцию по сборке, затем нажмите enter, напишите r, тогда машинный код вашей инструкции по сборке появится с левой сторонычерный экран Dos.Я надеюсь, что это поможет некоторым.

0 голосов
/ 03 марта 2010

Какой язык ассемблера вы используете? Это определит программу, которую вы используете для компиляции кода сборки в машинный код. Если вы опубликуете фрагмент своего ассемблерного кода, возможно, кто-то сможет его идентифицировать.

0 голосов
/ 03 марта 2010

Использовать cc -S file_name.c

Он заполнит вас ассемблерным кодом вашей программы c

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...