Як спростити компіляцію програм на асемблері
Як відомо, компілятори асемблера працюють в командному рядку, і, найчастіше, не мають свого текстового редактора. А якщо й мають - то без синтаксичної підсвічування. Так що для набору програми можна користуватися редактором начебто Bred, а як без проблем компілювати - я покажу
Інструкція
1 крок
Визначимося з папками. Припустимо, компілятор MASM в папці C: masm32 bin, а код програми - файл С: masm32 projects proba proba.asm
Створюємо в папці з кодом програми текстовий файл і перейменовуємо в "compile.bat".
2 крок
Відкриваємо і вводимо (або копіюємо звідси):
cd .. .. bin
echo -------- ASSEMBLING --------
ml / c / coff ".. projects proba proba.asm" / Fo "proba.obj"
echo -------- LINKING --------
link /SUBSYSTEM:WINDOWS /OUT: "Proba.exe" "proba.obj"
echo -------- MOVING --------
move / Y proba.obj .. projects proba
move / Y proba.exe .. projects proba
pause
cd .. projects proba
proba.exe
pause
Тепер розглянемо, що ж робить даний файл при запуску
3 крок
> Cd .. .. bin
Переходимо з папки з кодом програми (С: masm32 projects proba ) в папку з компілятором (C: masm32 bin)
4 крок
> echo -------- ASSEMBLING --------
> Ml / c / coff ".. projects proba proba.asm" / Fo "proba.obj"
В консоль виводиться повідомлення, що йде компіляція, після чого запускається компіляція файлу з кодом програми. Результат - об'єктний файл C: masm32 bin proba.obj
5 крок
> echo -------- LINKING --------
> Link /SUBSYSTEM:WINDOWS /OUT: "Proba.exe" "proba.obj"
В консоль виводиться повідомлення про лінковке, після чого запускається лінковщік. Результат - програмний файл C: masm32 bin proba.exe
6 крок
> echo -------- MOVING --------
> Move / Y proba.obj .. projects proba
> Move / Y proba.exe .. projects proba
В консоль виводиться повідомлення про переміщення файлів, файли proba.obj і proba.exe переміщуються в папку з кодом програми
7 крок
> Pause
> Cd .. projects proba
> Proba.exe
> Pause
Чекаємо натискання клавіші (щоб користувач міг переглянути результати компіляції), після цього переходимо назад у вихідну папку і запускаємо програму. Остання пауза - щоб консольне вікно не закрилося, поки користувач не натисне будь-яку кнопку ще раз (її можна прибрати).
8 крок
lt; ШАБЛОН>
Якщо ви зберігати в папці projects багато проектів, то можна зробити шаблон файлу "compile.bat", і потім для кожного нового проекту лише робити дві заміни (блокнотом, або Bred'ом, або будь-який інший програмою). Для проекту projects newproject main.asm потрібні дві заміни: "{folder}" # 8594- "newproject", "{file}" # 8594- "main".
Текст шаблону:
cd .. .. bin
echo -------- ASSEMBLING --------
ml / c / coff ".. projects {folder} {file} .asm" / Fo "{file} .obj"
echo -------- LINKING --------
link /SUBSYSTEM:WINDOWS /OUT: "{File} .exe" "{file} .obj"
echo -------- MOVING --------
move / Y {file} .obj .. projects {folder}
move / Y {file} .exe .. projects {folder}
pause
cd .. projects {folder}
{File} .exe
pause