Создание двоичного вывода из MASM без заголовка

Когда я пишу какой-то код, который состоит из независимого от позиции кода, первая инструкция будет со смещением 0, так что я могу просто загрузить ее в память и перейти к ней. Как я могу создать такой bin-файл с помощью MASM, чтобы у него не было заголовка, а только данные, которые я помещаю в исходный файл?

Думаю, что-то похожее на старые программы COM. Но могу ли я создать COM-файл и по-прежнему использовать обычные 32-битные инструкции?


person Devolus    schedule 02.01.2014    source источник
comment
Предполагается, что программы MSDOS COM всегда загружаются по адресу 100h   -  person Seki    schedule 03.01.2014
comment
Да, я знаю. это был просто пример. Даже в этом случае, если бы точка входа всегда была в 100 часах, я все равно знал бы, где она, без необходимости разбирать какой-либо заголовок, что было точкой моего вопроса. Хотя, конечно, я предпочитаю, чтобы точка входа была 0.   -  person Devolus    schedule 03.01.2014


Ответы (1)


Я не знаю насчет MASM, но вы могли бы сделать это с помощью NASM:

org 0
bits 32

; code goes here

Собрать с nasm -f bin -o foo.bin foo.asm

person Michael    schedule 02.01.2014