NASM

From Movaxes

(Difference between revisions)
 
(2 intermediate revisions not shown)
Line 1: Line 1:
-
La razón por la que escogí NASM es porque usa la sintaxis de Intel que es menos complicada que la de AT&T y es mejor para aprender, mas adelante pondré algunos tutoriales sobre las diferencias entre las dos sintaxis.
+
Esta página ha sido movida a [http://wiki.todoprogra.com/index.php?title=Nasm Nasm], también el resto de la wiki, allí encontrarás el nuevo contenido. :)
-
 
+
-
Los tutoriales sobre programación de Sistemas Operativos estarán escritos para ser compilados en NASM.
+
-
 
+
-
Algunas cosas que debes tener en cuenta es NASM:
+
-
 
+
-
Diferencia entre mayúsculas y minúsculas, así que no es lo mismo '''foo''' que '''FOO''' o que '''Foo'''.
+
-
---
+
-
En NASM siempre que quieras acceder al ''contenido'' de una locación de la memoria debes encerrar en '''[]'''.
+
-
---
+
-
Si una línea es demasiado larga puedes seguir en la de abajo usando '''\''' que le indica a NASM que la línea de abajo es parte de la misma.
+
-
---
+
-
Otra cosa muy útil es que si te confundes y pones algo como '''loadsb''' cuando lo correcto es '''lodsb''' NASM piensa que estás declarando un label:
+
-
<pre>
+
-
loadsb
+
-
</pre>
+
-
Nasm no se dará cuenta de tu erro y pensará que es un label, me ha pasado y es difícil encontrar el error. Lo que puedes hacer es agregar '''-w+orphan-labels''' cuando compiles, así:
+
-
<pre>
+
-
nasm -w+orphan-labels -o boot boot2.asm
+
-
</pre>
+

Current revision as of 17:50, 6 April 2007

Esta página ha sido movida a Nasm, también el resto de la wiki, allí encontrarás el nuevo contenido. :)

Personal tools