Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: jose2c en 26 Febrero 2006, 22:38 pm



Título: Assembler?
Publicado por: jose2c en 26 Febrero 2006, 22:38 pm
  Ps como aprendieron assembler? Estudiaron informatica o se fumaron un tuto  :huh: . Yo estudio Ing. Sistemas y nos dan Pascal-> Lenguaje C -> Java pero nada de assembler y ps yo estoy interesado :/


Título: Re: Assembler?
Publicado por: BenRu en 27 Febrero 2006, 00:33 am
Estudiar asm es igual que estudiar otro lenguaje..bueno, igual no xD
Yo lo veo como imposible...pero existen muchos tutos por ahi...
No pretenderas aprender asm,c u otro sin leer nada no? :P


Título: Re: Assembler?
Publicado por: jose2c en 27 Febrero 2006, 00:38 am
En la uni ya llevamos tres trimestres estudiando C, y creo haber aprendido lo suficiente para entender los codes que por el foro postean. Pero veo que en algunos posts dejan codes con asm y yo ps ni p*ta idea, conoces algun tuto weno?


Título: Re: Assembler?
Publicado por: ANELKAOS en 27 Febrero 2006, 02:25 am
Depende para que micro, lo normal es que encuentres lo que buscas en www.Intel.com o www.amd.com


Título: Re: Assembler?
Publicado por: jose2c en 28 Febrero 2006, 00:55 am
Ps he estado investigando y me doy cuenta de que la mayoria de los tutos(todos mochos o explicados a la carrera ¬¬) dicen que el asm mas famoso o mas utilizado es el orientado a x86(q npi que es eso :/). En la sección de papers no encontre nada...

en intel a vuelo de pajaro no encontre nada :/ me lie con el ingles, intente buscar algo como "assembler reference" pero nada :/. En amd ni quice mirar, primero quiero aprender con el supuesto x86 de intel y luego le meto a todo  ;D


Título: Re: Assembler?
Publicado por: Casidiablo en 28 Febrero 2006, 01:11 am
Pues yo he prendido ASM programando microchips PIC...

Saludos!!


Título: Re: Assembler?
Publicado por: jose2c en 28 Febrero 2006, 01:43 am
  Y se diferencia mucho el code dependiendo del procesador? alguien me explica como esta eso del x86 :_( ando de ocio y no quiero perder mi tiempo en webadas, prefiero aprender asm xD


Título: Re: Assembler?
Publicado por: 5v5 en 11 Marzo 2006, 00:44 am
pues hay muchos manuales de asm y la mayoria para intel 80x86....(investiga un poco de historia computacional..) y sabras que es x86.....ha y por cierto utiliza bien el oraculo...

google=manuales de asm   y buala   muchos manuales.....algunos del 1990 otros 1998 otros de 2000-...pero en fin......asm es la ley....pero esta pesadon....pero no imposible de aprender.....


Título: Re: Assembler?
Publicado por: JuszR en 11 Marzo 2006, 01:01 am
Estudiar asm es igual que estudiar otro lenguaje..bueno, igual no xD
Yo lo veo como imposible...pero existen muchos tutos por ahi...
No pretenderas aprender asm,c u otro sin leer nada no? :P
No. Asm no se parece ni a C y C++ juntos.

[Así me lo dijo un super-programador:]

Asm es la representación del lenguaje de máquina (0101010) de forma que el humano lo entienda (y aún así es muy difícil de entender).

Manuales solo te recomendaría en inglés, no he visto uno que valga la pena en español (no porque yo sepa Asm y haya visto que está mal redactado). Los de inglés están 100% entendibles
(si sabes algo de inglés y tienes el babylon) y completos. ;)


  Y se diferencia mucho el code dependiendo del procesador? alguien me explica como esta eso del x86 :_( ando de ocio y no quiero perder mi tiempo en webadas, prefiero aprender asm xD
No. El Assembler es el programa que traduce a código máquina o para lo que se necesite.

[Esto también me lo dijo ese super-programador:]

Por ejemplo. Para programar para GameBoy usas el assembler z80 que es el que traduce el código para que sea entendible por el microprocesador del GameBoy.

Los assemblers son tipo un compilador pero para Asm. Obviamente no se llama compilador porque Asm es casi lenguaje de máquina y solo se "ensambla".


Título: Re: Assembler?
Publicado por: jose2c en 13 Marzo 2006, 04:27 am
eso kiere decir que un code en lenguaje asm puede correr en cualkier procesador solo ensamblandolo en el ensamblador correspondiente?


Título: Re: Assembler?
Publicado por: JuszR en 13 Marzo 2006, 04:29 am
Sí. El código siempre es el mismo, solo cambia el assembler (gasm, masm, nasm...).

Aquí tienes una lista de algunos assemblers: http://en.wikipedia.org/wiki/List_of_assemblers


Título: Re: Assembler?
Publicado por: jose2c en 13 Marzo 2006, 04:31 am
entonces xq hablan de asm para 80x86 y otros? no deberian ser iguales?


Título: Re: Assembler?
Publicado por: JuszR en 13 Marzo 2006, 04:36 am
Haz de cuenta que tu haces juegos para el Xbox. Cuando metes el juego del Xbox a la pc no va a servir porque el microprocesador de la pc no lo reconoce, es otra arquitectura que solo la reconoce el microprocesador del Xbox. Lo mismo al revez, si metes un Cd de pc al Xbox, pues no funcionará.

Son cosas que no se entienden aún explicando. Yo esto lo se porque pregunté mucho, pero la mejor manera de averiguar y entender muy bien es programando en Asm. Lo que quieras (compiladores, malware...) pero en Asm.

Voy a checar en blueportal a ver si hay algo que explique esto bien porque yo también me hago muchas bolas.

 ;)


Título: Re: Assembler?
Publicado por: jose2c en 13 Marzo 2006, 04:43 am
  Yo ya quiero salir de los parciales de la uni para comerme un libro de asm, no te imaginas lo ancioso q estoy de empezar a experimentar  :( me parece un mundo muy interesante. Quizas le ponga una reverse shell al buscaminas como primer intento xD


Título: Re: Assembler?
Publicado por: JuszR en 13 Marzo 2006, 05:02 am
Je. Yo también quiero hacer mi compilador y mi gusano que haga mierd. la pc de los lammers, pero todo a su tiempo. "Primero aprendo a caminar (c++) y después a correr (asm). ;)

Hasta ahora solo encontré este manual que es sobre INTEL: http://developer.intel.com/design/pentium/manuals/


Título: Re: Assembler?
Publicado por: jose2c en 13 Marzo 2006, 05:08 am
 A proposito de ese paper otra de mis metas es apreder bien el ingles, solo q mi paciencia solo es para programar, para el resto me cuesta. No me queda otra que comprarme un libro de asm en español.


Título: Re: Assembler?
Publicado por: JuszR en 13 Marzo 2006, 05:30 am
A proposito de ese paper otra de mis metas es apreder bien el ingles, solo q mi paciencia solo es para programar, para el resto me cuesta. No me queda otra que comprarme un libro de asm en español.
Lee e-books en inglés y usa el Babylon o wordreference.com (http://wordreference.com), yo hago eso y entiendo.

Aquí hay más pero en español, así que no creo que sirvan: http://lawebdelprogramador.com/cursos/mostrar.php?id=29&texto=Ensamblador

[EDIT]

Estos sí: http://www.programmersheaven.com/zone5/index.htm


Título: Re: Assembler?
Publicado por: jose2c en 14 Marzo 2006, 01:52 am
pues si no hay como escaparle al ingles  :-\


Título: Re: Assembler?
Publicado por: div@d en 14 Marzo 2006, 03:01 am
Citar
No. El Assembler es el programa que traduce a código máquina o para lo que se necesite.

El asm no es un programa, es el lenguaje maquina propiamente dicho.

Los compiladores son los que traducen el codigo fuente, al codigo maquina.

mira :

Pseudocodigo --> Codificacion a un lenguaje(C por ej) -->Asm
                              {es como un intermediario }
 
A su ves lo compiladores pueden Codificar el tu codigo fuente para diferentes plataformas.
 _________________

Volviando al tema, hay un manual de asm en la sección de descargas del sitio :o


Título: Re: Assembler?
Publicado por: div@d en 14 Marzo 2006, 03:02 am
Citar
No. El Assembler es el programa que traduce a código máquina o para lo que se necesite.

El asm no es un programa, es el lenguaje maquina propiamente dicho.

Los compiladores son los que traducen el codigo fuente, al codigo maquina.

mira :

Pseudocodigo --> Codificacion a un lenguaje(C por ej) -->Asm
                              {es como un intermediario }
 
A su ves lo compiladores pueden Codificar  tu codigo fuente para diferentes plataformas.
 _________________

Volviando al tema, hay un manual de asm en la sección de descargas del sitio :o

//le mande a quote en lugar de modificar... estoy re boludo hoy..:P


Título: Re: Assembler?
Publicado por: Toxico en 14 Marzo 2006, 03:36 am
Haz de cuenta que tu haces juegos para el Xbox. Cuando metes el juego del Xbox a la pc no va a servir porque el microprocesador de la pc no lo reconoce, es otra arquitectura que solo la reconoce el microprocesador del Xbox. Lo mismo al revez, si metes un Cd de pc al Xbox, pues no funcionará.

Son cosas que no se entienden aún explicando. Yo esto lo se porque pregunté mucho, pero la mejor manera de averiguar y entender muy bien es programando en Asm. Lo que quieras (compiladores, malware...) pero en Asm.

Voy a checar en blueportal a ver si hay algo que explique esto bien porque yo también me hago muchas bolas.

 ;)

 :huh: :huh: :huh:

el asm varia de arquitectura a arquitectura, logicamente que se sigue llamando ensamblador pero varian las instrucciones como "mov" , "jne" "jE"  tienen sus analogos para cada arquitectura, yo tambien estudio ingenieria de sistemas y pues a un ingeniero le dio por enseñarnos aunque ya lo habia aprendido antes  ::),

antes de que aprendas a programar en ensamblador tienes que tener en cuenta ciertos conceptos, aca te dejo una pagina bastante buena y didactica :P

http://www.itlp.edu.mx/publica/tutoriales/ensamblador/index.htm

saludos  ;D


Título: Re: Assembler?
Publicado por: JuszR en 14 Marzo 2006, 04:18 am
Ok. No sabía que cambiaban las instrucciones, sorry.

De esa web estoy aprendiendo lo básico de C++, está muy buena. ;)

Citar
No. El Assembler es el programa que traduce a código máquina o para lo que se necesite.

El asm no es un programa, es el lenguaje maquina propiamente dicho.

Los compiladores son los que traducen el codigo fuente, al codigo maquina.

mira :

Pseudocodigo --> Codificacion a un lenguaje(C por ej) -->Asm
                              {es como un intermediario }
 
A su ves lo compiladores pueden Codificar el tu codigo fuente para diferentes plataformas.
 _________________

Volviando al tema, hay un manual de asm en la sección de descargas del sitio :o
Lee el post completo por favor. Asm no se compila. :P


Título: Re: Assembler?
Publicado por: div@d en 14 Marzo 2006, 04:23 am
Citar
Lee el post completo por favor. Asm no se compila. tongue

En ningun momento dije que el asm se compila:S, dije que el compilador compila el codigo fuente a asm, y la accion compilar recae sobre el codigo fuente, no sobre el asm , que es el resultado


Título: Re: Assembler?
Publicado por: JuszR en 14 Marzo 2006, 04:25 am
Ok entendi mal. Prácticamente eso fue lo que dije arriba, no entiendo para qué repetirlo. :P


Título: Re: Assembler?
Publicado por: div@d en 14 Marzo 2006, 04:29 am
Citar
Ok entendi mal. Prácticamente eso fue lo que dije arriba, no entiendo para qué repetirlo. tongue

jajaj no hay problema...

me sorprende la velocidad con la que respondes... :o


Título: Re: Assembler?
Publicado por: jose2c en 14 Marzo 2006, 18:45 pm
http://www.itlp.edu.mx/publica/tutoriales/ensamblador/index.htm

Parece wena  :D


Título: Re: Assembler?
Publicado por: xxThe_ChoseNxx en 15 Marzo 2006, 20:57 pm
Yo voy a ser original y te recomiendo estos dos libros:
  Este lorecomendó Jon DVD en su blog (la versión inglesa, claro)

http://www.agapea.com/Lenguaje-ensamblador-de-los-80x86-n10272i.htm

 Yo tengo este es algo más extenso que va desde un nivel básico hasta intermedio (7xx páginas)

 http://www.agapea.com/Ensamblador-n10472i.htm
Me lo compré ayer mismo.


Título: Re: Assembler?
Publicado por: JuszR en 15 Marzo 2006, 21:04 pm
me sorprende la velocidad con la que respondes... :o
Soy "Cyclopspeedy". ;D


Título: Re: Assembler?
Publicado por: jose2c en 15 Marzo 2006, 23:13 pm
The_ChoseN gracias por la referencia, de hecho buscaba una recomendacion.


Título: Re: Assembler?
Publicado por: Toxico en 16 Marzo 2006, 01:23 am
Yo voy a ser original y te recomiendo estos dos libros:
  Este lorecomendó Jon DVD en su blog (la versión inglesa, claro)

http://www.agapea.com/Lenguaje-ensamblador-de-los-80x86-n10272i.htm

 Yo tengo este es algo más extenso que va desde un nivel básico hasta intermedio (7xx páginas)

 http://www.agapea.com/Ensamblador-n10472i.htm
Me lo compré ayer mismo.

para los que no tienen pasta puedes subir los libros a algun host :P


Título: Re: Assembler?
Publicado por: D1e6o! en 17 Marzo 2006, 05:02 am
Asm: No tiene mucho que ver con programar e, c, c++, etc. etc.. son pocas las instrucciones y básicas, y después todas llamadas a subrutinas preprogramadas (apis en windows) pero te permite meterte a un nivel mucho mas cercano del procesador... Si querés programar asm en windows, te recomiendo que te bajes el masm32, hay muchos tutoriales y ejemplos acerca de él. Vas a necesitar una guía de las apis de windows también (hay un archivo que circula por internet, que ahora no se donde, creo que en la web de microsoft que tiene información detallada acerca de cada una de ellas) y comenzar estudiando los programas de ejemplo que trae. Para depurar, el ollydbg, que lo usan mucho los crackers. En linux el masm, que no lo conozco.. y en dos el tasm. Saludos y suerte


Título: Re: Assembler?
Publicado por: JuszR en 17 Marzo 2006, 08:01 am
Asm: No tiene mucho que ver con programar e, c, c++, etc.
¿Qué? Asm junto con C y C++ hacen un super-programa: OS (por ej.).


Título: Re: Assembler?
Publicado por: D1e6o! en 18 Marzo 2006, 00:34 am
Ok. aclaro, me refiero al método, instrucciones, etc...


Título: Re: Assembler?
Publicado por: jose2c en 18 Marzo 2006, 01:47 am
  Sigo creyendo que los tutos que circulan x internet sobre asm (almenos en español) no son muy buenos, yo quiero aprender bien a codear en asm  y por lo general en estos tutos dan por sentado muchas cosas, obvian otras, faltan muchos "porque" ...etc


Título: Re: Assembler?
Publicado por: JuszR en 19 Marzo 2006, 03:45 am
http://thsun1.jinr.ru/%7Ealvladim/man/asm.html
http://www.rinconsolidario.org/eps/asm8086/asm.html

Si encuentro más, los pongo. ;)


Título: Re: Assembler?
Publicado por: cyrux22 en 19 Marzo 2006, 16:07 pm
Si quieren aprender asm (por lo menos para win32) visiten la pagina http://win32assembly.online.fr/. Leyendo los tutos de iczelion q hay ahi aprendi yo (aparte de meter mano en el cracking). No van a salir siendo uno expertos en asm pero lo basico si.


Título: Re: Assembler?
Publicado por: jose2c en 6 Abril 2006, 04:35 am
No consigo ningun libro en español sobre ASM, me pase 2 horas chekando dos librerias bien grandes y nada... parece que me ekivoke de epoca xD, todos los libros son de lenguajes de alto nivel. Me podrían dar el nombre de algun buen libro sobre ASM para ver si esta en algun rincon de Venezuela? ya estoy frustrado, tendre que conformarme con los tutos que se consiguen en la web (todos lo buenos en ingles ¬¬)


Título: Re: Assembler?
Publicado por: Hexios en 7 Abril 2006, 07:47 am
Este lo consegui en el kiosco de revistas y diarios (aca en Argentina).

Biblioteca tecnica de programacion - Como programar en Ensamblador 80x86 - Prensa Tecnica. (Impreso en España 1997)
C/Vicente Muzas 15, 1º D Madrid 28043
Tel: (91) 5192353 - Fax (91) 4135577

Es un libro de bolsillo (en español) que viene con un CD
Mi opinion es que es aceptable, medianamente completo, por lo menos para empezar. (Fuel el primero y unico que consegui en español el resto siempre fueron en ingles)

Atentamente Hexios.


Título: Re: Assembler?
Publicado por: jose2c en 7 Abril 2006, 16:29 pm
muchas gracias Hexios, a ver si lo consigo.


Título: Re: Assembler?
Publicado por: JuszR en 23 Abril 2006, 19:40 pm
En linux el masm, que no lo conozco.. y en dos el tasm. Saludos y suerte
¿MASM en Linux? No lo creo, lo veo un poco difícil:

The Microsoft Macro Assembler (abbreviated MASM) is an assembler for the x86 family of microprocessors. It was originally produced by Microsoft for development work on their MS-DOS operating system, and was for some time the most popular assembler available for that operating system. It supported a wide variety of macro facilities and structured programming idioms, including high-level constructions for looping, procedure calls and alternation (therefore, MASM is an example of a high-level assembler). Later versions added the capability of producing programs for the Windows operating systems that were released to follow on from MS-DOS.

http://en.wikipedia.org/wiki/MASM



Tengo como 5 e-books muy buenos de Asm, en inglés obviamente. Si alguno los quiere que mande MP (son muchos Mb, no pienso subir todos). :rolleyes:


Título: Re: Assembler?
Publicado por: jose2c en 23 Abril 2006, 19:48 pm
No sabes de alguno que ya este en la web...¿link? (sube el que te parezca mas interesente  :rolleyes:)


Título: Re: Assembler?
Publicado por: Eternal Idol en 23 Abril 2006, 19:49 pm
ENSAMBLADOR PARA DOS, LINUX Y WINDOWS (INCLUYE CD-ROM)

http://www.casadellibro.com/fichas/fichabiblio/0,1094,2900000896402,00.html?codigo=2900000896402&titulo=ENSAMBLADOR+PARA+DOS%2C+LINUX+Y+WINDOWS+(INCLUYE+CD-ROM)


Título: Re: Assembler?
Publicado por: JuszR en 23 Abril 2006, 19:52 pm
43 euros, sucks.

Busca en www.blueportal.org | http://www.ebooksportal.org | http://babybluevn.co.nr

Creo que de allí saqué los que tengo. :rolleyes:


Título: Re: Assembler?
Publicado por: Eternal Idol en 23 Abril 2006, 19:55 pm
Lo vale.


Título: Re: Assembler?
Publicado por: JuszR en 23 Abril 2006, 20:04 pm
Citar
Una de las respuestas a esta pregunta sería que, programando en ensamblador, nos convertiremos prácticamente en artesanos del desarrollo de programas, ocupándonos de todas las tareas en las que deseemos intervenir personalmente. El tiempo empleado para crear cualquier programa será superior pero, a cambio, obtendremos programas muchísimo más pequeños e infinitamente más rápidos que los que podamos crear con cualquier lenguaje de alto nivel.
Me gustó esa descripción. :)

¿Está completo el libro?  :huh:


Título: Re: Assembler?
Publicado por: Eternal Idol en 23 Abril 2006, 20:23 pm
¿Está completo el libro?  :huh:

El 60% es sobre assembly, 40% sobre la BIOS y MS-DOS, 5% de Windows y 5% de Linux.


Título: Re: Assembler?
Publicado por: JuszR en 23 Abril 2006, 20:55 pm
El 60% es sobre assembly, 40% sobre la BIOS y MS-DOS, 5% de Windows y 5% de Linux.
Impresionante :o :o :o :o

Al fin uno bueno en español.


Título: Re: Assembler?
Publicado por: jose2c en 24 Abril 2006, 15:58 pm
Oye Eternal Idol no tendras un escaner............ xDDDD


Título: Re: Assembler?
Publicado por: Eternal Idol en 24 Abril 2006, 16:05 pm
Oye Eternal Idol no tendras un escaner............ xDDDD

La verdad es que no tengo.


Título: Re: Assembler?
Publicado por: P[i] en 24 Abril 2006, 16:21 pm
  Wenas aki os pongo dos tutos que a mi me parecen buenos y son los que estoy consultando ahora mismo El primero es para ASM AT&T y el segundo es de INTEL pero bueno el segundo fue titulado como curso de programacion de virus pero para aprender asm tambien vale.

http://www.it.uc3m.es/ttao/html/index.html

http://www.wikilearning.com/introduccion-wkccp-4312-1.htm
 
  Un saludo.


Título: Re: Assembler?
Publicado por: jose2c en 24 Abril 2006, 18:35 pm
Claro que si, cualquier cosa sobre el tema es bienvenida, ya con tantas cosas no se por donde empezar y por eso es que necesito algun libro que estructure bien los temas.


Título: Re: Assembler?
Publicado por: enrique8923 en 9 Noviembre 2008, 10:01 am
te enseñan en electronica, para programar PIC´s (microprocesadores) eso va más apuntado a la electronica de logica por microprocesadores  y tambien a la robotica, pero no va directo a crear programas para la computador, pero SIRVE, sí sabes usarlo en microprocesadores pic , pues podrás tener facilidad de hacerlo en una PC  ;).

Asi que si quieres aprender en internet hay muchos manuales, guias, tutoriales (la mayoria en ingles), y si quieres aprender aprender asi con profe, pues averigua sí en tu pais y en tu localidad habrán cursos de Microprocesadores y lenguaje assembler, y sí tienes suerte encontrarás, pero si no pues te queda solo Carrera de electronica, yo en lo persona no me cambiaria de carrera por aprender el lenguaje assembler, no lo deseo tanto asi.

Pero tengo que suerte deque hay un instituto que enseñan pero aún no lo han programa (fecha de inicio) estoy a la espera de ese curso, hay algunos institutos que enseñan C++ , java, visual basic, etc etc, el mio enseña todo menos C++, pascal, y assembler obio XD ya no lo aplican solo en la electronica.

pero eso no quiere decir que no lo puedas aprender, busca siempre en google, take google hay de todo, solo tienes que saber como usarlo.


Título: Re: Assembler?
Publicado por: Shaddy en 9 Noviembre 2008, 16:33 pm
te enseñan en electronica, para programar PIC´s (microprocesadores) eso va más apuntado a la electronica de logica por microprocesadores  y tambien a la robotica, pero no va directo a crear programas para la computador, pero SIRVE, sí sabes usarlo en microprocesadores pic , pues podrás tener facilidad de hacerlo en una PC  ;).

Asi que si quieres aprender en internet hay muchos manuales, guias, tutoriales (la mayoria en ingles), y si quieres aprender aprender asi con profe, pues averigua sí en tu pais y en tu localidad habrán cursos de Microprocesadores y lenguaje assembler, y sí tienes suerte encontrarás, pero si no pues te queda solo Carrera de electronica, yo en lo persona no me cambiaria de carrera por aprender el lenguaje assembler, no lo deseo tanto asi.

Pero tengo que suerte deque hay un instituto que enseñan pero aún no lo han programa (fecha de inicio) estoy a la espera de ese curso, hay algunos institutos que enseñan C++ , java, visual basic, etc etc, el mio enseña todo menos C++, pascal, y assembler obio XD ya no lo aplican solo en la electronica.

pero eso no quiere decir que no lo puedas aprender, busca siempre en google, take google hay de todo, solo tienes que saber como usarlo.

Se agradece la información, pero agradecería también que revisaras la fecha de los "post" para no "revivir" semejante mensaje de museo.

Salu2...


Título: Re: Assembler?
Publicado por: joseyana2007 en 12 Noviembre 2008, 02:58 am
Depende para que micro, lo normal es que encuentres lo que buscas en www.Intel.com o www.amd.com

llevo mas de 10 años usando solo assembler, te recomiendo que te lo pienses mucho. Yo antes programe en fortran C basic etc, pero el assembler es otro mundo y poco a poco te aisla de estos lenguajes de alto nivel hasta complicarte mucho el retorno a ellos, yo ahora tendria problemas para programar en C sin embargo pasar de basic a C fue casi trivial, salvo punteros y eliminacionde GO TOs

El assembler por si solo te sirve de muy poco, necesitas conocer las APIs de Win32 o llamadas al nucleo de Linux (MsDos ya lo descarto...) y a veces lo peor disponer de los headers (*.inc si usas MASM32 en Win32) si estos no existiesen y en caso de necesitar acceder a objetos COM ya ni te digo, es todo un infierno!

Entonces te preguntaras: por que usas MASM?, bien es facil: me gusta y yo no vivo de la programacion, me aficione y creeme que es toda una experiencia comunicarse con el procesador directamente, saber que todo lo que tecleas se compila tal cual, pero a nivel practico para ti que seras un informatico...NULO!

Creo que lo mejor es que te centres en C++ C# por que profesionalmente te serviran, deja el asm como hobby

y si usas uno sin lugar a dudas el masm32  www.mas32.com  (http://www.mas32.com) y los tutoriales de Iczellion que supongo te lo mencionarian antes (no lei todos los mensajes), pero repito: asm sin APIs no sirve de nada.