Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65104
Модуль Forms 64885
Пример работы с... 63354
ТЕХНОЛОГИИ ДОСТ... 61582
Имитационное мо... 57447
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

Пользователей: 13,081
новичок: Abdukarimov A
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Программа тестирования и обучающая программа по математике на Turbo Pasc...
Моделирование интернет кафе на GPSS + Отчет
Создание последовательности окон и передвижение окон по экрану на Turbo ...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Особенности разработки программ в MASM
Для успешной работы с ассемблером MASM корпорации Microsoft в современных
операционных средах (Windows NT\2000\XP) необходимо иметь версию 6.13 этого
пакета или выше. В него входят следующие основные программы:
^ masm.exe — ассемблер;
* ml.exe — ассемблер и компоновщик (Masm and Link);
s link.exe — компоновщик;
« cv.exe — отладчик (CodeView);
* lib.exe, implib.exe, nmake.exe, cref.exe, h2inc.exe, exehdr.exe, cvpack.exe, helpmake.exe,
rm.exe, undel.exe, exp.exe — вспомогательные утилиты.
В пакете MASM изначально предпринимались попытки совместить удобство
средств программирования, свойственных языкам высокого уровня, с традицион-
ными средствами машинно-ориентированных языков. Например, буква «М» в на-
звании пакета означает слово «macro», то есть возможность создания макроопре-
делений (или макросов), представляющих собой именованные группы команд. Их
можно вставлять в программу в любом месте, указав только имя группы. Когда-то
такая возможность действительно была отличительным свойством этого пакета,
но сейчас этим никого не удивишь — макросредства есть во всех ассемблерах для
платформы Intel (например, TASM), но, тем не менее, название осталось.
С помощью пакета MASM разработка программ выполняется традиционным
для ассемблерного программирования способом — запуском отдельных программ
трансляции, компоновки и отладки. Для этого используются программы masm.exe,
ml.exe, link.exe и cv.exe. Во избежание путаницы необходимо отметить, что транс-
ляция исходного файла может производиться двумя программами: masm.exe и
ml.exe. В чем разница? До выхода MASM версии 5.1 включительно программа
masm.exe была самостоятельным транслятором ассемблера. Начиная с MASM вер-
сии 6.0 трансляция ассемблерного файла обычно выполняется программой ml.exe,
которая кроме трансляции файла вызывает компоновщик link.exe. Это изменение
сделано с целью унификации вызовов компиляторов командной строки для всех
поддерживаемых этой фирмой языков программирования. К примеру, компиля-
цию программы на языке С из командной строки выполняет программа cLexe. Ее
задачи — компиляция исходной программы на языках C/C++ и, при отсутствии
синтаксических ошибок, компоновка и формирование исполняемого модуля. Ана-
логичные задачи решает и программа ml.exe. Хотя в пакете MASM 6.13 допустимо
использование программы masm.exe, нужно иметь в виду, что запуск link.exe в этом
случае также должен выполняться отдельно. Наличие программы masm.exe в паке-
те MASM 6.13 можно объяснить соображениями совместимости с предыдущими
версиями пакета, поэтому особого смысла в ее использовании нет.
Далее приведены форматы командных строк для запуска программ ml.exe,
masm.exe и link.exe, а описание их ключей можно найти в приложении В (http://
www.piter.com/download).
Командная строка ml.exe имеет вид
ml [ключи] исх_файл_1 [[ключи] исх_файл_2] . . . [/link ключи_11пК]
Ключи командной строки для ml.exe чувствительны к регистру.
Командная строка masm.exe имеет вид
masm [ключи] исх_файл [, [объектный_файл] [, [файл_листинга]
[, [файл_перекрестных_ссылок]]]]
Компоновщик компонует (объединяет) объектные файлы и библиотеки в ис-
полняемый файл или динамически компонуемую библиотеку (DLL). Командная
строка Link.exe имеет вид
link [ключи] объект_файлы [,[исполн_файл][,[файл_карты][,[файлы_6иблиотек]
[ , [ с ! е т _ ф а й л ] ] ] ] ] [ ; ]
Так же как и в случае пакета TASM, для эффективной работы с MASM нужно
провести некоторую дополнительную работу. Исполняемые файлы пакета
MASM 6.13 находятся в двух каталогах: ..\ВШ и ..\BINR. Для удобства работы их
лучше объединить в одном каталоге, к примеру, в каталоге ..\WORK. После этого
остается поместить туда исходный файл. Пример командной строки для получе-
ния пригодного к отладке исполняемого модуля может быть следующим:
M L . E X E /Zi /Fl Prg_6_l.asm
Если нет синтаксических ошибок, то можно запускать отладчик:
CV.EXE PRG_6_1.EXE
Опубликовал Kest January 04 2009 00:44:41 · 0 Комментариев · 10356 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
EMS QuickExport S...
EditNew
FileFind
WAP версия сайта
PHP, MySQL и Drea...
Assembler. Учебни...
Распознавание иде...
Векторный редакто...
Error mod
EditButton
Платформа програм...
Программа рисует ...
Illusion
PHP: Полезные приемы
Программирование ...
IMtale
iChat v.7.0 Final...
DeleteEdit
Сапёр
CABfiles

Топ загрузок
Приложение Клие... 100466
Delphi 7 Enterp... 86648
Converter AMR<-... 20077
GPSS World Stud... 12670
Borland C++Buil... 11760
Borland Delphi ... 8558
Turbo Pascal fo... 7037
Visual Studio 2... 4998
Калькулятор [Ис... 4762
FreeSMS v1.3.1 3541
Случайные статьи
Процессоры Intel P...
Обработка транзакц...
Операторов typedef
MultiLength
Внедрение решенияП...
Да, Microsoft чрез...
Язык С: литералы с...
Логические схемы а...
Все о языках-прогр...
Определить инициал...
Функция GetColor -...
Перед каждой транс...
Проверка кода
Классы vector, lis...
Создание настраива...
другого пользователя
База знаний - книги
Легенда
Целые числа в диап...
Имитация файлов и ...
СИСТЕМА ОБСЛУЖИВАН...
Приемы эквивалентн...
Переопределение и ...
Различные ограниче...
Как узнать свой снилс
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?