Professional Documents
Culture Documents
Bus de direcciones de 24bits y bus de datos de 16bits, bus de control conformado por las
lneas WR para las operaciones de escritura y RD para las operaciones de lectura, ambas
son bajo activas.
Registros:
Acumulador (AC) de 16bits.
Registro Auxiliar (AR) de 16 bits. Registro que almacena la parte alta del producto, pero que
puede usarse como un acumulador de repuesto.
Puntero de Pila (SP) de16bits.
Contador de programa (PC) de 24bits.
Puntero X (IX) de 16bits.
Puntero Y (IY) de 16bits.
Registro de Estado (SR) 8bits (No es propiamente un registro).
Bits de estado: Z = resultado cero; N = resultado negativo; C = acarreo de salida;
V = desbordamiento; I = bandera de interrupcin;
Puntero de Pginas:
HSP[8] = Pgina de la pila.
HPC[8] = Pgina del programa.
HDS[8] = Pgina de datos.
Registros transparentes
DT, DM, IR, MPR y SC
MPR es un registro de 32 bits usado por la instruccin MAC.
SC es un registro de 16 bits para uso genrico.
Data[0:15]
uSIT2.0
RST
IRQ
~WR
~RD
ADDRS[0:23]
Instrucciones de Memoria
0 1
1
5 6
OP
11 12
AM
15
reg
Patrn 1
Las instrucciones son de una o dos palabras dependiendo del modo de direccionamiento. Los
modos donde se especifique una direccin de memoria o un valor inmediato sern de dos
palabras.
El campo reg indica el registro de trabajo. Con cuatro bits se pueden direccionar 16 registros .
El bit 0 indica el tipo de instruccin. Si es 1 entonces la instruccin es de memoria tal como se
indica en el patrn 1; si es 0 entonces la instruccin tendr otro patrn y depender del tipo.
Ecuacin
Descripcin
Cdigo
Suma.
Suma con acarreo.
Resta.
Resta con acarreo.
Comparacin.
Carga registro.
AND lgico.
OR lgico.
XOR.
Guarda registro.
Complemento a 1.
Complemento a 2.
Incremento.
Decremento.
Salto incondicionado.
Llama a subrutina.
Intercambio.
Multiplicacin.
Divisin.
Traslacin a la derecha.
Traslacin arit a derecha.
Traslacin a la izquierda.
Rotacin a la derecha.
Rotacin a la izquierda.
00000
00001
00011
00010
00111
00110
00101
00100
01100
01101
01111
01110
01010
01011
01001
01000
11000
11001
11011
11010
11110
11111
11101
11100
Modos De Direccionamiento
0 1
1
IR[6:11]
000xxx
001xxx
010000
010001
010101
010011
010111
011000
011001
011101
011011
011111
100xxx
110000
110001
110101
110011
110111
111000
111001
111101
111011
111111
5 6
OP
modo de direcc.
inmediato
directo
indexado X
indexado X+
indexado +X
indexado Xindexado -X
indexado Y
indexado Y+
indexado +Y
indexado Yindexado -Y
indirecto
indirecto indexado X
indirecto indexado X+
indirecto indexado +X
indirecto indexado Xindirecto indexado -X
indirecto indexado Y
indirecto indexado Y+
indirecto indexado +Y
indirecto indexado Yindirecto indexado -Y
11 12
AM
Mnemnico
DATO = #ADDR
DATO = ADDR
DATO = ADDR,X
DATO = ADDR,X+
DATO = ADDR,+X
DATO = ADDR,XDATO = ADDR,-X
DATO = ADDR,Y
DATO = ADDR,Y+
DATO = ADDR,+Y
DATO = ADDR,YDATO = ADDR,-Y
DATO = (ADDR)
DATO = (ADDR),X
DATO = (ADDR),X+
DATO = (ADDR),+X
DATO = (ADDR),XDATO = (ADDR),-X
DATO = (ADDR),Y
DATO = (ADDR),Y+
DATO = (ADDR),+Y
DATO = (ADDR),YDATO = (ADDR),-Y
15
reg
Patrn 1
Descripcin
Inmediato
Directo
Indexado por X
Indexado por X con post-incremento.
Indexado por X con pre-incremento.
Indexado por X con post-decremento.
Indexado por X con pre-decremento.
Indexado por Y.
Indexado por Y con post-incremento.
Indexado por Y con pre-incremento.
Indexado por y con post-decremento.
Indexado por Y con pre-decremento.
Indirecto.
Indirecto indexado por X.
Indirecto indexado por X con post-incremento.
Indirecto indexado por X con pre-incremento.
Indirecto indexado por X con post-decremento.
Indirecto indexado por X con pre-decremento.
Indirecto indexado por Y.
Indirecto indexado por Y con post-incremento.
Indirecto indexado por Y con pre-incremento.
Indirecto indexado por Y con post-decremento.
Indirecto indexado por Y con pre-decremento.
0 1
3 4
0 0 0 0
7 8
OP
11 12
RegD
Nemnico
Ecuacin
15
RegF
Descripcin
Suma.
Suma con acarreo.
Resta.
Resta con acarreo.
Comparacin.
AND lgico.
OR lgico.
XOR.
Carga registro.
Intercambio.
Multiplica y acumula
OP
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111
Registro
Acumulador
Acumulador Auxiliar
Indicador X
Indicador Y
Puntero de Pila
Contador de Programa
Pgina de datos
Alta del PC
Alta del SP
Registro de Estado
Id. Binaria
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
3 4
14
0 0 0 1
Condicin
14
sbr f C C N N Z Z V V N@V
sbr = 0 ramificacin condicionada
sbr = 1 ramificacin a subrutina
f = 0 salto con la condicin normal
f = 1 salto con la condicin negada
15
Modo
Modo
Directo
Indirecto
0
1
Instrucciones de Registro
0 1
3 4
0 0 1 1
7 8
OP
11
Reg
15
Nemnico
Ecuacin
Descripcin
OP
CLR reg
INC reg
DEC reg
NEG reg
NOT reg
SHR reg,n
ASR reg,n
SHL reg,n
ROR reg,n
ROL reg,n
PUSH reg
POP reg
CLC
SEC
CLI
SEI
reg = 0
reg = reg + 1
reg = reg 1
reg = -reg
reg = ~reg
reg = 0 DATO(n veces)
reg = b15 reg(n veces)
reg =
DATO(n veces) 0
reg = b0 reg(n veces)
reg =
DATO(n veces) B15
M(-SP) = reg
reg = M(SP+)
C = 0
C = 1
I = 0
I = 1
borra registro
Incremento.
Decremento.
Complemento a 2.
Complemento a 1.
Traslacin a la derecha.
Traslacin arit a derecha.
Traslacin a la izquierda.
Rotacin a la derecha.
Rotacin a la izquierda.
Deposita registro en la pila
Extrae registro de la pila
Borra Acarreo
Alza Acarreo
Borra Bandera I
Alza Bandera I
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
1011
1001
1000
Instrucciones Miscelaneas
0 1
15
0 0 1 0
Nemnico
Ecuacin
Descripcin
NOP
RET
RTI
NA
PC = M(SP+)
PC = M(SP+)| SR = M(SP+)
NO OPERA
Recupera PC de la Pila
Recupera PC y SR de la Pila
OP
Tarea No 3
Ej. 1
Traduzca las siguientes instrucciones a lenguaje de mquina la h indica que el nmero es
hexadecimal:
a.
b.
c.
d
e
f
g
ld ix #2045h
st ac fde3h
add ac ix
inc fed4h,x
dec (fed4),x+
dec ix
call 2345,-y
Ej.2
Se requiere medir el largo de una frase que termina en 00. La frase est almacenada en la direccin
FraseDir tal como se ejemplifica a continuacin:
FraseDir
db Hola Mundo,0
Haga una subrutina que realice lo propio y que entregue el resultado en el acumulador.
Ej.3
Se requiere copiar de una frase de una posicin origen a otra posicin destino tal como se ilustra:
FraseOrDir: db Hola Mundo,0
FraseDeDir:
Ej.4
Se requiere implementar un convertidor de paralelo a serie para transmisin en serie, realice la
interfaz asumiendo que:
El dato a convertir reside en el registro A,
Que la conversin se da a travs del registro de corrimiento ubicado en la posicin RegCorrDir
Que la transmisin se efectuar por el bit menos significativo de este registro
Que entre cada bit transmitido se deber ejecutar una subrutina de retardo Bdrte para calibrar
el baudrate.
Realizar el programa de transmisin. La rutina de calibracin se muestra a continuacin.
Bdrte:
ld ix #BAUDRATE
begin0:
dec ix
bne begin0
ret
Ej5
Se requiere realizar la suma de dos nmeros de 32 bits cada uno est almacenado en dos
posiciones de memoria consecutivas tal que la parte mas significativa ocupa la posicin cuya
direccin es mayor por ejemplo si se requiere sumar NUM2 = NUM1 + NUM2 y NUM1 = $01004530
y NUM2 = $00A00200.
NUM1 dw $4530 ; parte menos significativa de NUM1.
dw $0100 ; parte mas significativa.
NUM2 dw $0200 ; parte menos significativo de NUM2
dw $00A0 ; parte mas significativa.
El resultado de la suma debe reemplazar al NUM2.