Test Foro de elhacker.net SMF 2.1

Programación => Programación General => ASM => Mensaje iniciado por: braulio-- en 10 Agosto 2009, 14:12 PM

Título: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: braulio-- en 10 Agosto 2009, 14:12 PM
Estoy en linux, usando nasm y estoy haciendo este código.
Código (asm) [Seleccionar]
section .data:
 fichero: db 'programa'; Nombre que tendra el programa
section .bss:
 texto: resb 16000
section .text:
global _start
_start:
 mov eax,5 ; sys_open()
 pop ebx
 pop ebx ; El nombre de este programa
  pop ebx; Primer argumento
 mov ecx,0 ; Para leer
 int 80h
 ; Ya está en eax
 mov ebx,eax; Ya no(bueno , aun si)
 mov eax,3 ; sys_read
 mov ecx,texto
 mov edx,16000
 int 80h;
 ;El contenido del fichero este está en texto.
 ;Ahora voy a abrir otro fichero
 mov eax,4
 mov ebx,1
 mov ecx,texto
 mov edx,16000
 int 80h


 mov eax,1
 mov ebx,0
 int 80h

 
 

Cuando lo ejecuto (le he dado todos los permisos necesarios y eso) no hace nada.
Creo que lo he hecho bien, alguien sabe cuál es el problema?
Gracias
Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Yurix en 10 Agosto 2009, 18:37 PM
\
Hola braulio , lo que pasa *((eso creo yo tal ves este equivocado)) es que tienes que abrir la consola y entonces ejecutar el programa , si lo ensamblaste y no da error entonces debe de hacer algo , trata de abrir la consola y arrastrale el ejecutable .elf .

Saludos
Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Eternal Idol en 10 Agosto 2009, 19:14 PM
Depuralo con gdb.
Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: braulio-- en 10 Agosto 2009, 22:41 PM
Lo hice desde la consola pasándole un argumento de un fichero.
Ahora lo depuro .
¿Pero que se supone que debería buscar? El código lo tengo ahí mismo y en asm , para que el debugger?
Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Eternal Idol en 10 Agosto 2009, 22:51 PM
Para ver el comportamiento, que resultado devuelve cada interrupcion ... si esta escribiendo en el buffer que esta escribiendo, etc.
Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: braulio-- en 10 Agosto 2009, 23:12 PM
He compilado con la opción -g para que genere información de depuración pero cuando uso el gdb me dice .
Symbols not Found
Asi que creo que no puedo poner ningún bp.
Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Eternal Idol en 10 Agosto 2009, 23:19 PM
Ya tenes el codigo en assembly y es bastante corto, no necesitas los simbolos, pone un int 3 al principio y listo.