Сейчас на форуме: vsv1 (+3 невидимых)

 eXeL@B —› Вопросы новичков —› MASM -> FASM
Посл.ответ Сообщение

Ранг: 50.6 (постоянный)
Активность: 0.020
Статус: Участник

Создано: 04 марта 2008 15:56 · Поправил: IvanStepkin
· Личное сообщение · #1

Приветствую всех!

Подскажите, пожалуйста, как будет выглядеть команда mov Namefld[bx], '$' в FASM'e?

И ещё вот это: mov es:[di], ax


Ура! Нашёл решение (непрерывно 6 часов лазил по инету):

mov Namefld[bx], '$' -> mov [bx+Namefld+1], '$' (FASM)

mov es:[di], ax -> mov [es:di], ax (FASM)


Новый вопрос: как процедуры записываются (синтаксис) в FASM?



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 05 марта 2008 09:55 · Поправил: Bitfry
· Личное сообщение · #2

IvanStepkin пишет:
mov es:[di], ax

mov [es:di], ax
Первое аналогично. И это описано в доке - RTFM!

IvanStepkin пишет:
как процедуры записываются (синтаксис) в FASM?

В ФАСМЕ нет процедур как таковых. Есть макросы, которые почти повторяют синтаксис MASM'a:

proc MainWnd hwnd, wMsg, wParam, lParam
...
endp

Это есть в примерах.
Если нужно uses не забудь запятую после регистров:
proc MyProc uses EBX ESI EDI, arg1,arg2

-----
Всем привет, я вернулся




Ранг: 50.6 (постоянный)
Активность: 0.020
Статус: Участник

Создано: 05 марта 2008 12:46 · Поправил: IvanStepkin
· Личное сообщение · #3

Bitfry пишет:
IvanStepkin пишет:
mov es:[di], ax
mov [es:di], ax
Первое аналогично. И это описано в доке - RTFM!

Хотите сказать, что и mov es:[di], ax должно работать? У меня при такой записи возникает ошибка "Invalid operand" на этой строчке.

Bitfry пишет:
В ФАСМЕ нет процедур как таковых.

Да, спасибо, это уже понял. Но сегодня я нашёл ещё вот такое решение:

Call GetLiner

GetLiner:
....
ret



 eXeL@B —› Вопросы новичков —› MASM -> FASM
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати