Sie sind auf Seite 1von 6

INTRODUCCIÓN AL

ENTORNO DE SIMULACIÓN
DE LA
MÁQUINA RUDIMENTARIA

Lenguaje Ensamblador
• 15 Instrucciones
• Directivas
• Reserva de memória
• Asignación
• Inicio y fin de programa
• Etiquetas
• Macros
• Proceso de ensamblado
• Ejemplo

La Máquina Rudimentaria – Entorno de simulación 2


Instrucciones
Aritméticas: Salto:
ADDI Rf, #num, Rd BR dir_absoluta
SUBI Rf, #num, Rd
BEQ dir_absoluta
ADD Rf1, Rf2, Rd
SUB Rf1, Rf2, Rd BL dir_absoluta
ASR Rf1, Rd BLE dir_absoluta
AND Rf1, Rf2, Rd BNE dir_absoluta
BGE dir_absoluta
Acceso a memoria:
BG dir_absoluta
LOAD dir_base(Ri), Rd
STORE dir_base(Ri), Rd

La Máquina Rudimentaria – Entorno de simulación 3

Etiquetas
Definición:
Mecanismo que ofrece el lenguaje ensamblador para
crear programas sin conocer las direcciones absolutas
de memoria donde se ubican datos e instrucciones
La etiqueta se asocia a la dirección de memoria
que ocupa ese dato o instrucción
Al hacer referencia a la etiqueta, el ensamblador la
sustituye por la dirección de memoria que representa
Utilización:
Declaración de datos, Instrucciones de acceso a
memoria, Instrucciones de salto, Directiva de inicio…

La Máquina Rudimentaria – Entorno de simulación 4


Directivas
Indicaciones para el programa ensamblador que permiten
controlar el proceso de ensamblado. Están precedidas por un punto.

1. Reserva de memoria: define y reserve word


.dw n1 {, n2, … , nN } .rw n
2. Definición de constantes (en decimal):
identificador = expresión (Ejemplo: n=12)
3. Inicio y fin de programa:
.begin identificador .end
4. Ubicación en memoria (para subrutinas):
.org dir (Para guardar instrucciones aparte)

La Máquina Rudimentaria – Entorno de simulación 5

Macros
Creación de pseudo-instrucciones
Declaración:
.def nombre { argumento {, argumento }}
{ cuerpo de la macro }
.enddef
Tipos de argumentos:
$dn: el operando es una dirección de memoria
$in: el operando es una constante inmediata
$n: el operando es un registro

La Máquina Rudimentaria – Entorno de simulación 6


Cuadro resumen

La Máquina Rudimentaria – Entorno de simulación 7

Ensamblado sin Macros

posten prog.asm

- SiMR2.0: El ensamblado se realiza aparte, en una ventana de MS-DOS


- SiMR3.0: El ensamblado se realiza en el propio simulador

La Máquina Rudimentaria – Entorno de simulación 8


Ensamblado con Macros

pren prog.mr
(macros.mr)

- El preensamblador crea un prog.asm que contiene las macros


(expandidas) usadas en prog.mr pero que están definidas en macros.mr

La Máquina Rudimentaria – Entorno de simulación 9

Ejemplo: Fichero de Macros


.DEF CMP $1,$2 .DEF MOV $d1, $2
SUB $1,$2,R0 LOAD $d1, $2
.ENDDEF .ENDDEF
.DEF CMP $1,$i2
.DEF MOV $d1,$d2,$3
SUBI $1,$i2,R0
LOAD $d1,$3
.ENDDEF
STORE $3,$d2
.DEF CLR $1
.ENDDEF
ADD R0, R0, $1
.ENDDEF .DEF INC $1
.DEF MOV $1, $2 ADDI $1, #1, $1
ADD $1,R0, $2 .ENDDEF
.ENDDEF
.DEF MOV $i1,$2 .DEF DEC $1
ADDI R0,$i1,$2 SUBI $1, #1, $1
.ENDDEF .ENDDEF

La Máquina Rudimentaria – Entorno de simulación 10


Entorno de simulación
Simulador de la Máquina Rudimentaria:
• Simulador gráfico en entorno Windows
• Lenguaje ensamblador
• Plegado y desplegado de las macros
• Unidad de proceso / Unidad de control
Ejecución: F9. (Reset F10)
• Ciclo a ciclo, F7
• Instrucción a instrucción, F8
• Inserción de break-points
• Generación de trazas mediante cronogramas

La Máquina Rudimentaria – Entorno de simulación 11

La Máquina Rudimentaria – Entorno de simulación 12

Das könnte Ihnen auch gefallen