Professional Documents
Culture Documents
ESTRUCTURA DE COMPUTADORES
UNIDAD II
INTRUCCIONES: LENGUAJE MAQUINA
1.- INTRODUCCION
Conceptos importantes
Repertorio de Instrucciones
"lmacenar (/tore) M R
s1 +R, P2&e3( (+S) F .untero G </ <R
Relacin entre %LL 3 "L
jemplo de C"R,"
%LL
" = # + A4$5
"L: asignacin g> h> i <8C> <8D 3 <8E
direccin de "rra3 "start
registro temporal: <D
jemplo de "LM"C#"MI#*O
%LL
A 4$5 = # + A 4$5
- &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
01 +,, As&a3& (+1.)
add +1-, +1,, +,
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
"L
01 +,, As&3a& (+1.)
add +,, +1,, +,
s1 +,, As&a3& (+1.)
Operandos MI./
, &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
ejemplo
add +,, +1-, +1,
%LL:
A4$5 = # + A4$5
"L:
01 +,,12''(+1.)
add +,,+1,,+,
s1 +,,12''(+1.)
O@O: diAerencias entre la primera 3 la tercera slo en un !it del O.CO'
12 &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
"rquitectura MI./
re$elada
13 &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
.- INSTRUCCIONES PARA TOMAR DECISIONES
resultados de clculo
jemplo:
%LL:
I! ($ == %) "(&( :1;
!="+#;
:1< !=!-$;
1) &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
"L: asignacin de registros A> g> h> i> j <8B>???><9=
be9 +1.,+2',:1
add +1/,+1-,+1,
:1< sb +1/,+1/,+1.
jemplo de !ucle:
%LL:
:((6< " = " + A4$5;
$ = $ + %;
$! ($ == #) "(&( :((66
"L: asignacin de registros g>h>i>j <8C>???> <9=
asignacin de $alor 7 <8= (tama0o :9 !its)
:((6< 70& +.,+1.,+1'
01 +,,As&a3&(+.)
add +1-,+1-,+,
add +1.,+1.,+2'
b2e +1.,+1,,:((6
1* &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
jemplo de while:
%LL:
1#$0e (sa>e4$5 == ?)
$ = $ + %;
"L:
:((6<70& +.,+1.,+1'
01 +,,Ss&a3&(+.)
b2e +,,+21,E@$&
add +1.,+1.,+2'
% :((6
E@$&< AAA
1/ &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
s preAeri!le dos instrucciones rpidas a complicar todo el hardware con una sola
1- &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
jemplo:
%LL:
s1$&c#(?)E
case '< ! = $+%; b3ea?6 LM N O = ML
case 1< ! = "+#; b3ea?; LM N O 8 ML
case 2< ! = "-#; b3ea?; LM N O 9 ML
case 3< ! = $-%; b3ea?; LM N O : ML
F
1, &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
"L: asignacin A>g>h>i>j>N <8B> ???> <98
:((6< 70& +.,+1.,+21 F <E O NM7
01 +,,G76&ab0e(+.)
%3 +,
:'< add +1/,+1.,+2'
% E@$&
:1< add +1/,+1-,+1,
% E@$&
:2< sb +1/,+1-,+1,
% E@$&
:3< sb +1/,+1.,+2'
% E@$&
E@$&< AAA
@umpta!le: ta!la de direccin de saltos
jr <D: salta a la direccin contenida en el registro <D?
1. &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
"rquitectura MI./ presentada
2' &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
!.- SOPORTAR PROCEDIMIENTOS EN EL HARDWARE DEL COMPUTADOR
/alto al procedimiento
#o preser$ado en la llamada
.reser$ado en la llamada
BES en el /pice
jemplo:
Carga la constante ==:'=E== en <8B
0$ +1/, /1 F B8
==:'(%eH)
add$ +1/, +1/, 23') F 9:=7
'E==(%eH)
<98
Vtil en !ucles?
/altos relati$os al .C
9
8I
.roponen:
Ms instrucciones
Ms complejas o potentes
Consecuencias
"utoincremento
Operaciones complejas
en otra mquina
:((6< AAAAAAA
$cb +1., +2', :((6 F <8E <8EG8 6
F si <8E T <9= ir a Loop
%a!r4a que hacer con 8> 9> 7 3 D seg;n el incremento que se genere
se complica ( lentitud)
3- &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
&.- E'EMPLO COMPLETO I
Xamos a $er el cdigo en ensam!lador (MI./) para un procedimiento en C
Cuerpo
&e7 = >4?5;
>4?5 = > 4?+15;
>4?+15 = &e766
*raduccin:
70$ +2, +*, ) F <9 ON M 7 (op? de 7 !3tes)
add +2, +), +2 F <9 $ G 7MN $[N\
01 +1*, ' (+2) F <8I (temp) O $[N\
01 +1/, ) (+2) F <8B O $ [NG8\
s1 +1/, ' (+2) F $[N\ O <8B
s1 +1*, ) (+2) F $[NG8\ O <8I (temp)
3. &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
"juste de la pila
add$ +2., +2., -12 F crece hacia a!ajo
Xamos a $er el cdigo Auente 3 ensam!lador de procedimientos que !orran una secuencia de
pala!ras de memoria
Codigo en %LL
)tili2ando 4ndice de arra3
c0ea3 1 ($2& a33aI 4$5, $2& s$Je)
E
$2& $;
!(3 ($ = '; $ B s$Je; $ =$+1)
a33aI 4$5 = ';
F
)2 &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
)tili2ando puntero
c0ea3 2 ($2& K a33aI, $2& s$Je)
E
$2& K6;
!(3 (6= L a33aI 4M5; 6 B L a33aI4s$Je5; 6=6+1)
K6 = ';
F
Cdigo MI./
)tili2ando un arra3
.rincipios del computadora de programa almacenado que les hace de propsito general
Ms peque0o es ms rpido
)so de registros
l lenguaje ensam!lador
1cil de recordar
Categor4a
'/"C (8E7E)
Cdigo 1uente
A = B + C;
*' &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
Cdigo nsam!lado
Cdigo 1uente
A = B + C;
Cdigo
nsam!lado
*2 &R" ' "R()*IC*)R" + *C#OLO,-" ' COM.)*"'OR/
UNIVERSIDAD DE CORDOBA
ESTRUCTURA DE COMPUTADORES
UNIDAD II
1ilosoA4a CI/C