|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Ноя 14, 2004 18:27:59 AsmGuru62 В примерах самого fasm'а кажется есть использование локальных переменных, или вот мой пример ;-) ;@echo off ;goto make include '%fasminc%\win32axp.inc' .code align 4 proc EnumChildWindowsFunc, hwnd, lParam .Buff rb 64 enter invoke GetWindowText, [hwnd], ADDR .Buff, 64 invoke lstrcmpi, ButtonText, ADDR .Buff test eax, eax jnz @F ; invoke ShowWindow, [hwnd], SW_HIDE invoke EnableWindow, [hwnd], FALSE xor eax, eax jmp .finish @@: xor eax, eax inc eax .finish: return endp align 4 proc EnumWindowsFunc, hwnd, lParam .Buff rb 256 enter invoke GetWindowText, [hwnd], ADDR .Buff, 256 invoke lstrcmpi, WindowText, ADDR .Buff test eax, eax jnz @F invoke EnumChildWindows, [hwnd], EnumChildWindowsFunc, 0 xor eax, eax jmp .finish @@: xor eax, eax inc eax .finish: return endp align 4 start: invoke EnumWindows, EnumWindowsFunc, 0 invoke ExitProcess, 0 .data WindowText db 'Калькулятор',0 ButtonText db 'Hex',0 .end start ;:make ;SET PROJECTNAME=HideButton ;if exist %PROJECTNAME%.exe del %PROJECTNAME%.exe ;C:\FasmC\fasm.exe %PROJECTNAME%.bat %PROJECTNAME%.exe ;pause ;cls |
|
|
Дата: Ноя 14, 2004 18:37:44 Mark Mega Debuger http://diprog.x2rus.ru/mmd.zip |
|
|
Дата: Ноя 14, 2004 18:48:20 Спасибо конечно но нет ли чего нмбудь виндусового? Я думаю для ламеров, в часности для меня это проще будет. |
|
|
Дата: Ноя 14, 2004 18:51:51 · Поправил: KiNDeR > нет ли чего нмбудь виндусового? так пиши сразу под винду и пользуйся олей! или ставь софтайс и делай dldr.exe прога.com |
|
|
Дата: Ноя 14, 2004 19:03:33 так пиши сразу под винду и пользуйся олей! Ну мне хотелось бы хоть как нибудь научиться писать под dos. Так сказать для расширения знаний. или ставь софтайс и делай dldr.exe прога.com А SoftICE для Windows? Версия Lite 10 метров кушает! Что то многовато, придется подождать с выкачкой пару недель. |
|
|
Дата: Ноя 14, 2004 19:12:14 Rohan Советую TRW2000 полную версию естно, но он только под win98. |
|
|
Дата: Ноя 14, 2004 19:24:57 Блин как все сложно! Я уже под конец запутался с чего начинать! |
|
|
Дата: Ноя 14, 2004 22:03:00 Правка Rohan мне б найти тех кто хвалит RadAsm Это очень хорошее и функциональное IDE для написания приложений на ассемблере. С пакетом распространяются настройки для 5 разных компиляторов. Как что-то найти в нём? Да просто посмотрите и разберитесь во всех командах его меню. На сайте RadASM'a лежит также довольно неплохая справка. |
|
|
Дата: Ноя 15, 2004 15:08:09 Я понимаю что нужно просто полазить по менюнкам, но мне стремно менять там все что мне кажется не так! Всеж это не в Винде пару галочек поставить. Если несложно то просто назовите мне раздел где смотреть. |
|
|
Дата: Ноя 16, 2004 06:30:38 Asterix А эта переменная разве объявлена в стеке? Похоже на объявление в секции кода - а это ухудшает производительность. Хорошо бы иметь в FASM простую поддержку на уровне компилятора:
proc foo
vars {
.object WNDCLASS
}
...
mov .object.pfnWndProc, eax
...
return
|
|
|
Дата: Ноя 16, 2004 07:24:15 Пример Asterix использует стековые переменные, реальзуется всё это макросами. IMHO если же будет поддержка на уровне компилятора, то возможности ухудьшатся - потеряется гибкость.. В MASM например нельзя из-за этого по-нормальному реализовать ESP-based stackframes :-\ |
|
|
Дата: Ноя 16, 2004 22:29:35 S_T_A_S_ В MASM например нельзя из-за этого по-нормальному реализовать ESP-based stackframes Хотя это и не выглядит так элегантно, как в fasm'е, но реализовать можно и в MASM'e. |
|
|
Дата: Ноя 16, 2004 22:42:15 AsmGuru62 > А эта переменная разве объявлена в стеке? Да, всё что между proc и enter стековые переменные ЗЫ: Как там дела с IDE? Уже хотелось бы затестить. |
|
|
Дата: Ноя 17, 2004 03:42:02 Johnikum Дык я не спорю, сам пытался. Но в MASM это очень криво получается :-) Все его HLL прибомбасы (proc, invoke) при этом только мешают. Ключевой момент - в FASM можно сделать макросы push и pop, которые берут на себя рутину вычислений значения ESP. А в MASM - только ручками. Тогда зачем там PROC, LOCAL и т.п. |
|
|
Дата: Ноя 17, 2004 04:19:55 В MASM например нельзя из-за этого по-нормальному реализовать ESP-based stackframes :-\ А оно сильно надо? Какие при этом преимущества? Лишний регистр освобождается, что еще? Я лично этим этим года полтора назад воспользовался один раз из-за лени, когда над AES работал. Если уже так хочется извращаться, то пишем что-то типа blabla equ [esp+4*5] |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.072 |