elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  CON QUE TIPO DE LENGUAJE ENSAMBLADOR EMPEZAR
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: CON QUE TIPO DE LENGUAJE ENSAMBLADOR EMPEZAR  (Leído 6,040 veces)
xv0


Desconectado Desconectado

Mensajes: 1.024



Ver Perfil
Re: CON QUE TIPO DE LENGUAJE ENSAMBLADOR EMPEZAR
« Respuesta #10 en: 20 Enero 2014, 15:56 pm »

Como dije anteriormente.

Código:
http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html

Te recomiendo que te leas el primer tomo que es una introduccion, los segundos volumenes que son las referencia de las instrucciones. Puedes leer los demas pero de momento con eso ya estas bien.

Saber como funciona un poco as y ld.

Código:
http://sourceware.org/binutils/docs/as/
http://sourceware.org/binutils/docs/ld/

Bueno acabas de decir que tienes un procesador x64 y lo estas usando a x86, ya que tienes un procesador de x64 porque lo usas a x86?

En x64 los registros son de 64 bits (logico) vamos el doble, puedes cargas mas datos en ellos sin tener que usar el stack, tienes nuevos registros de calculo general r8-r15 algunos de ellos son para pasar argumentos y otros son libres, en x86 haces interrupciones al vector 80 y en x64 tienes una instruccion llamada syscall que es mas rapida que llamar al vector.

Código:
http://blog.rchapman.org/post/36801038863/linux-system-call-table-for-x86-64
http://syscalls.kernelgrok.com/

Las interrupciones, la segunda es de x86 solo cambian los registros, son de kernels algo pasados, pero siempre puedes mirarlos en el sistema. Tambien te recomiendo que no te acostumbres a utilizar llamadas ya que desde mi punto de vista no es ASM puro, pero como estas en ring3 estas obligado a usarlas, int 80 y syscall llaman a unas funciones escritas casi siempre en C que estan en el kernel, es una explicacion muy basta pero en el manual no la hubieras entendido.

Pero bueno seguro que tienes el Ubuntu a x86 porque seguro que leiste por hay que seria mas estable.

Bueno empieza por leer y entender un Hello word.

Un saludo.


En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Programación en lenguaje ensamblador « 1 2 »
ASM
YST 18 32,528 Último mensaje 7 Julio 2010, 04:13 am
por Mr.Blue
Duda de implementación en lenguaje ensamblador
ASM
Hipeople 8 6,592 Último mensaje 8 Junio 2009, 20:20 pm
por Eternal Idol
Duda con lenguaje ensamblador
ASM
genomma 0 2,885 Último mensaje 21 Marzo 2012, 10:23 am
por genomma
AYUDA CON LENGUAJE ENSAMBLADOR
ASM
nuru_chan 1 2,995 Último mensaje 12 Diciembre 2012, 18:12 pm
por Eternal Idol
Programa en lenguaje ensamblador
ASM
EmmanuelCalAgui 1 3,338 Último mensaje 5 Julio 2021, 22:44 pm
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines