Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Первая прога, по книге Крупника "Изучаем Ассемблер" 
V
    Опции темы
IKM2007
Дата 31.7.2008, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


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

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



Всем добрый день.

В книге Крупника "Изучаем Ассемблер" написано последовательность шагов создания первой программы.
Скачал FAR1705 и MYASM.

Говориться создать командный файл amake.bat и поместить в одну из папок, указанных в переменной path. Я создал в C:\Program Files\Common Files\Autodesk Shared\.

Затем написано отправиться в папку, где храниться исходный текст программы("l11.asm"), набрать в командной строке оболочки (показано на рисунке) "amake l11" и Enter.(Но на рисунке ничего не видно.)Я открываю папку, где находится "l11.asm" и внизу окна FAR-а ввожу amake l11.

После этого в исходной папке должно появится два новых файла: l11.obj и l11.exe.Но этого не происходит.

Так где я должен вводить "amake l11" и что я не так деляю?
Заранее Спасибо.


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
Maka6er
Дата 31.7.2008, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 150
Регистрация: 27.2.2007
Где: Киев

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



А в самом amake.bat что прописано?

Я делаю так: 
создаю .bat файл с таким содержанием:
Код

С:\masm\ml.exe /c /Fl src.asm 
С:\masm\link.exe src.obj;
pause 

затем просто кидаю его в папку с программой и запускаю. И фар не нужен. А для редактирования кода мне больше Notepad++ по душе  smile 

; Вместо С:\masm\, src.asm и src.obj подставить свое
PM MAIL   Вверх
IKM2007
Дата 31.7.2008, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


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

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



Цитата(Maka6er @  31.7.2008,  14:35 Найти цитируемый пост)
А в самом amake.bat что прописано?

Код

ml /c /coff "%1.asm"
link /SUBSISTEM:CONSOLE "%1.obj"



Maka6er, скачал Notepad++ 5.02. Можешь пошагово сказать, что как делать(и еще какой нибудь рабочий код приведи).


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
Maka6er
Дата 31.7.2008, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 150
Регистрация: 27.2.2007
Где: Киев

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



Ну вот например helloworld:
Код

.model        small
.stack        100h                    
;*********************************************************************************
.code
start:        
            mov        ax,@data        
            mov        ds,ax           

            mov        dx,offset message
            mov        ah,9
            int        21h              
                
            mov        ax,4C00h
            int        21h              
;*********************************************************************************        
.data
            message db        "Hello World!",0Dh,0Ah,'$'
;*********************************************************************************        
end    start

Создаем файл src.asm с этим кодом. В ту же папку кидаем мой .bat. Запускаем его и получаем прогу.

;Уже 5.02 вышел, пора апдейтится smile
PM MAIL   Вверх
airyashov
Дата 1.8.2008, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



возможно файлы компилятора недоступны посмотрите в консоли что происходит при исполнение командного файла
ml /c /coff "%1.asm"
link /SUBSISTEM:CONSOLE "%1.obj"
или запустите консоль и наберите эти команды вручную




--------------------
icq:3(один)7748666
mail:airyashov( а )inbox.ru
PM MAIL   Вверх
Kellmir
Дата 1.8.2008, 09:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Учился по той же книжке
Код

.386
.model flat, stdcall
includelib \masm32\lib\kernel32.lib
ExitProcess proto :DWORD
.code
start:
mov eax, 8
add eax, 8
invoke ExitProcess, 0
end start 

.bat файл содержит
ml /c /coff "%1.asm"
link /SUBSYSTEM:CONSOLE "%1.obj"
в path добавил путь 
e:\masm32\bin
куда и сунул amake.bat
Потом захожу в папку с *.asm файлом через командную строку и пишу amake * (* - имя твоего файла)
у меня срабатывает, надеюсь поможет
P.S. 
Лично я не знал команд командной строки, сильно помогла команда HELP (а вообще смена директории - CHDIR нужный путь)  
PM MAIL   Вверх
IKM2007
  Дата 1.8.2008, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


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

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



Maka6er, сделал как ты сказал, написал твою прогу, создал .bat файл в папке с .asm файлом, но когда нажимаю Запуск в Notepad-е, просто открывается E: диск.Ничего не происходит
Твой в .bat файл написал так.
Код

 С:\ASM\BIN\ml.exe /c /Fl l11.asm 
С:\ASM\BIN\link.exe l11.obj;
pause

в командной строке появляется это
user posted image
Как я понимаю, все дело в path -е и .bat файле.
В path-е я должен добавить директорию с MYASM?То есть у меня C:\ASM\BIN\ 
Kellmir, а на FAR-е  в .bat файле пишу
Код

ml /c /coff "%1.asm"
link /SUBSYSTEM:CONSOLE "%1.obj"

и когда пишу "amake l11", появляеться вот это
user posted image

Два дня не могу настроить. smile 

У меня MYASM извлечен в папке C:\ASM\ , может это поможет.


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
Maka6er
Дата 1.8.2008, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 150
Регистрация: 27.2.2007
Где: Киев

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



Цитата(IKM2007 @  1.8.2008,  12:51 Найти цитируемый пост)
но когда нажимаю Запуск в Notepad-е

Не из Notepad запускать надо. Он только для редактирования кода. Надо bat-ник запустить, просто кликнуть на него.
PM MAIL   Вверх
Kellmir
Дата 1.8.2008, 14:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



ты в path что дописал?
Как я понимаю там должен быть путь как до ml и link, так и до amake.bat
Я это совместил (сунул amake.bat в e:\masm32\bin) и дописал путь к ним
Для тебя должно быть так 
1) в path дописываешь c:\asm\bin
2) в amake.bat
    
Код

    ml /c /coff "%1.asm"
    link /SUBSYSTEM:CONSOLE "%1.obj"

3) помещаешь amake.bat в c:\asm\bin
4) из папки с *.asm файлом в командной строке набираешь amake *
Вроде бы так, удачи
P. S.
Я забил на FAR  и пользуюсь командной строкой, мне так удобнее, но вольному воля 
PM MAIL   Вверх
IKM2007
Дата 1.8.2008, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


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

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



В .bat файле написал
Код

ml /c /coff l11.asm
link /SUBSYSTEM:CONSOLE l11.obj
pause

получилось  smile
Kellmir, 
Maka6er,
Большое Спасибо за помощь.(+1 репа) smile 


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
Kellmir
Дата 1.8.2008, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



напиши как в моем amake.bat, а то у тебя только l11.asm будет компилиться (другие имена не подойдут)
то есть "%l11.asm", "%l11.obj"

Это сообщение отредактировал(а) Kellmir - 1.8.2008, 15:28
PM MAIL   Вверх
IKM2007
  Дата 1.8.2008, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


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

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



Цитата(Kellmir @  1.8.2008,  15:26 Найти цитируемый пост)
напиши как в моем amake.bat, а то у тебя только l11.asm будет компилиться (другие имена не подойдут)то есть "%l11.asm", "%l11.obj"

так у меня не компилится. Если создаю допустим l12.asm, а в .bat файле пишу, как у тебя, ругается, что не может открыть l11.asm файл. Ладно, и так пойдет. Всем спасибо.
Тема закрыта.


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

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

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


 




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


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

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