CodeNet / Языки программирования / Ассемблер / СПРАВОЧНИК по системе программирования ТУРБО АССЕМБЛЕР 2.0
СПРАВОЧНИК по системе программирования ТУРБО АССЕМБЛЕР 2.0
Требования к программному и аппаратному обеспечению ----------------------------------------------------------------- Турбо Ассемблер работает на компьютерах семейства IBM PC, включая модели XT, AT и PS/2, а также на полностью совместимых с ними компьютерах. Для работы Турбо Ассемблера требуется операци- онная система MS-DOS (версии 2.0 или более поздняя) и не менее 256К оперативной памяти. Турбо Ассемблер генерирует инструкции процессоров 8086, 80186, 80286 и 80386, а также инструкции с плавающей точкой для арифметических сопроцессоров 8087, 80287 и 80287. О данном руководстве ----------------------------------------------------------------- Описание Турбо Ассемблера поставляется в виде двух пособий: "Руководства пользователя по Турбо Ассемблеру" (данный текст) и "Справочного руководства по Турбо Ассемблеру". В "Руководстве пользователя" даются основные инструкции по использованию Турбо Ассемблера и приводится исчерпывающее руководство по программиро- ванию на Турбо Ассемблере. В "Справочном руководстве" описываются операторы, предопределенные символы и директивы, используемые Турбо Ассемблером. Рассмотрим содержание "Руководства пользователя" более под- робно. Руководство пользователя ----------------------------------------------------------------- В Главе 1 "Установка Турбо Ассемблера в системе" рассказы- вается о файлах, содержащихся на дистрибутивном диске, и о том, что нужно делать, чтобы установить в системе Турбо Ассемблер. В Главе 2 "Начало работы с Турбо Ассемблером" содержится введение в язык программирования Ассемблер и приводится несколько простых программ, чтобы познакомить вас с параметрами, используе- мыми в командной строке. В Главе 3 "Работа с командной строкой" подробно описываются все параметры командной строки, а также рассказывается о файле конфигурации и командных файлах. В Главе 4 "Природа языка Ассемблера" обсуждаются компьютеры в целом и процессор 8088 в частности. В Главе 5 "Основные элементы программы на Ассемблере" описы- ваются основные компоненты Ассемблера, приводится некоторая необ- ходимая информация о его директивах, инструкциях, обращению к па- мяти, сегментах и т.д. В Глава 6 "Более подробно о программировании на Ассемблере" развивается тема Главы 5: более подробно рассказывается о прог- раммировании на Турбо Ассемблере, обсуждаются некоторые преиму- щества Турбо Ассемблера, более детально описываются директивы, строковые инструкции и т.д. В данной главе приводятся также неко- торые типичные ошибки, с которыми вы можете встретиться при прог- раммировании. В Главе 7 "Интерфейс между Турбо Ассемблером и Турбо Си" описывается, как использовать совместно с языком Ассемблера язык программирования высокого уровня Турбо Си. Уточняется, как можно компоновать модули Ассемблера с модулями Турбо Си, а также как вызывать из Турбо Си функции Турбо Ассемблера. В Главе 8 "Взаимодействие Турбо Ассемблера с Турбо Паскалем" рассказывается, как можно организовать в ваших программах на язы- ке Ассемблера интерфейс с Турбо Паскалем. В качестве примеров приводятся простые программы. В Главе 9 "Развитое программирование на Турбо Ассемблере" более подробно освещается все то, о чем рассказывалось в предыду- щих частях (префиксы переопределения сегментов, макрокоманды, директивы определения сегментов и т.д.). В Главе 10 "Процессор 80386 и другие процессоры" описывается программирование с использованием процессора 80386. В Главе 11 "Улучшенный режим Турбо Ассемблера" рассказывает- ся об улучшенном режиме (Ideal Mode) и для чего его желательно использовать. Руководство дополнено также тремя приложениями. В первых двух приложениях описывается интерфейс Турбо Ассемблера с Турбо Бейсиком и Турбо Прологом, а последнее посвящено ответам на общие вопросы. Соглашения по обозначениям ----------------------------------------------------------------- В данном руководстве используются следующие соглашения: Обозначение | Описание обозначения -------------------------------------------------------------- | Столбец из точек перед строками, где описыва- . | ется синтаксис или приводится пример програм- . | мы, говорит о том, что фрагмент программы . | опущен. | выражение | Слова, указанные в примерах строчными буква- | ми, показывают, что вместо них должны быть | подставлены значения. Например, ниже при- | веден синтаксис оператора ОFFSET: | | OFFSET выражение | | Он показывает, что за оператором OFFSET мо- | жет следовать любое выражение. При записи | исходного кода в соответствии с этим синтак- | сисом вы можете записать: | | OFFSET here+6 | | где here+6 является выражением. | [[необ_элем]] | В двойные квадратные скобки заключается не- | обязательный синтаксический элемент. Напри- | мер, синтаксис индексного оператора показан | следующим образом: | | [[выраж.1]][выраж.2] | | Это указывает на то, что "выраж.1" является | необязательным, поскольку оно заключено в | двойные квадратные скобки. Однако "выраж.2" | является обязательным и должно быть заключено | в скобки. | | При записи кода, соответствующего данному | синтаксису, вы должны записать [bx], отбросив | необязательное "выраж.1", или ввести test(5), | используя test в качестве "выраж.1". | {выбор1|выбор2}| Фигурные скобки и вертикальные разделители | указывают на необходимость выбора между двумя | или более элементами. Варианты выбора заклю- | чаются в фигурные скобки и разделяются верти- | кальной чертой. Вы должны выбрать один из ва- | риантов. | | Например, необязательный параметр /W (уровень | предупреждающих сообщений об ошибке) имеет | следующий синтаксис: | | /W{0|1|2} | | Вы можете ввести /W0, /W1 или /W2, указав та- | ким образом желаемый уровень предупреждений. | Однако указывать /W3 не допускается, посколь- | ку 3 не содержится ни в одном из вариантов | выбора, которые указаны в фигурных скобках. | Повторяющиеся | Три точки, следующие за элементами, показыва- элементы... | ют, что можно в таком же виде ввести большее | количество элементов. Ниже, например, приве- | ден синтаксис директивы PUBLIC: | | PUBLIC имя[[,имя]]... | | Точки за вторым элементом "имя" указывают, | что вы можете ввести столько имен, сколько | захотите, пока каждому из них будет предшест- | вовать запятая. Однако, поскольку первое имя | не заключено в квадратные скобки, вы должны | ввести по крайней мере одно имя. | Определяемые | В кавычки заключаются определяемые в тексте термины и | термины. Например, термин "промежуточный", "подсказки" | если он определяется в первый раз, заключает- | ся в кавычки. | НАЗВАНИЯ КЛАВИШ| Заглавными буквами указываются также названия | клавиш и последовательностей клавиш, которые | вы должны нажимать. В качестве примеров можно | привести ENTER и CONTROL+C. -------------------------------------------------------------- Пример: В следующем примере показано, как в данном руковод- стве используются соглашения по обозначениям. TASМ[[необяз_параметры]] исх_файл[[, [[объектн_файл]][[, [[файл_листинга]][[, [[файл_перекр_ссылок]]]]]]]][[;]] Этот синтаксис показывает, что вы должны сначала ввести имя программы (TASM), затем можно ввести какое-то количество необяза- тельных параметров, обязательно нужно ввести имя исходного файла "исх_файл", затем можно ввести имя объектного файла "объектн_файл", перед которым ставится запятая, и можно ввести также имена файла листинга "файл_листинга" (перед ним также должна указываться запятая, отделяющая это имя от имен объектного и исходного файлов) и имя файла перекрестных ссылок "файл_перекр_ссылок" (перед ним также нужно указать запятую, от- деляющую это имя от имен остальных файлов). Когда в руководстве речь идет о компьютерах IBM PC и совмес- тимых с ними, то под этим мы подразумеваем любой компьютер, в котором используется процессор 8088, 8086, 80186, 80286 или 80386 (все процессоры этой серии мы обозначаем обычно, как 80х86).