Generalidades sobre ensamblador
De Romhack Hispano
Este artículo es un esbozo. Colabora ampliándolo.
El lenguaje ensamblador es un lenguaje de programación a muy bajo nivel, pero legible por humanos. Generalmente cada instrucción en ensamblador corresponde a una instrucción en código máquina, en ocasiones, hay instrucciones en ensamblado (macros) que representan dos o mas instrucciones de código máquina (pero no suele ser lo normal).
En cuanto al tipo de instrucciones:
- Transferencia de datos: registros->memoria, memoria->registros, entrada/salida
- Operaciones aritmético-lógicas (procesadas por la ALU): suma, resta, multiplicación, división, AND, OR, XOR, NOT, desplazamiento de bits, SET, RESET...
- Operaciones de control de flujo: saltos condicional/incondicional, llamadas a funciones, retorno de funciones
En casi todos los procesadores suele haber dos registros muy importantes: PC (Program Counter) y SP (Stack Pointer) El primer registro se encarga de almacenar la dirección de memória de la instrucción que se va a ejecutar, mientras que el segundo registro se encarga de guardar la dirección de la pila.

