Ассемблер? Это просто! Учимся программировать (FAQ)
______________________________________
Выпуск N 006
Вопросы, которые поступили от подписчиков рассылки "Ассемблер? Это просто! Учимся программировать"
Дата выхода: 2001-05-21
Вопрос
1)Зачем нужен masm.exe, если все необходимое может зделать ml.exe,
2)Почему у меня не создается com файл (в командной строке Dos я набираю следуюшее С:\masm611\bin>ml.exe primer.asm /AT учитывая то что masm установлен по умолчанию).
Ответ
1) ml включает в себя masm и одновременно обеспечивает вызов линкера (link.exe). Для работы ml masm не нужен.
2) ml /?
ml [ /options ] filelist [ /link linkopts ]
Опции должны идти перед именем файла. (те ml /AT primer.asm)
И мне кажется могут быть ошибки, если в программе модель памяти установлена не TINY.
Отправил: Dron (dronv.chat.ru - Хочу свою операционную систему!)
Вопрос
Где можно скачать TASM?
Ответ
хм.. тасм можно скачать http://www.kalashnikoff.ru там сам найдёшь .:)
Отправил: sasha
Вопрос
Здравствуйте, эксперты.
При выполнении примера из части I возникла проблема следующего рода:
Набрал в Edit прогу (приведена ниже), сохранил ее. Далее в командной строке DOS ввел: ml.exe prog.asm /at. Результат:
Assembling: prog.asm
warning A4017:invalid command-line option: /at
Далее идет перечисление того, что было создано (.exe,obj,lst,...)
Link: warning L4021: no stack segment.
Судя по приложению 1 должен был получиться файл.com, а получился .exe и .obj.
Объясните ,пожалуйста, в чем ошибка. Спасибо. Жду ответа.
Ответ
Уважаемый Дмитрий!
Это типичная ошибка многих начинающих программистов.
В командной строке нужно указывать так:
ml.exe prog.asm /AT
Заметьте: AT должны быть ЗАГЛАВНЫМИ символами!!! MASM отличает в командной строке ЗАГЛАНЫЕ и строчные символы! Будьте внимательны!
(C) Москва, 2001. Авторское право принадлежит Калашникову О.А.
Публичное размещение материала из рассылки, а также его использование
полностью или частично в коммерческих или иных подобных целях без письменного
согласия автора влечет ответственность за нарушение авторских прав.