Curso de assembler

Páginas: 26 (6377 palabras) Publicado: 9 de diciembre de 2010
CURSO DE ASM
Curso de ensamblador
------------------------------------------------------------------------------
┌────────┐
│ INDICE │
└────────┘

1.- Sistemas númericos

2.- Operaciones con bytes
2.1.- AND
2.2.- OR
2.3.- XOR
2.4.- NOT

3.- El juego de registros

4.- ¡¡¡ Comenzamos !!!5.- Operacines
5.1.- INC y DEC
5.2.- ADD y SUB
5.3.- NEG y NOT
5.4.- MUL y DIV

6.- Flags
6.1.- Instrucciones de comparación (CMP y TEST)

7.- Las instrucciones de salto
7.1.- Saltos incondicionales
7.2.- Saltos condicionales
7.3.- Bucles

8.- La pila8.1.- La orden CALL

9.- Interrupciones

10.- Resto de órdenes
10.1.- XCHG
10.2.- LEA
10.3.- LDS y LES
10.4.- DELAYs
10.5.- Instrucciones de cadena
10.6.- Datos
10.7.- Acceso a puertos I/O
10.8.- Anulación de interrupciones

11.- Estructura COM

12.-Estructura EXE

13.- Apéndice A: Juego de instrucciones

14.- Apéndice B: Numeración negativa

15.- Agradecimientos y dedicatorias

------------------------------------------------------------------------------

┌──────────────────────┐
│ Sistemas numéricos │
└──────────────────────┘Comencemos por los sistemas de numeración que más utilizaremos al
programar.

El básico va a ser el sistema hexadecimal, aunque debemos de explicar
antes el binario, el sistema de numeración que utiliza el ordenador.

Los números que conocemos están escritos en base 10. Esto significa que
tenemos, desde el 0 hasta el 9, diez símbolos para representar cada cifra.
Es decir, cadacifra irá de 0 a 9, y al superar el valor "9", cambiará a
0 y sumará uno a su cifra de la izquierda: 9+1: 10 .
El sistema binario utiliza tan sólo dos símbolos, el "0" y el "1".
Imaginemos que tenemos el número binario "0". Al sumarle una unidad,
éste número binario cambiará a "1". Sin embargo, si volvemos a añadirle
otra unidad, éste número en formato binario será el "10" (aumenta la
cifra a la izquierda, que era 0, y la anterior toma el valor mínimo ).
Sumemos ahora otra unidad: el aspecto del número será "11" ( tres en
decimal ). Y podríamos seguir:

Binario: 0 ; 1 ; 10 ; 11 ; 100 ; 101 ; 110; 111 ; 1000 ; 1001 ; 1010,...
Decimal: 0 1 2 3 4 5 6 7 8 9 10

Esto nos permite establecer un sistema bastante sencillo deconversión
del binario al decimal;

He aquí los valores siendo n el valor de la cifra:

Cifra menos significativa:

n*2^0 = 1 si n=1 o 0 si n=0

Segunda cifra:

n*2^1 = 2 si n=1 o 0 si n=0

Tercera cifra:

n*2^2 = 4 si n=1 o 0 si n=0

Cuarta cifra:

n*2^3 = 8 si n=1 o 0 si n=0

Etc,...

Y asícontinuaríamos, aumentando el número al que se eleva 2. Traduzcamos
entonces el número binario '10110111'

2^7+ 0 +2^5+2^4+ 0 +2^2+2^1+2^0 = 128 + 0 + 32 + 16 + 4 + 2 + 1 = 183
1 0 1 1 0 1 1 1

De todos modos, ésta transformación la he puesto símplemente para que se
comprenda con más claridad cómo funcionan los números binarios. Es mucho
más aconsejable el uso deuna calculadora científica que permita realizar
conversiones entre decimales, hexadecimales y binarios. Se hace su uso
ya casi imprescindible al programar.

La razón del uso de los números binarios es sencilla. Es lo que entiende
el ordenador, ya que interpreta diferencias de voltaje como activado ( 1 )
o desactivado ( 0 ), aunque no detallaré ésto. Cada byte de información está...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Assembler
  • Assembler
  • Assembler
  • assembler
  • Pwm Assembler
  • Intrupciones Assembler
  • Calculadora Assembler
  • Leds

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS