Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2009, 19:55   #31
Роман Радер
Форумчанин
 
Аватар для Роман Радер
 
Регистрация: 16.12.2006
Сообщений: 859
По умолчанию

В param - адрес на память, где находятся параметры.
param:=mm.Memory;

сначала ecx=0, с каждым проходом цикла он увеличивается на 4
add ecx,4

и так пока ecx не станет равным ParamSize - общей сумме размеров параметров.

а что такое
LEA eax,a
mov ebx,[eax]
? для типа extended не работает - он передается как 2 dword и один word.
Например, для (-5.5):
push $0000c001
push $b0000000
push $00
из CPU-debug.

Последний раз редактировалось Роман Радер; 21.02.2009 в 20:00.
Роман Радер вне форума Ответить с цитированием
Старый 05.03.2010, 22:35   #32
bass2
Новичок
Джуниор
 
Регистрация: 05.03.2010
Сообщений: 1
Подмигивание

Пишу на с

DWORD CallLibrary(DWORD FUNC,int Kollichestvo,DWORD PAR1,DWORD PAR2,DWORD PAR3,DWORD PAR4,DWORD PAR5)
{
DWORD Result;
asm
{
push eax
push ebx
push ecx
MOV EAX,DWORD PTR DS:[ Kollichestvo]
cmp eax,0
je callfunc
push DWORD PTR DS:[ PAR1]
sub eax,1
cmp eax,0
je callfunc
push DWORD PTR DS:[ PAR2]
sub eax,1
cmp eax,0
je callfunc
push DWORD PTR DS:[ PAR3]
sub eax,1
cmp eax,0
je callfunc
push DWORD PTR DS:[ PAR4]
sub eax,1
cmp eax,0
je callfunc
push DWORD PTR DS:[ PAR5]
sub eax,1
callfunc:
call DWORD PTR DS:[ FUNC]
MOV DWORD PTR DS:[ Kollichestvo],EAX
pop ecx
pop ebx
pop eax
}
Return Result;
}

Упс вместо sub eax,1 целесобразнее использовать dec eax
Можно еще параметров добавить сколько уогдно но все к DWORD придеться приводить =(((((((
За это ненавижу все компиляторы высокого уровня
bass2 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание и вызов библиотеки dll DM_bite Помощь студентам 3 15.06.2010 12:47
Вызов функции MarSeON PHP 2 01.08.2008 20:22
вызов из dll не ShowModal. Roof Общие вопросы Delphi 7 25.07.2008 15:22
Автоматический вызов функции класса Flaton Общие вопросы C/C++ 4 19.10.2007 17:56
Вызов функции по таймеру Lexicss Общие вопросы Delphi 4 30.05.2007 22:47