Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Линковка 
:(
    Опции темы
alligator
Дата 27.7.2004, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Купил книжку по Асму начал читать и застрял на первой программе..... помогите пожалуйста!!
Код
codseg segment
assume cs:codseg, ds:codseg, ss:codseg, es:codseg
org 100h
begin:
jmp beg_code
text db "First Program",0
beg_code:
mov ax,cs
mov ds,ax
lea dx,text
mov ah,9
int 21h
mov ah,4ch
int 21h
codseg ends
end begin


Компилирую так:
@echo off
bin\ml test.asm /AT
pause
Вот такую штуку пишет ((

Microsoft ® Macro Assembler Version 6.14.8444
Copyright © Microsoft Corp 1981-1997. All rights reserved.

Assembling: test.asm
Microsoft ® Incremental Linker Version 5.12.8078
Copyright © Microsoft Corp 1992-1998. All rights reserved.

/z2
"test.obj" /t
"test.com"
NUL
LINK : warning LNK4044: unrecognized option "z2"; ignored
LINK : warning LNK4044: unrecognized option "t"; ignored
test.obj : warning LNK4033: converting object format from OMF to COFF
test.obj : fatal error LNK1190: invalid fixup found, type 0x0001
Для продолжения нажмите любую клавишу . . .

Это сообщение отредактировал(а) alligator - 27.7.2004, 15:23
PM MAIL   Вверх
cardinal
Дата 27.7.2004, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


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

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



А какие файлы еще в директории bin сидят? По идее перед тем как линковать надо помоему тебе сначало откомпилировать твой asm файл (получишь obj файл). А уже потом как бы линковать. А что в книжке твоей по этому поводу написано?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
alligator
Дата 27.7.2004, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Дык он должен автоматом делать всё
PM MAIL   Вверх
cardinal
Дата 27.7.2004, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


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

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



Попробуй так и посмотри скомпилирует он что-нибудь или нет, если нет, то и линковаться ничего не будет. Тогда неправильно что-то списал. Если все правильно, то изучай option'ы linker'а.

@echo off
bin\ml test.asm /AT /c
pause

Вот тут написано все про MS MASM
http://webster.cs.ucr.edu/AsmTools/MASM/MA...SMReference.pdf

Напиши как что нового будет...


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Jin X
Дата 27.7.2004, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



У меня такое чувство, что masm32 вообще не способен генерить проги в DOS-формате. Решить проблему можно используя линкер из TASM'а (tlink):
Код
ml /c /AT ИмяФайла
tlink /t /x ИмяФайла
Да и вообще tasm для DOS-прог лучше (сейчас придёт oleg1973 и скажет, что лучше FASM biggrin.gif).
p.s. Старый tlink 3.01 тоже покатит >скачать< smile.gif

Это сообщение отредактировал(а) Jin X - 27.7.2004, 21:19
--------------------
Бойся своей мечты, ибо она осуществима!
PM MAIL   Вверх
oleg1973
Дата 27.7.2004, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


asm fanat
****


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

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



Jin X
я уже пришел biggrin.gif biggrin.gif biggrin.gif и совершенна верно что рулит фасм biggrin.gif
alligator
береш этот самы фасм и делаеш
Код

org 100h
begin:
jmp beg_code
text db "First Program",0
beg_code:
mov ax,cs
mov ds,ax
mov dx,text
mov ah,9
int 21h
mov ah,4ch
int 21h

нажимаеш F9 и получаеш готовый файл


--------------------
SST 465555
icq 200-512-712
PM MAIL WWW ICQ   Вверх
alligator
Дата 28.7.2004, 04:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Проста если я возьму другой компилер мне будет неудобно учить по книге асм ((
пасиба попробую откомпилить
Добавлено @ 04:28
cardinal ошибки перестали вылезать но файлик не появляеться
PM MAIL   Вверх
alligator
Дата 28.7.2004, 05:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Попробовал так скомпилить его
ml /c /coff 1.asm
link /SUBSYSTEM:WINDOWS /OPT:NOREF 1.obj
теперь другая штука вылазит
---------------------------------------------------------------------------------------------
Microsoft ® Macro Assembler Version 6.14.8444
Copyright © Microsoft Corp 1981-1997. All rights reserved.

Assembling: 1.asm
1.asm(17) : warning A4023: with /coff switch, leading underscore required for st
art address : begin
Microsoft ® Incremental Linker Version 5.12.8078
Copyright © Microsoft Corp 1992-1998. All rights reserved.

LINK : error LNK2001: unresolved external symbol _begin
1.exe : fatal error LNK1120: 1 unresolved externals
Для продолжения нажмите любую клавишу . . .

PM MAIL   Вверх
Uri
Дата 28.7.2004, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Ты используешь 32-разрядный ассемблер и линкер, которые НЕ СОЗДАЮТ старый 16-разрядный код. Используй для этого пакет tasm. Кстати, он поддерживает синтаксис masm, так что проблем с книгой не будет.

А вообще - переходи на fasm. Намного меньше интерфейсных заморочек и намного более мощный макроязык.

PM   Вверх
oleg1973
Дата 28.7.2004, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


asm fanat
****


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

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



Jin X
вот видиш в нашем полку любителей фасм прибыло biggrin.gif
Uri
так держать smile.gif


--------------------
SST 465555
icq 200-512-712
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm: Общие вопросы"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

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

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


 




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


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

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