1. Puntero de Instrucciones Registros de Propósito General
1.1. Puntero IP
1.1.1. IP 16-bit en Modo Real
1.1.1.1. Dirección de Próxima Instrucción : CS:IP
1.2. Registros de Propósito General (Data Registers)
1.2.1. Acumulador (A): Ajuste ASCII,....
1.2.2. Base (B): tablas look-up
1.2.3. Count (C): operaciones loop, repetir operaciones string, shift/rotate
1.2.4. Data (D): indirect I/O, I/O string, Multi, Divide
1.3. Registros de Propósito General
1.3.1. Acumulador {A}: EAX, AX, AH, AL
1.3.1.1. Operaciones
1.3.1.1.1. Ajuste ASCII para suma/resta
1.3.1.1.2. Convertir byte a palabra/palabra a doble palabra/doble palabra a cúadruple palabra
1.3.1.1.3. Ajuste decimal para suma/resta
1.3.1.1.4. Multiplicación/división sin signo
1.3.1.1.5. División con signo
1.3.1.1.6. Operaciones de entrada/salida
1.3.1.1.7. Cargar/Guardar banderas
1.3.1.1.8. Cargar/Comparar/Guardar operaciones de cadenas
1.3.1.1.9. Traducciones Table-look up
1.3.2. Base {B}: EBX, BX, BH, BL
1.3.2.1. Operaciones
1.3.2.1.1. Traducciones Table-look up
1.3.3. Contador {C}: ECX, CX, CH, CL
1.3.3.1. Operaciones
1.3.3.1.1. Operaciones de lazos
1.3.3.1.2. Operaciones de repetir cadenas
1.3.3.1.3. Operaciones de desplazamiento/rotación variable
1.3.4. Data {D}: EDX, DX, DH, DL
1.3.4.1. Operaciones
1.3.4.1.1. Operaciones de entrada/salida indirecta
1.3.4.1.2. Operaciones de entrada/salida de cadenas
1.3.4.1.3. Multiplicación sin signo de palabra/doble palabra
1.3.4.1.4. División con signo de palabra/doble palabra
1.3.4.1.5. División sin signo de palabra/doble palabra
2. Punteros y Registros Índices
2.1. Dos registros índices (ESI, EDI) y dos punteros (EBP, ESP)
2.1.1. Puntero de Pila
2.1.1.1. ESP, SP
2.1.2. Puntero de Base
2.1.2.1. EBP, BP
2.1.3. Índice de Origen
2.1.3.1. ESI, SI
2.1.4. Índice de Destino
2.1.4.1. EDI, DI
2.2. En general guardan "offsets" de direcciones (16-bit modo real: 64 KB)
2.3. ESP (extended stack pointer) y EBP (extended base pointer)
2.4. Combinados con el registro SS producen direcciones físicas de memoria: SS:SP, SS:BP
2.4.1. TOS (top´of stack) : SS:SP
2.4.2. BP : un "offset" respecto de SS
2.5. ESI (extended source index register) y EDI (extended destination index register)
2.5.1. Combinan automáticamente con el registro de datos DS
3. Registro de Banderas
3.1. Es un registro de 32 bits. Pentium 4 define 18 banderas
3.2. En modo real solo 9 banderas se encuentran activas y se muestran a continuación
3.2.1. Banderas de Control
3.2.1.1. TF
3.2.1.1.1. ENGANCHE
3.2.1.2. DF
3.2.1.2.1. DIRECCIÓN
3.2.1.3. IF
3.2.1.3.1. HABILITADOR DE INTERRUPCIÓN
3.2.2. Banderas de Estado
3.2.2.1. OF
3.2.2.1.1. SOBRECARGA
3.2.2.2. SF
3.2.2.2.1. SIGNO
3.2.2.3. ZF
3.2.2.3.1. CERO
3.2.2.4. AF
3.2.2.4.1. ACARREO AUXILIAR
3.2.2.5. PF
3.2.2.5.1. PARIDAD
3.2.2.6. CF
3.2.2.6.1. ACARREO
3.3. Bandera de acarreo (CF) : enciende con carry-out, borrow-in
3.4. Bandera de paridad (PF) : enciende con paridad par
3.5. Bandera acarreo auxiliar (AF) : enciende con acarreo desde "nibble" bajo
3.6. Bandera cero (ZF) : enciende con resultado cero aritmético o lógico
3.7. Bandera de signo (SF) : "0" positivo "1" negativo
3.8. Bandera de sobrecarga (OF) : enciende con resultado con signo fuera de rango
3.9. Bandera de "trampa" (TF) : TF = 1 habilita modo "paso a paso"
3.10. Bandera de interrupción (IF) : IF = 1 habilita entrada INTR
3.11. Bandera de dirección (DF) : Con DF = 1 las operaciones "string" (cadena de caracteres) automáticamente decrementan el correspondiente puntero. Con DF = 0 incrementan
4. Dirección Física en Modo Real
4.1. Prefijo de Sustitución de Segmento
4.1.1. Variables, fuentes de cadenas : implícito DS; seg alterno : ES, FS, GS, SS, CS
4.1.2. Destino de cadenas : ES: seg alterno ninguno
4.1.3. BP usado como registro base: implícito SS; seg alterno: Es, FS, GS, DS, CS
4.1.4. BX usado como registro base: implícito DS; seg alterno: ES, FS, GS, SS, CS