Skip to content

About

Toolkit completo con Emulador/Ensamblador/Preprocesador para programar para la máquina hipotética IAS de Von Neumann siguiendo las especificaciones más históricamente correctas.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Emulador de la IAS

Tabla de Instrucciones

La cantidad de instrucciones es de: 7 para transferencia de datos, 4 para saltos condicionales e incondicionales, 8 para aritmética y 2 para modificación de direcciones

Para un total de 21 instrucciones.

Transferencia de datos

HexCodop BinCodop Representación Descripción
0xA 00001010 LOAD MQ Transferir el contenido del registro MQ al acumulador AC
0x9 00001001 LOAD MQ, M(X) Transferir el contenido de la posición de memoria X a MQ
0x21 00001001 STOR M(X) Transferir el contenido del acumulador a la posición de memoria X
0x1 00001001 LOAD M(X) Trasferir M(X) al acumulador
0x2 00001001 LOAD – M(X) Transferir – M(X) al acumulador
0x3 00001001 LOAD |M(X)| Transferir el valor absoluto de M(X) al acumulador
0x4 00001001 LOAD – |M(X)| Transferir – |M(X)| al acumulador

Salto incondicionales y condicionales

HexCodop BinCodop Representación Descripción
0xD 00001101 JUMP M(X,0:19) Captar la siguiente instrucción de la mitad izquierda de M(X)
0xE 00001110 JUMP M(X,20:39) Captar la siguiente instrucción de la mitad derecha de M(X)
0xF 00001111 JUMP + M(X,0:19) Si el número en el acumulador es no negativo, captar la siguiente instrucción de la mitad izquierda de M(X)
0x10 00010000 JUMP + M(X,20:39) Si el número en el acumulador es no negativo, captar la siguiente instrucción de la mitad derecha de M(X)

Aritmética

HexCodop BinCodop Representación Descripción
0x5 00000101 ADD M(X) Sumar M(X) a AC; colocar el resultado en AC
0x7 00000111 ADD |M(X)| Sumar el módulo de M(X) a AC; colocar el resultado en AC
0x6 00000110 SUB M(X) Restar M(X) a AC; colocar el resultado en AC
0x8 00001000 SUB |M(X)| Restar el módulo de M(X) a AC; colocar el resultado en AC
0xB 00001011 MUL M(X) Multiplicar M(X) por MQ: colocar los bits más significativos del resultado de AC, y los menos significativos en MQ
0xC 00001100 DIV M(X) Dividir AC por M(X); colocar el cociente en MQ y el resto en AC
0x14 00010100 LSH Multiplicar el acumulador por 2; esto es, desplazar su contenido una posición a la derecha
0x15 00010101 RSH Dividir el acumulador por 2; esto es, desplazar su contenido una posición a la derecha

Modificación de direcciones

HexCodop BinCodop Representación Descripción
0x12 00010010 STOR M(X,8:19) Reemplazar el campo de dirección de la izquierda de M(X) por los 12 bits de la derecha de AC
0x13 00010011 STOR M(X,28:39) Reemplazar el campo de dirección de la derecha de M(X) por los 12 bits de la derecha de AC

About

Toolkit completo con Emulador/Ensamblador/Preprocesador para programar para la máquina hipotética IAS de Von Neumann siguiendo las especificaciones más históricamente correctas.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages