all-of-all.ru
Посмотреть
Статьи

Наши друзья

Спецпредложения интернет-магазина
 Статья / Техника / Инструкции / Компьютеры / Как упростить компиляцию программ на ассемблере

Как упростить компиляцию программ на ассемблере


 Николай Баранов, 23.04.2012 18:04:01
Как упростить компиляцию программ на ассемблере


(Нет голосов)
471 просмотров
В избранное
Комментировать(0)

Как упростить компиляцию программ на ассемблере


Как известно, компиляторы ассемблера работают в командной строке, и, чаще всего, не имеют своего текстового редактора. А если и имеют то без синтаксической подсветки. Так что для набора программы можно пользоваться редактором вроде Bred, а как без проблем компилировать я покажу

Инструкция

1 шаг


Определимся с папками. Предположим, компилятор MASM в папке C:masm32in, а код программы файл С:masm32projectsprobaproba.asm
Создаем в папке с кодом программы текстовый файл и переименовываем в compile.bat .

2 шаг


Открываем и вводим (или копируем отсюда):

cd ....in
echo - #8212; #8212; #8212; #8212; #8212; #8212;- ASSEMBLING - #8212; #8212; #8212; #8212; #8212; #8212;-
ml /c /coff ..projectsprobaproba.asm /Fo proba.obj
echo - #8212; #8212; #8212; #8212; #8212; #8212;- LINKING - #8212; #8212; #8212; #8212; #8212; #8212;-
link /SUBSYSTEM:WINDOWS /OUT: proba.exe proba.obj
echo - #8212; #8212; #8212; #8212; #8212; #8212;- MOVING - #8212; #8212; #8212; #8212; #8212; #8212;-
move /Y proba.obj ..projectsproba
move /Y proba.exe ..projectsproba
pause
cd ..projectsproba
proba.exe
pause

Теперь рассмотрим, что же делает данный файл при запуске

3 шаг

> cd ....in
Переходим из папки с кодом программы (С:masm32projectsproba) в папку с компилятором (C:masm32in)

4 шаг

> echo - #8212; #8212; #8212; #8212; #8212; #8212;- ASSEMBLING - #8212; #8212; #8212; #8212; #8212; #8212;-
> ml /c /coff ..projectsprobaproba.asm /Fo proba.obj
В консоль выводится сообщение, что идет компиляция, после чего запускается компиляция файла с кодом программы. Результат объектный файл C:masm32inproba.obj

5 шаг

> echo - #8212; #8212; #8212; #8212; #8212; #8212;- LINKING - #8212; #8212; #8212; #8212; #8212; #8212;-
> link /SUBSYSTEM:WINDOWS /OUT: proba.exe proba.obj
В консоль выводится сообщение о линковке, после чего запускается линковщик. Результат программный файл C:masm32inproba.exe

6 шаг

> echo - #8212; #8212; #8212; #8212; #8212; #8212;- MOVING - #8212; #8212; #8212; #8212; #8212; #8212;-
> move /Y proba.obj ..projectsproba
> move /Y proba.exe ..projectsproba
В консоль выводится сообщение о перемещении файлов, файлы proba.obj и proba.exe перемещаются в папку с кодом программы

7 шаг

> pause
> cd ..projectsproba
> proba.exe
> pause
Ждем нажатия клавиши (чтобы пользователь мог просмотреть результаты компиляции), после этого переходим обратно в исходную папку и запускаем программу. Последняя пауза чтобы консольное окно не закрылось, пока пользователь не нажмет любую кнопку ещё раз (её можно убрать).

8 шаг


< ШАБЛОН >
Если вы хранить в папке projects много проектов, то можно сделать шаблон файла compile.bat , и потом для каждого нового проекта лишь делать две замены (блокнотом, или Bred #8217;ом, или любой другой программой). Для проекта projects ewprojectmain.asm нужны две замены: {folder} #8594; newproject , {file} #8594; main .
Текст шаблона:
cd ....in
echo - #8212; #8212; #8212; #8212; #8212; #8212;- ASSEMBLING - #8212; #8212; #8212; #8212; #8212; #8212;-
ml /c /coff ..projects{folder}{file}.asm /Fo {file}.obj
echo - #8212; #8212; #8212; #8212; #8212; #8212;- LINKING - #8212; #8212; #8212; #8212; #8212; #8212;-
link /SUBSYSTEM:WINDOWS /OUT: {file}.exe {file}.obj
echo - #8212; #8212; #8212; #8212; #8212; #8212;- MOVING - #8212; #8212; #8212; #8212; #8212; #8212;-
move /Y {file}.obj ..projects{folder}
move /Y {file}.exe ..projects{folder}
pause
cd ..projects{folder}
{file}.exe
pause


Как упростить компиляцию программ на ассемблере
 Статья / Техника / Инструкции / Компьютеры / Как упростить компиляцию программ на ассемблере
 Николай Баранов, 23.04.2012 18:04:01

Назад в раздел

Самые интересные новости:

загрузка...