Навигация
Главная
Поиск
Форум
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
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
ТЕХНОЛОГИИ ДОСТ... 62980
Имитационное мо... 58320
Реклама
Сейчас на сайте
Гостей: 6
На сайте нет зарегистрированных пользователей

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

Моделирование ЭВМ на GPSS (три класса заданий) + Пояснительная записка
Моделирование работы участка термической обработки шестерен на GPSS + По...
База данных склада на Delphi + Схема БД

Реклама



Подписывайся на 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 Комментариев · 10468 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
PHP: Полезные приемы
DCMintry
WAP версия сайта
BDEPack
Dbgridpack
Java в примерах -...
Pro-Download Sys...
PHP глазами хакера
База Allsubmitter...
Delphi7 Для профе...
Программирование ...
XPATComponents
SUIPack
C# в кратком изло...
PHP 5
PRNDbgrid
Пишем программы и...
База каталогов ( ...
Основы программир...
Определние размер...

Топ загрузок
Приложение Клие... 100477
Delphi 7 Enterp... 87854
Converter AMR<-... 20082
GPSS World Stud... 13481
Borland C++Buil... 12053
Borland Delphi ... 8668
Turbo Pascal fo... 7048
Visual Studio 2... 5005
Калькулятор [Ис... 4906
FreeSMS v1.3.1 3545
Случайные статьи
Интернет-ресурсы и...
Invalid numeric fo...
е. можно включить ...
Контроль перегрузки
Использование прог...
Программный интерфейс
Некоторые пытаются...
Процедуры и функци...
Сколько еще будет ...
Регистрация ИП Москва
RFC 1918 Это значи...
Вводная информация
Он установил для э...
Применение вычисли...
Настройки обсуждения
Процесс создания и...
Как из Delphi созд...
База данных на пас...
Прослушивание сооб...
Какие маршруты соз...
Как быть, если при...
Добавляем Cookies
Легенда
Адаптеры функторов
Основы алгоритмиза...
Статистика



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


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