Repository 32bit  Forum
Repository 64bit  Wiki

[ASM]Valori per funzioni allo 0x80

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata e la versione del Kernel. Questi dati aiutano le persone che possono rispondere.
2) Specificare sempre il tipo di shell (bash, sh, csh, etc...)
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza dell'ultima regola porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

[ASM]Valori per funzioni allo 0x80

Messaggioda Plaoo » mar apr 28, 2009 18:15

Salve a tutti, sto imparando l'assembler su linux (sintassi AT&T). Ho fatto qualche programmuccio richiamando qualche funzione classica del C (printf, puts,scanf ecc ecc) adesso però vorrei usare direttamente l'interrupt 0x80 ma vorrei sapere quanti valori devo passare per ogni funzione, come faccio a saperlo oppure qualche sito dove vengono illustrati.
ESEMPIO:
per write
write (1,hello,sizeof(hello)) (eax = numero funzione WRITE, ebx= stdin, ecx = indirizzo della stringa, ebx =lunghezza della stringa)
Codice: Seleziona tutto
movl            $4,%eax
movl            $1,%ebx
movl            $hello,%ecx
movl            $13,%edx
int                $0x80

mentre per exit
Codice: Seleziona tutto
movl            $1,%eax
movl            $0,%ebx
int               $0x80

mi bastano solo due valori (eax = numero funzione exit, ebx = codice di uscita)

Ritornando alla domanda del thread come faccio a sapere quanti valori e che registri devo usare per le funzioni dell interrupt 0x80??
Il canale ufficiale di slacky.eu si trova sui server irc.syrolnet.org canale #slackware
Avatar utente
Plaoo
Linux 2.6
Linux 2.6
 
Messaggi: 809
Iscritto il: gio apr 10, 2008 17:40
Località: Ittiri (SS)
Slackware: 14 64
Kernel: 3.2.9
Desktop: KDE

Re: [ASM]Valori per funzioni allo 0x80

Messaggioda Plaoo » mer apr 29, 2009 20:01

Penso di aver risolto basta fare un man 2 nome_funzione es: man 2 write per sapere cosa gli serve ma se qualcuno ne sa di più
Il canale ufficiale di slacky.eu si trova sui server irc.syrolnet.org canale #slackware
Avatar utente
Plaoo
Linux 2.6
Linux 2.6
 
Messaggi: 809
Iscritto il: gio apr 10, 2008 17:40
Località: Ittiri (SS)
Slackware: 14 64
Kernel: 3.2.9
Desktop: KDE

Re: [ASM]Valori per funzioni allo 0x80

Messaggioda Calzo » dom mag 10, 2009 14:44

Non so se ti può essere utile anche questo link:
http://www.itis.mn.it/linux/quarta/syscalls.htm

A me lo è stato ;)
bye
Avatar utente
Calzo
Linux 2.0
Linux 2.0
 
Messaggi: 112
Iscritto il: sab ott 06, 2007 22:21
Località: MN
Slackware: 10.2 | 13
Desktop: Fluxbox | KDE


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti