Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с простейшей программой в MASM 
:(
    Опции темы
Proger89
Дата 6.4.2008, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 13.12.2007

Репутация: нет
Всего: нет



Здраствуйте.
Пршу помочь тех кто программировал когда либо под MASM.
Я попытался написать самую элементарную 16-ти разрядную программу под MASM (раньше писал всё в TASM) и сразу столкнулся с проблемой.
Вот код моей программы:

Код

; tmp.asm

.model small
.stack 100h
.data
    s1 db 'String$'
.code
start:
    mov    ax, @data
    mov    ds, ax

    mov    ax, 4c00h
    int    21h
end start
end


Вот bat-файл который я использую для компиляции:
Код

@echo off

if exist *.obj del *.obj
if exist *.exe del *.exe

\masm32\bin\ml /c /nologo *.asm

\masm32\bin\link %1.obj

pause


Во время выполнения данного bat-ника ассемблирование проходит успешно, но во время линковки возникает две ошибки:
Segment reference in fixup record
failure during conversation to COFF: file invalid or corrupt.

Подскажите как решить эту проблему. Зарание благодарен.

PM   Вверх
dumb
Дата 6.4.2008, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 7
Всего: 158



кратко: для сборки ДОС-овых программ используем соответствующие инструменты: если link, то не из состава пакета masm32, а из более старых версий masm'а, или tlink(опять же не 32 ни разу).

ps. http://forum.vingrad.ru/index.php?showtopi...t&p=1156173
PM MAIL   Вверх
Proger89
Дата 6.4.2008, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 13.12.2007

Репутация: нет
Всего: нет



Спасибо dumb. Всё заработало. 
Проблема было связано с тем что link пытался создать программу работающую в зашишенном режиме в котором нельзя изменять значения сегментных регистров?
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0723 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.