![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Нужно скомпилить код в бинарник. Не в exe или какой-нибудь elf, а в простой машинный код, без заголовков и прочей ереси. Должно получиться нечто на подобие .COM (только 32-битное). Мне не важно, какой язык, си или делфи. Главное - чтоб поддерживался встроенный ассемблер.
Кто-нибудь знает, чем и как это скомпилить? GCC/TCC/.../хзCC не предлагать, вся эта коллекция ГНУтых компиляторов не знает нормального встроенного ассемблера. Я уже пробовал ими компилить. |
|
#2
|
|||
|
|||
|
масм или тасм
|
|
#3
|
||||
|
||||
|
Цитата:
Последний раз редактировалось Bargest, 28.09.2011 в 20:12. |
|
#4
|
||||
|
||||
|
Код:
gcc --save-temps ... gcc -i ... А зачем тебе, собственно, требуется это действие? Может, есть пути проще? |
|
#5
|
||||
|
||||
|
Я уже через Gcc и Tcc компилил сразу в bin. Все ок, только встроенная асма там, очень мягко выражаясь, идиотская. ИМХО это -
Код:
__asm__ __volatile__(
"rep ; movsl\n\t"
"testb $2,%b4\n\t"
"je 1f\n\t"
"movsw\n"
"1:\ttestb $1,%b4\n\t"
"je 2f\n\t"
"movsb\n"
"2:"
: "=&c" (d0), "=&D" (d1), "=&S" (d2)
:"0" (n/4), "q" (n),"1" ((long) to),"2" ((long) from)
: "memory");А нужно это затем, что я пишу прогу для загрузочной флешки, она должна работать без оси. Писать весь код на асме не охота. Поэтому сейчас асмовый загрузчик и дальше хочу использовать высокоуровневые ЯП. |
|
#6
|
||||
|
||||
|
|