
Turbo Assembler — удачный пакет разработки DOS программ.
Изучать ассемблер мы начнём со знаменитого TASM. В годы господства MS-DOS Турбо ассемблер от Borland был одним из самых распространённых средств создания программ, составляя конкуренцию MASM. Очень продуманный и приятный ассемблер, создающий хороший код. Скачать TASM можно с нашего сайта — ссылка на архив в конце статьи.
Мы создадим простейшую программу и на её примере рассмотрим основные этапы разработки приложений. Программа после запуска выведет на экран сообщение «Hello World!» и завершится. Вначале не будем пользоваться средой программирования TASMED, а сделаем всё ручками, используя текстовый редактор и Турбо Ассемблер.
Этапы создания программы с использованием TASM.
Создание программы, которая будет работать в операционной системе MS-DOS включает в себя следующие шаги:
- Написание кода(текстовый редактор или среда разработки).
- Трансляция (tasm.exe).
- Компановка или линковка (link.exe).
Результат вышеназванных действий — создание исполняемого файла (EXE или COM). Далее следует: - Отладка (отладчик Turbo Debugger, дезассемблер Sourcer или IDA).

Рассмотрим поподробнее каждый из этапов.
- Код пишем на ассемблере. Можно использовать простой текстовый редактор. Основное требование — кодировка ASCII. Большинство текстовых редакторов, как простых, так и более сложных во времена DOS работали с текстом указанной кодировки.
- Трансляция (компиляция) представляет собой перевод языка программирования в машинный код. В результате трансляции получается объектный файл с расширением OBJ. В TASM трансляция выполняется с помощью tasm.exe.
- Компановка (линковка) программы выполняет две задачи:
- Соединение объектных файлов между собой.
- преобразование из формата объектного файла в формат исполняемого файла (в системе MS-DOS — это файлы с расширением COM, EXE).В результате линковки создаётся исполняемый файл. В TASM компоновка выполняется с помощью tlink.exe.
Трансляция и линковка.
Зачем создание программы разделено на две части — трансляцию и линковку:
- Для того, чтобы дать возможность разделить работу по написанию кода на определённое число программистов — каждый пишет свой набор функций и сохраняет код в виде объектного файла. Затем объектные файлы соединяются
и получается полноценный программный продукт. - Чтобы можно было скрывать исходный код программ, продавая «полуфабрикат» — объектный файл (*.obj).
- Для ускорения просчёта машиной больших по объёму программ. Во времена дефицита мощности процессоров это было важно. Если проект большой, то предварительно скомпилированная часть кода (уже проверенная и отлаженная) существенно разгружала компьютер.
- Для совместимости использования различных ассемблеров (masm, tasm) — объектный файл стандартный и компонуется (линкуется) различными видами ассемблеров.
- Для быстрого и удобного переноса кода, написанного на ассемблере в программы на Си, C++. Такая же история: *.obj файлы, генерированные TASM замечательно воспринимается Turbo C, Turbo C++ и другими линкерами языков высокого уровня.
К слову сказать, не все ассемблеры имеют «двухпроходный» подход к созданию кода. Например, Fasm (очень хороший ассемблер), создаёт программу одним действием. *.obj файл не создаётся. Это несколько усложняет вставки написанного на Fasm кода в проекты, созданные другими средствами разработки программ. В принципе, это основной недостаток Fasm, с лихвой перекрывающийся остальными его достоинствами.
Впрочем, в настоящее время всё выглядит немного иначе. Царствуют на рынке среды разработки программ, подходящие к вопросам совместимости эгоистично (Embarcadero RAD Studio, MS Visual Studio).
Для удобства создания программ, можно создать отдельные «батники», куда вписать команды трансляции и компоновки.
Скачать TASM можно по нашей ссылке.
Вы можете скачать TASM по ссылке с нашего сайта. Кроме TASM для DOS в архиве вы найдёте все необходимые программы для разработки приложений в операционной системе MS-DOS, которые Вам понадобятся при прохождении нашего курса обучения.
В директории «TASM» имеются необходимые «батники» (ASM-COM.BAT, ASM-EXE.BAT, COMPLEX.BAT) для создания исполняемых файлов *.com, *.exe, сборки кода из нескольких ассемблерных (*.asm) файлов. Для их правильного использования, необходимо, чтобы файлы с кодом на ассемблере имели следующие имена:
- prg.asm (ASM-COM.BAT, ASM-EXE.BAT).
- prg.asm, prg1.asm (COMPLEX.BAT).
Более подробно — в следующей статье, где мы напишем нашу первую программу на ассемблере.