WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  ASM
  Помогите начинающему

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   Помогите начинающему
bobby опубликован 07-12-2001 02:11 MSK   Click Here to See the Profile for bobby   Click Here to Email bobby  
Начал изучать asm, но столкнулся с такой проблемой: ни одна программа написанная мной не компилируется, я не соблюдаю какие-то правила со стеком связанные или другие. Нашел на сайте www.assembler.ru код простейшей программы, которая даже ничего не делает, а просто начинает свою работу и заканчивает, но даже при ее компиляции в Masm501 выдал около 7! ошибок.
Может у кого-нибудь есть другой вариант элементарного кода, используя который я мог бы вводить свои первые инструкции и исполнять их?
7in опубликован 07-12-2001 23:54 MSK     Click Here to See the Profile for 7in  Click Here to Email 7in     
Ты бы поподробнее написал: какой код, какие ошибки, какие параметры задаёшь при компилировании.
bobby опубликован 08-12-2001 16:00 MSK     Click Here to See the Profile for bobby  Click Here to Email bobby     
Код такой:

.386
.model flat,stdcall
ExitProcess PROTO :DWORD
.code
WinMain PROC PUBLIC hinst,prev_hinst,command_line,cmd_show
;...
invoke ExitProcess,0
WinMain ENDP
end

Честно говоря, я здесь ничего практически не понимаю(пока), но там (http://www.assembler.ru/11_arts/11000200.htm) написано, что прога заработает и без ошибок завершится, а мне оно и нужно, чтобы в середине вписывать свои мини-программки, учиться потихоньку, короче. Я раньше ведь свободно на asm-e под Z-80 писал, а недавно писюк появился и здесь все более замороченно.
Если кто помнит ZX-Spectrum, он меня поймет 8).
А компилирую я в Masm51 без параметров, просто
>...\masm51.exe "name.asm"

Спасибо за помощь.

7in опубликован 08-12-2001 21:13 MSK     Click Here to See the Profile for 7in  Click Here to Email 7in     
Ну, во-первых, там написано, что компилируется это с помощью ML. Во-вторых, нужно подключить kernel32.lib .

Мне лично кажется, что сначала нужно научиться писать проги под ДОС, а потом уже под Windows (а у тебя здесь как раз пример под Windows). Если честно, я всегда пользуюсь TASM'ом, а под Win на асме никогда не писал :) . Так что могу привести тебе пример для TASM'а...

Программа COM:
--------------[ Резать тут! :]---------------
.MODEL Tiny
.286
.CODE
ORG 100h

Start:

;---- Здесь твой код ----;
int 20h

END Start
-------------[ Кончать тут! :]---------------

Программа EXE:
--------------[ Резать тут! :]---------------
.MODEL Small
.286
.STACK 100h
.DATA
;---- Данные ----;
.CODE

Start:

;---- Здесь твой код ----;
mov ah,4Ch
int 21h

END Start
-------------[ Кончать тут! :]---------------

COM компилируется так:
TASM proga.asm /m9
TLINK proga.obj /x /t

EXE компилируется так:
TASM proga.asm /m9
TLINK proga.obj /x

bobby опубликован 09-12-2001 14:00 MSK     Click Here to See the Profile for bobby  Click Here to Email bobby     
Спасибо 7in. прога запускается, работает, я почти счастлив! А почти - потому что она отработав, сразу захлопывает окошко и о результатах работы можно только догадываться.
Кстати, компилится она в Tasm-e без проблем, а вот Microsoft Assembler сообщил, что мол "operand expected", ну да и хрен с ним, все равно Борман симпатичнее мне.
7in опубликован 09-12-2001 23:43 MSK     Click Here to See the Profile for 7in  Click Here to Email 7in     
Не знаю, почему захлопывается :(
rivitna опубликован 17-12-2001 01:01 MSK     Click Here to See the Profile for rivitna  Click Here to Email rivitna     
У меня есть типовые заготовки на асме, на основе которых я пишу программки следующих форматов:
COM, MZ EXE, NE, PE

Могу на почту скинуть для изучения

Gibbel опубликован 18-12-2001 15:29 MSK     Click Here to See the Profile for Gibbel  Click Here to Email Gibbel     
А окошко схлопывается из-за настроек виндов...

У меня есть кое-что интересное на асме, если надо - скину, только для начала разберись в нем получше... Сам помню, как с Zilogа перелазил...

З.Ы. Z80 is cool

isFish опубликован 22-12-2001 17:57 MSK     Click Here to See the Profile for isFish  Click Here to Email isFish     
Тоже парился после Z80, но есть пара класных
книг Ассемблер -язык без границ (www.dmk.ru)
ну и Питер Абель тебе поможет:).Кстати там
диск с исходниками от книжки и масм какой то.
Есть своя подборка из инета и FIDO.
удачной ловли багов,isFish
p.s. поимей какой нить отладчик типа td.exe
для начала хватит и избавит от кучи проблем
ну и дизасемблер не помешает (IDA).

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.