[ Crstiano Ronaldo @ 16.05.2010. 21:40 ] @
Kako da napisem parametar neke funkcije koji je po tipu pokazivac na prekidnu rutinu?Da li bi to mozda ovako izgledalo void funkcija (void interrupt (*rutina)())? |
[ Crstiano Ronaldo @ 16.05.2010. 21:40 ] @
[ combuster @ 16.05.2010. 21:55 ] @
Parametar bi trebalo da prosledis ovako:
void funkcija (interrupt *rutina) { body } Ako je to sve sto treba da prosledis kao parametre funkciji... [ the_tosic @ 16.05.2010. 22:01 ] @
Pravilno napisana prekidna rutina ne sme da prima parametre. Odnosno moze ali tako sto ces ih staviti u neki registar npr:
Code: mov ax, 5; int 80; i onda kada budes u prekidnoj rutini na ulazu 80 gledas sta ti se nalazi u registru ax. Code: // ako hoces da definises pokazivac na f-ju tipa //void interrupt bla(); to radis sa typedef void interrupt (*IR)(void); //pokazivac na taj tip f-je // Ako hoces da definises pokazivac na f-ju tipa int bla(int,float) // to radis sa typedef void (*blabla)(int,float); //pokazivac na taj tip f-je // Ako hoces nekoj funkciji da prosledis prekidnu rutinu, u zaglavlju te f-je stavis da prima parametar tipa IR koji smo gore definisali btw kolega www.google.com ;) [ Crstiano Ronaldo @ 16.05.2010. 22:06 ] @
Hvala mnogo!
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|