Пыьаюсь сделать файл l11.asm в exe ввожу: C:\myasm\bin\ml.exe /c /coff C:\l11.asm Эта команда прошла пишет: Assembling: C:\l11.asm Пишу вторую... C:\myasm\bin\link.exe /subsystem:windows C:\l11.obj Выдаёт ошибку: LINK : fatal error LNK1181: cannot open input file "C:\l11.obj" Microsoft Windows XP [Версия 5.1.2600] (С) Корпорация Майкрософт, 1985-2001. C:\Documents and Settings\Admin>C:\myasm\bin\ml.exe /c /coff C:\l11.asm Microsoft (R) Macro Assembler Version 6.14.8444 Copyright (C) Microsoft Corp 1981-1997. All rights reserved. Assembling: C:\l11.asm C:\Documents and Settings\Admin>C:\myasm\bin\link.exe /subsystem:windows C:\l11. obj Microsoft (R) Incremental Linker Version 5.12.8078 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. LINK : fatal error LNK1181: cannot open input file "C:\l11.obj" C:\Documents and Settings\Admin> Глянте пожалуйста. В чём на этот раз мой грех Компилятор C:\myasm Прога C:\l11.asm
инклуды подобовляй .386 .model flat,stdcall option casemap:none include include\windows.inc include include\kernel32.inc include include\user32.inc includelib lib\kernel32.lib includelib lib\user32.lib вот шаблонизированный заголовок.
Вот мой батник: "С:\masm32\bin\ml" /c /coff dd.asm "С:\masm32\bin\link" /SUBSYSTEM:CONSOLE /LIBPATH:"С:\masm32\lib" dd.obj
ты случайно не из книги А. Крупника "Изучаем ассемблер" исходники берешь? По умолчанию масм устанавливается в папку \masm32, а у тебя путь \myasm
тоже самое у меня 2 компилятора стоят masm32 и myasm. Я вполном недоуении C:\masm32\bin\ml.exe /c /coff C:\l11.asm C:\masm32\bin\link.exe /subsystem:windows C:\l11.obj
Создай текстовый документ, вставть в него это: "C:\masm32\bin\ml" /c /coff 11.asm "C:\masm32\bin\link" /SUBSYSTEM:CONSOLE /LIBPATH:"C:\masm32\lib" 11.obj Переименуй в make.bat и запусти. на fasm ваще гемороя с этим нет Code: include 'win32ax.inc' start: mov eax, 2 add eax, 3 ret
Помогите плиз со стеком...начинаю изучать асм Code: .code start: mov eax,2 mov ecx,3 push eax push ecx pop eax pop ecx end start Вопрос такой,отправили в регистр eax 2,ecx 3, запихали 2,потом 3ку,получается тройка сверху осталась,последний зашел,первый вышел,как мы попаем eax первым если до него ecx сверху,или я чтот путаю...
PHP: mov eax,2 mov ecx,3 Стек пустой. PHP: push eax стек: ====== 2 ====== PHP: push ecx стек: ====== 3 2 ====== PHP: pop eax стек: ====== 2 ====== В регистре eax теперь 3. PHP: pop ecx Стек пуст, в регистре ecx теперь 2.