You are on page 1of 29

Ingeniera Electrnica

UNSA
_____________________________________________________________________________
UNIVERSIDAD NACIONAL DE SAN AGUSTIN
FACULTAD DE INGENIERIA DE PRODUCCION Y
SERVICIOS
ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA
TEMA
Lab. 4 Cdigo Maquina, Debug
DOCENTE
Ing. ERASMO SULLA
CURSO DE
Lab. ARQUITECTURA DE COMPUTADORAS
INTEGRANTES
ARE!UIPA"PERU
#$%&
1
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
INDICE
%'" MANUAL (REVE DE )DE(UG*
+++++++++++++++++++++ &

#'"
A ASSEM(LE
++++++++++++++++++++' ,
D DUMP
++++++++++++++++++++' -
E DIRECCION EDIT
++++++++++++++++++++' -
F FILL
++++++++++++++++++++' .
G GO
++++++++++++++++++++' .
/ NUM% NUM# /E0
++++++++++++++++++++' 1
L LOAD
++++++++++++++++++++' 1
M RANGO DIRECCION MOVE
+++++++++++++++++++ + 2
N NOM(RE NAME
++++++++++++++++++++ 2
P STEP
++++++++++++++++++++ 2
! !UIT
++++++++++++++++++++ 2
R REGISTERS
++++++++++++++++++++ 2
2
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
S SEARC/
++++++++++++++++++++ %$
T TRACE
++++++++++++++++++++ %$ U
UNASSEM(LE ++++++++++++++++++++
%%
3 3RITE
++++++++++++++++++++ %#
&'" E4EMPLOS
++++++++++++++++++++ %&
MANUAL (REVE DE )DE(UG*
Se !aa de una ui"idad #u$ %o&o a#igab"e, 'in #en(' $ )'"o en
*e!'ione' !e&iene') &on a$uda #+ni#a, %e!o una *e, a%!endido' uno'
&uano' &o#ando' e' e-!e#ada#ene %oene. .a$ quien "o
&on'ide!a &o#o e" #e/o! %!og!a#a que 0a 0e&0o Mi&!o'o1.
Debug, in*o&ado 'in %a!2#e!o', 'e &a!ga $ %a'a a #o'!a! un
"a&ni&o guin, a "a e'%e!a de !dene' de" u'ua!io. Toda' )a e-&e%&in
de "a' !e"ai*a' a o%e!a&ione' &on #e#o!ia e-%andida, que no 'e
*e!2n aqu+) &on'an de una (ni&a "e!a 'eguida o no de %a!2#e!o'. Si
'e *a a de'en'a#b"a! un %!og!a#a, 'e "e %uede indi&a! a debug que
"o &a!gue a#bi3n !a' &a!ga!'e 3" e'&!ibiendo4
debug no#b!e)de")%!og!a#a a!gu#eno')de")%!og!a#a
C456 Debug 7Ene!8
En "a 'iguiene "+nea a%a!e&e!2 un guin, 3'e e' e" indi&ado! de"
Debug, en e'e #o#eno 'e %ueden in!odu&i! "a' in'!u&&ione' de"
Debug. Ui"i,ando "o' &o#ando'4 - r [Enter]
Se de'%"ega!an odo' "o' &onenido' de "o' !egi'!o' ine!no' de "a
UCP9 una 1o!#a a"e!nai*a de #o'!a!"o' e' u'a! e" &o#ando :!:
;
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
ui"i,ando &o#o %a!a#e!o e" no#b!e de" !egi'!o &u$o *a"o! 'e quie!a
*i'ua"i,a!. Po! e/e#%"o4
) r56
E'a in'!u&&in de'%"ega!2 uni&a#ene e" &onenido de" !egi'!o <= $
&a#bia e" indi&ado! de" Debug de 7 " 7 a 7 7
E'ando a'+ e" %!o#% e' %o'ib"e &a#bia! e" *a"o! de" !egi'!o que 'e
*i'ua"i, e&"eando e" nue*o *a"o! $ a &oninua&in 7Ene!8, o 'e
%uede de/a! e" *a"o! ane!io! %!e'ionando 7Ene!8 'in e"&"ea! ning(n
*a"o!.
E' %o'ib"e &a#bia! e" *a"o! de" !egi'!o de bande!a', a'+ &o#o
ui"i,a!"o &o#o e'!u&u!a de &on!o" en nue'!o' %!og!a#a' &o#o 'e
*e!2 #a' ade"ane. Cada bi de" !egi'!o iene un no#b!e $ 'igni>&ado
e'%e&ia", "a "i'a dada a &oninua&in de'&!ibe e" *a"o! de &ada bi,
ano a%agado &o#o %!endido $ 'u !e"a&in &on "a' o%e!a&ione' de"
%!o&e'ado!4
O*e!?o@
AB C no 0a$ de'bo!da#ieno9
OB C '+ "o 0a$
Di!e&ion
UP C 0a&ia ade"ane9
DA C 0a&ia a!a'9
Ine!!u%'
DI C de'a&i*ada'9
EI C a&i*ada'
Sign
PL C %o'ii*o9
AD C negai*o
Ee!o
AE C no e' &e!o9
ER C '+ "o e'
Au-i"ia!$ Ca!!$
AA C no 0a$ a&a!!eo au-i"ia!9
AC C 0a$ a&a!!eo au-i"ia!
Pa!i$
PO C %a!idad non9
PE C %a!idad %a!9
Ca!!$
AC C no 0a$ a&a!!eo9
CF C S+ "o 0a$
4
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
A ASSEM(LE
Sin %a!2#e!o' en'a#b"a "a' in'!u&&ione' que 'e in!odu,&an,
gua!d2ndo"a' en "a di!e&&in 'iguiene a "a que 'e ""eg en e" ("i#o
:a:.
Cuando 'e ui"i,a e'e &o#ando 'e "e %uede da! &o#o %a!2#e!o "a
di!e&&in donde 'e de'ea que 'e ini&ie e" en'a#b"ado, 'i 'e o#ie e"
%a!2#e!o e" en'a#b"ado 'e ini&ia!2 en "a "o&a"i,a&in e'%e&i>&ada
%o! CS4IP, u'ua"#ene G1GG., que e' "a "o&a"i,a&in donde deben
ini&ia! "o' %!og!a#a' &on e-en'in .COM, $ 'e!2 "a "o&a"i,a&in que
ui"i,a!e#o' debido a que debug 'o"o %uede &!ea! e'e i%o e'%e&+>&o
de %!og!a#a'.
Ta#bi3n 'e "e %uede de&i! qu3 ,ona 'e de'ea *e! &on a <direccion>
%udiendo 'e! "a di!e&&in ab'o"ua (a segmento:desplazamientoH o
!e"ai*a a" 'eg#eno de &digo a&ua" Ia desplazamientoH.
Pa!2#e!o'4 Jdi!K&o#ien,o6
Re'u"ado'4 'e %ueden e'&!ibi! in'!u&&ione' en en'a#b"ado! a %a!i!
de "a di!e&&in de #e#o!ia
CS4Jdi!K&o#ien,o6, 0a'a que 'e %u"'e IATRO. Si no e'%e&i>&a#o' e"
%a!2#e!o
Jdi!K&o#ien,o6 'e o#a &o#o di!e&&in de ini&io CS4IP
E/e#%"o4 Ba#o' a u'a! "a in'!u&&in MOB, que &o#o *e!e#o' #2'
ade"ane, 'i!*e %a!a &o%ia! dao' de "a #e#o!ia a "o' !egi'!o' $
*i&e*e!'a, ade#2' de &o%ia! dao' en!e !egi'!o', que e' /u'o "o que
*a#o' a u'a! en e" e/e#%"o.
)a
2G4L4G1GM #o* a-,b-
2G4L4G1GL #o* b-,&-
2G4L4G1GA
)u 1GM 1GL
2G4L4G1GM LNDL MOB A=,<=
2G4L4G1GL LNC< MOB <=,C=
Co#o *e!e#o' #2' ade"ane, "a in'!u&&in OUO 'i!*e %a!a 0a&e!
*o"&ado' de #e#o!ia, %e!o no *iendo e" &onenido de "a #i'#a, 'ino
ine!%!e2ndo"a &o#o in'!u&&ione' en "engua/e en'a#b"ado!.
9 E/e#%"o 2
)! &'
CS 2G4L
42GPG
)a 2GG
2GPG4G2GG #o* a-,b-
2GPG4G2G2
)u 2GG 2GG
2GPG4G2GG LNDL MOB A=,<=
D DUMP
Mue'!a e" &onenido de una ,ona de #e#o!ia en 0e-ade&i#a" $ en
ASCII. Sin %a!2#e!o' #ue'!a "o' %!i#e!o' 12L b$e' a %a!i! de "a
P
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
%o'i&in a "a que 'e ""eg en e" ("i#o :d:. Si 'e "e da un !ango,
#o'!a!2 e'e !ango.
Pa!2#e!o'4 Jdi!K16 9 Di!e&&in de &o#ien,o de" *o"&ado 7Jdi!K268 9
Di!e&&in >na" de" *o"&ado.
Re'u"ado4 P!e'ena %o! %ana""a e" &onenido de "a' di!e&&ione' de
#e#o!ia en!e DS4Jdi!K16 $
DS4Jdi!K26 I 'i no 'e 0a e'%e&i>&ado e" 'egundo %a!2#e!o, no' 0a&e
un *o"&ado de'de Jdi!K16
E/e#%"o4
)d 1GG
2G4L4G1GG N2 D; ;D M4 GG QQ G< ;D)PG GG Q; G; GP M4 GG GP
..Cd.@.CP.'..d..
2G4L4G11G MC GQ A; <R E1 EL 4C GG)<G GL RL PR ;4 GG ;Q 2G
".....L....K4.Q
2G4L4G12G RR E< RL ;; CG P1 <N GA)GG LG ;C ;G Q2 12 LG
;C ...;.Q....JG!..J
2G4L4G1;G ;N QQ GD RM E1 G2 G4 LG)D4 GG 2D ;G GG 4M E< EN
N@........)G.R..
2G4L4G14G PN C; AC ;A GM 2< E1 Q4)GE ;C 2R Q4 GA ;C 2D Q4 F..4.
S..J)
2G4L4G1PG GM ;C 2E Q4 G2 RN C; LG);C ;G Q2 RN LG ;C ;N QQ
.J.....JG!..JN@
2G4L4G1MG R4 RL E< R2 PG P; L< 1E)LE D; <L CM D< EL ;1 RE
....PS........1.
2G4L4G1QG ;< QQ GN QQ G; P< PL C;)RR GM LE D; L< 1E LE D; 9@.@.
7=.........
)d 1GG 11G
2G4L4G1GG N2 D; ;D M4 GG QQ G< ;D)PG GG Q; G; GP M4 GG GP
..Cd.@.CP.'..d..
2G4L4G11G MC "
IAOTA4 E" &onenido de "a #e#o!ia 'egu!a#ene no &oin&ide.H
E DIRECCION EDIT
Pe!#ie edia!, b$e %o! b$e, una ,ona de #e#o!ia. Mue'!a )en
0e-ade&i#a") e" b$e de e'a %o'i&in $ %e!#ie e'&!ibi! o!o *a"o!
%a!a &a#bia!"o. Pu"'ando e'%a&io %a'a a" b$e 'iguiene, de/ando
&o#o e'aba e" ane!io! 'i no 'e 0a &a#biado, o gua!dando "o'
&a#bio' 'i '+ 'e 0a 0e&0o.
Pa!a e!#ina! "a edi&in 'e %u"'a IATRO.
Pa!2#e!o'4 Jdi!K&o#ien,o6 7"i'a de %a"ab!a' a e'&!ibi!8
Re'u"ado'4 Se e'&!ibe a %a!i! de "a di!e&&in de #e#o!ia
DS4Jdi!K&o#ien,o6 "a "i'a de %a"ab!a' Ido' d+gio' 0e-ade&i#a"e'H
de" 'egundo %a!2#e!o. Si no 'e e'%e&i>&a un 'egundo %a!2#e!o
enon&e' DE<UD no %e!#ie in!odu&i! %a"ab!a a %a"ab!a "o' dao'
que que!a#o', a %a!i! de "a di!e&&in DS4Jdi!K&o#ien,o6. Pode#o'
%a'a! a "a %a"ab!a 'iguiene de #e#o!ia %!e'ionando "a e&"a
M
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
ESPACIO, &uando 0a$a#o' e!#inado de in!odu&i! "o' dao' que
que!a#o', 0a$ que %u"'a! IATRO
E/e#%"o4
)e 1GG GG G1 G2
)d 1GG 1G2
2G4L4G1GG GG G1 G2 ...
9 E/e#%"o 2
)e 1GG
2G4L4G1GG GG. G1.G4 G2.GP M4.
)d 1GG 1G;
2G4L4G1GG GG G4 GP M4 ...d
F FILL
L"ena una ,ona de #e#o!ia &on un *a"o! dee!#inado. Co#o a"
e!#ina! un %!og!a#a "a ,ona de #e#o!ia en que 'e !e'id+a no 'e
bo!!a I%oni3ndo"a a &e!o, %o! e/e#%"oH, a #enudo e' (i" %a!a
di'ingui! en!e "o que 'on dao' de" %!og!a#a a&ua" $ "o que e'
ba'u!a de" ane!io!.
Pa!2#e!o'4 Jdi!K&o#ien,o6 Jdi!K>na"6 J%a!n6 9 Pa"ab!a &on "a
que que!e#o' !e""ena!
Re'u"ado'4 Re""ena#o' "a' di!e&&ione' de #e#o!ia en!e
DS4Jdi!K&o#ien,o6 $ DS4Jdi!K>na"6 &on e" %a!n e'%e&i>&ado
E/e#%"o4
)1 1GG 1GP MM
)d 1GG 1GP
2G4L4G1GG MM MM MM MM MM MM TTT
E/e#%"o4
)1 1GG RRRR G
L"ena de &e!o' "o que 0a$ de'de "a %o'i&in 1GG I0e-ade&i#a"H 0a'a
e" >na" de" 'eg#eno.
G GO
Sin %a!2#e!o', e#%ie,a a e/e&ua! de'de "a %o'i&in &'4i% 0a'a que
'e a&abe e" %!og!a#a. Si "a o!den e' :g <direccion>:, "a e/e&u&in
e#%ie,a en &'4i% $ e!#ina Idebug %one un b!eaU %oinH /u'o ane'
de e/e&ua! "a in'!u&&in que 'e en&uen!a en Jdi!e&&ion6.
Pa!2#e!o'4 7JCdi!Ko!igen68 Jdi!Kde'ino6 I AOTA4 .AF QUE IACLUIR
EL OCO H
Re'u"ado'4 'e e/e&uan in'!u&&ione' de'de CS4Jdi!Ko!igen6 0a'a
CS4Ji!Kde'ino6, 'i no 'e e'%e&i>&a "a di!e&&in o!igen, 'e o#a &o#o
di!e&&in o!igen CS4IP. Po! &ie!o no 'e o' o&u!!a e/e&ua! e" &o#ando
ODO a 'e&a', %o!que %od3i' %a!a! en a"guna in'!u&&in que no iene
'enido o %od3i' obene! un bonio &ue"gue de "a *enana MS)DOS o
un b"oqueo de" 'i'e#a, 'i "o e'2' e/e&uando A PAATALLA
COMPLETA9 a no 'e! que %o! &a'ua"idade' de" de'ino, DE<UD
en&uen!e una int #$8, o &ua"quie! &o'a %eo!.
Q
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
E/e#%"o4 Ba#o' a u'a! una ine!!u%&in de MS)DOS %a!a %!e'ena!
una "e!a %o! %ana""a, e'a 'ub!uina e' e" 9er:ici; G20 de "a
ine!!u%&in 210, $ %a'2ndo"e &o#o %a!2#e!o e" *a"o! 0e-ade&i#a"
de" &a!2&e! ASCII a.
)!
A=CGGGG <=CGGGG C=CGGGG D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GG AB UP EI PL AE AA
PO AC
2G4L4G1GG N2 =C.D D=,A=
)a 1GG 2G4L4G1GG #o* a-,G2GG
2G4L4G1G; #o* d",M1
2G4L4G1GP in 21
2G4L4G1GQ
)g 1GQ
a
A=CG2M1 <=CGGGG C=CGGGG D=CGGM1 SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GQ AB UP EI PL AE AA
PO AC
2G4L4G1GQ ;DPGGG CMP A=,GGPG
)g C1GG 1GQ
a
A=CG2M1 <=CGGGG C=CGGGG D=CGGM1 SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GQ AB UP EI PL AE AA
PO AC
2G4L4G1GQ ;DPGGG CMP A=,GGPG
/ NUM% NUM# /E0
Mue'!a %o! %ana""a e" !e'u"ado Ien 0e-ade&i#a"H de "a' o%e!a&ione'
num1+num2 $ num1-
num2.
Pa!2#e!o'4 2 n(#e!o' 0e-ade&i#a"e' de 4 d+gio' I#2-i#oH
U'o4 "a in'!u&&in :. Jo%K16 Jo%K26: no' de*ue"*e "a 'u#a $ "a
!e'a I en &o#%"e#eno a do'H de "o' do' o%e!ando' 'u#ini'!ado'
Re'u"ado4 J!e'u"adoK16 9 E' "a 'u#a I Jo%K16 S Jo%K26H,
J!e'u"adoK26 9 e' "a !e'a IJo%K16
) Jo%K26H
E/e#%"o4
)0 GGG; GGG2
GGGP GGG1
)0 GGGG GGG1
GGG1 RRRR
Co#o 'e ob'e!*a, e" !e'u"ado de "a 'egunda o%e!a&in e' RRRR que
e' e" equi*a"ene en &o#%"e#eno a 2 de )1
L
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
L LOAD
La 'ina-i' &o#%"ea e' " 7di!e&&ion8 7unidad8 7'e&o!8 7n 'e&o!e'8. Si
'e "e dan odo' "o' %a!2#e!o' "ee de "a unidad dada, e#%e,ando en
e" 'e&o! indi&ado, ano' 'e&o!e' &o#o dee!#ine :n'e&o!e': $ "o'
gua!da en "a %o'i&in de #e#o!ia e'%e&i>&ada %o! :di!e&&in:.
Poniendo '"o l direccin inena &a!ga! e" >&0e!o de>nido &on "a
o!den n I*e! aba/oH en e'a %o'i&in.
Pa!2#e!o'4 Jdi!e&Kde'ino6 Junidad6 J%!i#e!K'e&o!6 Jnu#e!o6
Re'u"ado'4 E'a in'!u&&in &a!ga en &o#en,ando en "a di!e&&in de
#e#o!ia DS4Jdi!Kde'ino6 e" Jnu#e!o6 de 9ect;re9 e'%e&i>&ado'
de "a Junidad6 I AOTA4 AC G, <C1, CC2, ... H
E/e#%"o4 *o$ a "ee! e" 9ect;r $ de" di'&o A $ "o *ue"&o a %a!i! de "a
di!e&&in DS41GG, IESTO AO QUIERE DECIR QUE OS TEADA QUE SALIR
LO MISMO EA BUESTRO BOLCADOH
)" 1GG G G 1
)d 1GG ;GG
2G4L4G1GG E< ;E NG 2N QN ;< 4M PD)4N 4L 4; GG G2 G1 G1 GG
.6.H$9R8I.C.....
2G4L4G11G G2 EG GG 4G G< RG GN GG)12 GG G2 GG GG GG GG GG
...V............
2G4L4G12G GG GG GG GG GG GG 2N PD)4M D< 1C 4E 4R 2G 4E
41 ......H8R..AO AA
2G4L4G1;G 4D 4P 2G 2G 2G 2G 4M 41)P4 ;1 ;2 2G 2G 2G R1 QD ME
RAT12 .W
2G4L4G14G RA ;; CN LE D1 <C RC Q<)1M GQ <D QL GG CP QM GG .;.....
X...-..*.
2G4L4G1PG 1E PM 1M PP <R 22 GP LN)QE GG LN 4E G2 <1 G< RC
.B.U.:..Y..A....
2G4L4G1MG R; A4 GM 1R <D GG QC CM)4P RE GR L< 4M 1L LL
4P ......Z.E...R..E
2G4L4G1QG RN R< ;L MM 24 QC G4 CD)1; Q2 ;C LA 4M 1G NL
RQ ..L1[Z...!J.R...
2G4L4G1LG MM 1M G; 4M 1C 1; PM 1E)G; 4M GE 1; D1 PG P2 LN
1..R..B..R...PR.
2G4L4G1NG 4M RC LN PM RE <L 2G GG)L< QM 11 RQ EM L< PE G< R..B..
..*....\.
2G4L4G1AG G; C; 4L RQ R; G1 4M RC)11 4E RE PA PL << GG GQ
......R..A.E=...
2G4L4G1<G L< R< <1 G1 EL N4 GG Q2)4Q ;L 2D Q4 1N <1 G< PM
.......!DL)...B
2G4L4G1CG L< QM ;E R; AM PE Q4 4A)4E Q4 G< G; RN L; CQ 1P
.*6..\]A......
2G4L4G1DG ;< R< Q2 EP E< DQ 2< CN)<L DL QD LQ 4M ;E ;C DL 9.!...
S...W.R6J.
2G4L4G1EG QP NN <E LG QD AC NL G;)RG AC L4 CG Q4 1Q ;C RR
u...W........J.
N
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
2G4L4G1RG Q4 GN <4 GE << GQ GG CD)1G E< EE <E L; QD E< EP
............W..
2G4L4G2GG <E L1 QD E< EG ;; CG CD)1M PE 1R LR G4 LR 44
G2 ..W..;...\....D.
2G4L4G21G CD 1N <E L2 QD L< QD GR)L; RR G2 Q2 CL L< CQ
4L ....W.W....!....
2G4L4G22G 4L LA 4E GD RQ E1 G; 4M)RC 1; PM RE << GG GQ P;
..A....R..B....S
2G4L4G2;G <1 G4 EL 1M GG P< Q2 CL)L1 ;R 4D PA QP AQ L1 <R .....7!..^
MEu...
2G4L4G24G GG G2 42 4A QP NR EA GG)G2 QG GG PG P2 P1 N1 N2
..<]u....%.PRQ..
2G4L4G2PG ;; D2 RQ QM 1L N1 RQ QM)1L 42 LQ CA RQ QM 1A LA
;..*...*.<...*..
2G4L4G2MG R2 LA PM 24 LA EL DG CC)DG CC GA CC <L G1 G2 CD
..B[............
2G4L4G2QG 1; PN PA PL Q2 GN 4G QP)G1 42 G; PE G< E2 CC C;
.FE=!.Vu.<.\....
2G4L4G2LG G; 1L G1 2Q GD GA 44 MN)Q; M; MR 2G MN ME M;
MR ...O..Di'&o in&o
2G4L4G2NG Q2 Q2 MP M; Q4 MR 2G 2G)2G RR GD GA 4P Q2 Q2 MR
!!e&o ...E!!o
2G4L4G2AG Q2 2G 4P 2R P; 2G 2G 2G)2G 2G RR GD GA 4; M1 MD !
E_S ...Ca#
2G4L4G2<G M2 MN MP 2G MP MC 2G M4)MN Q; M; MR 2G QN 2G QG bie e"
di'&o $ %
2G4L4G2CG Q2 MP Q; MN MR ME MP 2G)QP ME M1 2G Q4 MP M; MC !e'ione
una e&"
2G4L4G2DG M1 2G 2G 2G 2G GD GA GG)4N 4R 2G 2G 2G 2G 2G 2G a ...IO
2G4L4G2EG P; PN P; 4D P; 44 4R P;)2G 2G 2G P; PN P; LG G1
SFSMSDOS SFS..
2G4L4G2RG GG PQ 4N 4E 42 4R 4R P4)2G P; PN P; GG GG PP AA
.`IA<OOT SFS..U.
2G4L4G;GG <E .
M RANGO DIRECCION MOVE
Mue*e "a ,ona de #e#o!ia de"i#iada %o! :!ango: a "a di!e&&in
:direccin:.
N NOM(RE NAME
Da un no#b!e de >&0e!o 'ob!e e" que a&(an l $ w.
P STEP
Trace %uede 'e! in&#odo 'i no 'e quie!e de%u!a! e" &digo de "a'
!uina' de ine!!u%&in , o 'i $a 'e 'abe e" &digo que 0a$ en "a'
'ub!uina' $ an '"o ine!e'a 'egui! a*an,ando 'in en!a! en e""a'. En
e'o' &a'o' 'e u'a p.
1G
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
Pa!2#e!o'4 JCdi!Ko!igen6 JAUMKin'!u&&ione'6
Re'u"ado'4 e' &o#o e" &o#ando OTO 'in e#ba!go 'i ""a#a#o' a una
9<5r<tina $ u'2!a#o' e" &o#ando OTO en!a!+a#o' den!o de" &digo
de "a 'ub!uina, %o! "o que 'i e/e&ua#o' una ine!!u%&in de MS)DOS
no 'ab!+a#o' que e'a#o' 0a&iendo
E/e#%"o4
)!
A=CG2M1 <=CGGGG C=CGGGG D=CGGM1 SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GQ AB UP EI PL AE AA
PO AC
2G4L4G1GQ ;DPGGG CMP A=,GGPG
)a 1GG
2G4L4G1GG #o* a-,G2GG
2G4L4G1G; #o* d",M1
2G4L4G1GP in 21
2G4L4G1GQ
)% C1GG ;
A=CG2GG <=CGGGG C=CGGGG D=CGGM1 SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1G; AB UP EI PL AE AA
PO AC
2G4L4G1G; <2M1 MOB DL,M1
A=CG2GG <=CGGGG C=CGGGG D=CGGM1 SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GP AB UP EI PL AE AA
PO AC
2G4L4G1GP CD21 IAT 21
a
A=CG2M1 <=CGGGG C=CGGGG D=CGGM1 SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GQ AB UP EI PL AE AA
PO AC
! !UIT
Sa"i! de debug $ *o"*e! a" DOS.
R REGISTERS
Sin %a!2#e!o', #ue'!a e" &onenido de "o' !egi'!o' de "a CPU, a'+
&o#o "a %!-i#a in'!u&&in a e/e&ua!. r registro #ue'!a e"
&onenido de" !egi'!o e'%e&i>&ado $ &a#bia e" %!o#% de :): a :4:
in*iando
a que 'e &a#bie 'u *a"o!. Pu"'ando Ene! 'in #2' "o de/a &o#o
e'aba.
Pa!2#e!o'4 7!egi'!o8
Re'u"ado4 Si e'%e&i>&a#o' un !egi'!o, DE<UD no' %e!#ie #odi>&a!
e" &onenido de e'e !egi'!o, 'i no "o 0e#o' e'%e&i>&ado, no'
11
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
%!e'ena %o! %ana""a e" &onenido de "o' !egi'!o' %!in&i%a"e' de"
%!o&e'ado!, ade#2' no' #ue'!a "a in'!u&&in a%unada %o! CS4IP
Regi'!o de ?ag'4 Pa!a %ode! &a#bia! e" !egi'!o de ?ag', 0a$ que
u'a! e" &o#ando :. R: $ a%a!e&e!2 a"go a" que a'+4
AB UP EI PL AE AA PO AC ) 9 #ee! aqu+ una "i'a de "o' indi&ado!e'
que 'e quie!an.
De'bo!da#ieno I 'i_noH
Pone!4 OB Quia!4 AB
Di!e&&in I!edu&&in _ in&!e#enoH
Pone!4 DA quia! UP
Ine!!u%&in Ia&i*a!_de'a&i*a!H
Pone!4 EI quia!4 DI
Signo Inegai*o _ %o'ii*oH
Pone!4 AD quia!4 PL
Ce!o I'+ _ noH
Pone!4 ER quia!4 AE
A&a!!eo Au-i"ia! I'+ _ no H
Pone!4 AC quia!4 AA
Pa!idad I%a! _ i#%a!H
Pone!4 PE quia!4 PO
A&a!!eo I'+ _ noH
Pone!4 CF quia!4 AC
E/e#%"o4
)!
A=CGGGG <=CGGGG C=CGGGG D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GG AB UP EI PL AE AA
PO AC
2G4L4G1GG N2 =C.D D=,A=
9 E/e#%"o 2
)! a-
A= GGGG 4G1
)!
A=CGGG1 <=CGGGG C=CGGGG D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GG AB UP EI PL AE AA
PO AC
2G4L4G1GG N2 =C.D D=,A=
S SEARC/
<u'&a una 'e&uen&ia de b$e' o una &adena en e" !ango e'%e&i>&ado,
#o'!ando "a di!e&&in en que a%a!e&e en %ana""a. ' 1GG PGG &d 1;
<u'&a oda' "a' ""a#ada' a "a ine!!u%&in 1;0 I&digo #2quina &d0
1;0H. ' 1GG4G TT :*i!u': #ue'!a "a' ,ona' de #e#o!ia de" 'eg#eno
1GG0 en que a%a!e&e "a %a"ab!a :*i!u':.
T TRACE
12
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
E/e&ua "a in'!u&&in a%unada %o! &'4i% $ *ue"*e a debug. Pe!#ie
e/e&ua! %a'o a %a'o un %!og!a#a $ ob'e!*a! en &ada in'!u&&in e"
e1e&o %!odu&ido. Si 0a&iendo :!a&e: 'e ""ega a una 'ub!uina ICALLH
o a una ine!!u%&in IIATH "a 'iguiene in'!u&&in que 'e e/e&ua!2
'e!2 "a %!i#e!a de "a 'ub!uina o "a %!i#e!a de "a !uina de aen&in
de "a ine!!u%&in &o!!e'%ondiene.
Pa!2#e!o'4 7J Cdi!e&&in68 9 Di!e&&in a %a!i! de "a &ua" 'e quie!e
que 'e !a&ee IO]O4 .AF
QUE POAER EL OCO H Jnu#Kin'!u&&ione'6 9 A(#e!o de in'!u&&ione'
que 0a$ que e/e&ua!
Re'u"ado'4 'e e/e&uan "a' JAUMKin'!u&&ione'6 in'!u&&ione' a
%a!i! de CS4Jdi!e&&in6 I'i 'e 0a e'%e&i>&ado Jdi!e&&in6H o 'e
e/e&uan JAUMKin'!u&&ione'6 a %a!i! de CS4IP, 'i no 'e e'%e&i>&a e"
%a!2#e!o JAUMKin'!u&&ione'6 'e e/e&ua una (ni&a in'!u&&in
E/e#%"o4
)!
A=CGGGG <=CGGGG C=CGGGG D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GG AB UP EI PL AE AA
PO AC
2G4L4G1GG ;DGGGG CMP A=,GGGG
)! b-
<= GGGG
42
)a 1GG
2G4L4G1GG #o* a-,b-
2G4L4G1G2
)
A=CGGG2 <=CGGG2 C=CGGGG D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1G2 AB UP EI PL AE AA
PO AC
2G4L4G1G2 GGACG1DL ADD 7SISDLG18,C. DS4DLG1CQ4
9 E/e#%"o 2
)!
A=CGGGG <=CGGGQ C=CGGGG D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1GG AB UP EI PL AE AA
PO AC
2G4L4G1GG ;DGGGG CMP A=,GGGG
)a 1GG
2G4L4G1GG #o* a-,b-
2G4L4G1G2 #o* &-,b-
2G4L4G1G4
) 2
A=CGGGQ <=CGGGQ C=CGGGG D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
1;
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1G2 AB UP EI PL AE AA
PO AC
2G4L4G1G2 LNDN MOB C=,<=
A=CGGGQ <=CGGGQ C=CGGGQ D=CGGGG SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC2G4L ESC2G4L SSC2G4L CSC2G4L IPCG1G4 AB UP EI PL AE AA
PO AC
2G4L4G1G4 G1DL ADD A=,<=
U UNASSEM(LE
De'en'a#b"a una ,ona de #e#o!ia. Si no 'e "e dan %a!2#e!o'
e#%ie,a a 0a&e!"o en "a di!e&&in a%unada %o! &'4i%. Ta#bi3n 'e "e
%uede de&i! qu3 ,ona 'e quie!e *e! &on u <direccin> %udiendo 'e! "a
di!e&&in ab'o"ua Iu segmento:desplazamientoH o !e"ai*a a"
'eg#eno de &digo a&ua" Iu desplazamientoH.
Si 'e da un !ango de di!e&&ione' de'en'a#b"a!2 e'a ,ona4 u 1GGG
2GGG de'en'a#b"a e" &digo que 0a$a de'de &'41GGG a &'42GGG.
Todo' "o' n(#e!o' 'on !aado' &o#o 0e-ade&i#a"e', a'+ que u 1000
e#%ie,a a de'en'a#b"a! de'de "a %o'i&in 4GNM Ide&i#a"H de"
'eg#eno de &digo.
Pa!2#e!o'4 Jdi!K&o#ien,o6 7Jdi!K>na"68
Re'u"ado'4 'e de'en'a#b"an "a' di!e&&ione' de #e#o!ia a %a!i! de
CS4Jdi!K&o#ien,o6 0a'a CS4Jdi!K>na"6 I Jdi!K>na"6 e' o%&iona" H
E/e#%"o4
)u 1GG 11e
2GPG4G1GG Q4G; ]E G1GP
2GPG4G1G2 ENQRGG ]MP G1L4
2GPG4G1GP L<4ERA MOB C=,7<P)GM8
2GPG4G1GL E;G; ]C=E G1GD
2GPG4G1GA <NG2GG MOB C=,GGG2
2GPG4G1GD L;C1GL ADD C=,SGL
2GPG4G11G <L2LQ1 MOB A=,Q12L
2GPG4G11; PG PUS. A=
2GPG4G114 P1 PUS. C=
2GPG4G11P NA1AG2PD2R CALL 2RPD4G21A
2GPG4G11A G<CG OR A=,A=
2GPG4G11C Q4M; ]E G1L1
2GPG4G11E L<;E2AQ1 MOB DI,7Q12A8
9 E/e#%"o 2
)u 1GG
2GPG4G1GG Q4G; ]E G1GP
2GPG4G1G2 ENQRGG ]MP G1L4
2GPG4G1GP L<4ERA MOB C=,7<P)GM8
2GPG4G1GL E;G; ]C=E G1GD
2GPG4G1GA <NG2GG MOB C=,GGG2
2GPG4G1GD L;C1GL ADD C=,SGL
2GPG4G11G <L2LQ1 MOB A=,Q12L
14
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
2GPG4G11; PG PUS. A=
2GPG4G114 P1 PUS. C=
2GPG4G11P NA1AG2PD2R CALL 2RPD4G21A
2GPG4G11A G<CG OR A=,A=
2GPG4G11C Q4M; ]E G1L1
2GPG4G11E L<;E2AQ1 MOB DI,7Q12A8
3 3RITE
La 'ina-i' &o#%"ea e' w [direccin] [unidad] [sector] [n sectores]
Con odo' "o' %a!2#e!o' e'&!ibe en "a unidad $ 'e&o!e' dado' e"
&onenido de "a di!e&&in de #e#o!ia.
Pa'2ndo"e '"o "a di!e&&in e'&!ibe en e" >&0e!o de>nido &on n ano'
b$e' &o#o dee!#inen e" %a! de !egi'!o' <=4C= a %a!i! de "a
%o'i&in de #e#o!ia dada.
= AYUDA=
En *e!'ione' !e&iene' de MS)DOS I%o! "o #eno' a %a!i! de "a PH
#ue'!a una #ini)a$uda.
E-i'en a"guna' !dene' #2' %a!a !aa! &on #e#o!ia e-%andida $
o!a' o%e!a&ione' que no 'e!2n de e'%e&ia" !e"e*an&ia %a!a e" e#a
que no' o&u%a.
E' %o'ib"e &a#bia! e" *a"o! de" !egi'!o de bande!a', a'+ &o#o
ui"i,a!"o &o#o e'!u&u!a de &on!o" en nue'!o' %!og!a#a' &o#o 'e
*e!2 #2' ade"ane. Cada bi de" !egi'!o iene un no#b!e $ 'igni>&ado
e'%e&ia", "a "i'a dada a &oninua&in de'&!ibe e" *a"o! de &ada bi,
ano a%agado &o#o %!endido $ 'u !e"a&in &on "a' o%e!a&ione' de"
%!o&e'ado!4
Overfow
AB C no 0a$ de'bo!da#ieno9
OB C '+ "o 0a$
Direction
UP C 0a&ia ade"ane9
DA C 0a&ia a!a'9
Interrupts
DI C de'a&i*ada'9
EI C a&i*ada'
Sign
PL C %o'ii*o9
AD C negai*o
Zero
AE C no e' &e!o9
ER C '+ "o e'
Auxiliary Carry
AA C no 0a$ a&a!!eo au-i"ia!9
AC C 0a$ a&a!!eo au-i"ia!
Parity
1P
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
PO C %a!idad non9
PE C %a!idad %a!9
Carry
AC C no 0a$ a&a!!eo9
CF C S+ "o 0a$
Pa!a a'ena! idea' $ de %a'o a%!ende! a"guno' %a'o' (i"e' a "o' que
'e 0a!2 !e1e!en&ia *a!ia' *e&e', uno' e/e#%"o'.
E>e?@l; c;?@let;
E'&!ibi! $ &o#%!oba! un %!og!a#a que i#%!i#e e" &onenido de"
%ue!o ;QL0 &o#o nu#e!o 0e-ade&i#a". La' en!ada' de" o%e!ado!
'on en neg!ia. Lo' &o#ena!io' 'on en "aina Ino "e' &on'ide!a' &o#o
en!adaH4
C456debug
omo pedir a!uda de "#$%& ' entrar =.
)a%$$ (ssem)l! a partir de *:100
+o utilizar las direcciones *:0 ' *:100 ' en estas direcciones se
encuentran los ,*, ! -. del programa/
1GME4G1GG ?;: A6B&1C Todos los n0meros en "#$%& son en 1#2/
1GME4G1G; in alBA6
1GME4G1G4 call %,$ Tal como no 3a! eti4uetas tenemos 4ue utilizar
direcciones a)solutas/
#n este punto necesitamos un programa 4ue con5ierte el (6 en una
cadena de caracteres (d7gitos 3e89/
1GME4G1GQ int & #ste es un punto de parada (interrupcin del
programa: )rea;point9/ 6o entramos a mano (notar 4ue no utilizamos
mo5 (2:<c00== int 21 o int 209/ *e utiliza int > por4ue ocupa solo un
)!te ! puede remplazar cual4uier instruccin. 1GME4G1GL *alimos del
ensam)lador con entrada de una l7nea 5ac7a/
)a%$, #nsam)lador de nue5o a partir de la direccin 10< (mirar
arri)a9
1GME4G1G4 ?;: AiB#$$ ? seria la direccin donde se encuentra la
cadena de salida/
1GME4G1GQ call %,$ ? el programa 4ue con5ierte (6 a cadena de dos
caracteres
1GME4G1GA ?;: A6B#$$ ? #scri)imos en -+: @sea lo 4ue sea -+:A
1GME4G1GD ?;: a8B2
1GME4G1GR int #%
1GME4G111 int & ? 6a parada cmoda de "#$%&/ ,or la diBerencia de
C+T 203 escri)e el contenido de los registros/
1GME4G112
)a%,$ ? #sto seria el programa de con5ersin de (6 en 1#2
1GME4G14G clA
1GME4G141 call %,& ? *upongamos 4ue a partir de la siguiente
instruccin 3a! un programa 4ue con5ierte la parte alta de al a
carDcter (*CC (1#29/ alculamos ! es errneo: la direccin de la
siguiente instruccin no esta en 1<1+2-> 1<>9/
1M
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
1GME4G144 r;l alB% ? +os 3emos e4ui5ocado ' la siguiente instruccin
empieza en 1<</
1GME4G14M ? Eol5emos a entrar a partir de 1<</
)a%,%
1GME4G141 call %,,
1GME4G144 r;l alB1
1GME4G14M r;l alB%
1GME4G14L r;l alB%
1GME4G14A r;l alB%
1GME4G14C @<98 a6
1GME4G14D anA alB$D
1GME4G14R c?@ alBa ? *i al esta Buera del rango 0-a ? no 3a!
caracteres
1GME4G1P1 >na %-. ? +o sa)emos donde saltar: por4ue seria mu!
complicado memorizar la longitud de todas las instrucciones !
calcular direcciones en 3e8 sentDndose ante un ordenador: pero
sa)emos 4ue esta cerca de esta direccin/ (postamos por 1FG
1GME4G1P; aAA alB. ? tenemos de aHadir I(J-(IKJ+19 4ue es mas o
menos G/
1GME4G1PP aAA alBa
1GME4G1PQ 9t;95
1GME4G1PL @;@ a6
1GME4G1PN ret
orregimos la instruccin e4ui5ocada (la direccin no es 1FG pero
1FF9/
)a%-%
1GME4G1P1 >na %--
1GME4G1P;
Todo estD listo para eLecutar:
%ltima mirada antes de eLecutar:
)<%$$
1GME4G1GG <AQLG; MOB D=,G;QL
1GME4G1G; EC IA AL,D=
1GME4G1G4 <RGGG2 MOB DI,G2GG
1GME4G1GQ EL;MGG CALL G14G
1GME4G1GA <AGGG2 MOB D=,G2GG
1GME4G1GD <4GN MOB A.,GN
1GME4G1GR CD21 IAT 21
1GME4G111 CC IAT ;
1GME4G112 2<CM SU< A=,SI ? ,uede
? ser mu! distinto
1GME4G114 L<CL MOB C=,A=
1GME4G11M ELQ<R4 CALL RPN4
1GME4G11N L;RNQR CMP C=,SQR
1GME4G11C ;4GG =OR AL,GG
1GME4G11E PD POP <P
1GME4G11R 1GGG ADC 7<=SSI8,AL
1Q
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
)u14G
1GME4G14G RC CLD
1GME4G141 ELGGGG CALL G144
1GME4G144 DGCG ROL AL,1
1GME4G14M DGCG ROL AL,1
1GME4G14L DGCG ROL AL,1
1GME4G14A DGCG ROL AL,1
1GME4G14C PG PUS. A=
1GME4G14D 24GR AAD AL,GR
1GME4G14R ;CGA CMP AL,GA
1GME4G1P1 QMG2 ]<E G1PP
1GME4G1P; G4GM ADD AL,GM
1GME4G1PP G4GA ADD AL,GA
1GME4G1PQ AA STOS<
1GME4G1PL PL POP A=
1GME4G1PN C; RET
1GME4G1PA 21PRPE AAD 7<=SPE8,<=
E/e&ua#o' %a'o a %a'o a %a!i! de CS41GG
)tE%$$ *igniMca Trace ' eLecutar la siguiente instruccin
(con el Nag T de O0OG a partir de la direccin 10039
A=CGGGG <=CGGGG C=CGGGG D=CG;QL SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1G; AB UP EI PL AE AA
PO AC
1GME4G1G; EC IA AL,D=
"espuPs de eLecutar la instruccin en 100 (mo5 d8:>QO9 el "#$%&
escri)e el contenido de los registros ! la siguiente instruccin de
eLecutar (C+ (6:"29/ +otar 4ue "2 tiene 5alor >QO/
)t ? *in direccin signiMca 4ue se eLecuta la siguiente instruccin
A=CGGGG <=CGGGG C=CGGGG D=CG;QL SPCRREE <PCGGGG SICGGGG
DICGGGG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1G4 AB UP EI PL AE AA
PO AC
1GME4G1G4 <RGGG2 MOB DI,G2GG
)t ? ,arece tri5ial: tal como en el puerto >QO 3a)7a 00 ((6R009/ *eria
muc3o mas instructi5o si 3a)7a 0$F3 en (6/ am)iamos el contenido
de (6 con 0$F3:
)r A0
A= GGGG
4$$(-
A=CGG<P <=CGGGG C=CGGGG D=CG;QL SPCRREE <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1GQ AB UP EI PL AE AA
PO AC
1GME4G1GQ EL;MGG CALL G14G
)t ? seguimos
1L
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
A=CGG<P <=CGGGG C=CGGGG D=CG;QL SPCRREM <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG14G AB UP EI AD AE AC
PE CF
1GME4G14G RC CLD
)t ? *eguimos/ -)ser5amos 4ue se prepara *T-$*: pero nos 3emos
ol5idado de #*/ ,or IsuerteJ
#* es igual a * ! "*/
A=CGG<P <=CGGGG C=CGGGG D=CG;QL SPCRREM <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG141 AB UP EI AD AE AC
PE CF
1GME4G141 ELGGGG CALL G144
)t ? #ntramos a escri)ir un carDcter en la memoria/
A=CGG<P <=CGGGG C=CGGGG D=CG;QL SPCRRE4 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG144 AB UP EI AD AE AC
PE CF
1GME4G144 DGCG ROL AL,1
)t
A=CGGM< <=CGGGG C=CGGGG D=CG;QL SPCRRE4 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG14M OB UP EI AD AE AC
PE CF
1GME4G14M DGCG ROL AL,1
)t
A=CGGDM <=CGGGG C=CGGGG D=CG;QL SPCRRE4 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG14L OB UP EI AD AE AC
PE AC
1GME4G14L DGCG ROL AL,1
)t
A=CGGAD <=CGGGG C=CGGGG D=CG;QL SPCRRE4 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG14A AB UP EI AD AE AC
PE CF
1GME4G14A DGCG ROL AL,1
)t
A=CGGP< <=CGGGG C=CGGGG D=CG;QL SPCRRE4 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG14C OB UP EI AD AE AC
PE CF
1GME4G14C PG PUS. A=
)t
A=CGGP< <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2GG
1N
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
DSC1GME ESC1GME SSC1GME CSC1GME IPCG14D OB UP EI AD AE AC
PE CF
1GME4G14D 24GR AAD AL,GR
)t ? los ni))les (unidades de < )its9 se 3an cam)iado ' correcto9
A=CGGG< <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG14R AB UP EI PL AE AA
PO AC
1GME4G14R ;CGA CMP AL,GA
)t ? en (6 esta $ ' el primer d7gito de escri)ir
A=CGGG< <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1P1 AB UP EI PL AE AA
PO AC
1GME4G1P1 QMG2 ]<E G1PP
)t
A=CGGG< <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1P; AB UP EI PL AE AA
PO AC
1GME4G1P; G4GM ADD AL,GM
)t
A=CGG11 <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1PP AB UP EI PL AE AC
PE AC
1GME4G1PP G4;G ADD AL,;G
)t
A=CGG41 <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1PQ AB UP EI PL AE AA
PE AC
1GME4G1PQ AA STOS<
)t
A=CGG41 <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2G1
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1PL AB UP EI PL AE AA
PE AC
1GME4G1PL PL POP A=
Eeamos 4ue 3a! en la memoria es:200
)A e9#$$ L% ? "ump de un )!te (619 a partir de es:200
1GME4G2GG 41 A
--------------1#2--------------------------------.- (*CC/
#s errneoS Tueremos 4ue escri)a I$J de I$FJ/ +os 3emos e4ui5ocado
con la instruccin (""
(6:G: 4ue tiene 4ue estar ("" (6:Q/ orregimos/ $uscamos la
instruccin4
2G
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
)<%,$
a
a
a
ICo#o ane'H
)a%-&
1GME4G1P; add a",Q
)<%,$ (por sea caso9/
a. (on instruccin correcta9/
)r ? 5eamos donde estamos
A=CGG41 <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2G1
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1PL AB UP EI PL AE AA
PE AC
1GME4G1PL PL POP A=
? *eguimos/
)t
A=CGGP< <=CGGGG C=CGGGG D=CG;QL SPCRRE4 <PCGGGG SICGGGG
DICG2G1
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1PN AB UP EI PL AE AA
PE AC
1GME4G1PN C; RET
)t
A=CGGP< <=CGGGG C=CGGGG D=CG;QL SPCRREM <PCGGGG SICGGGG
DICG2G1
DSC1GME ESC1GME SSC1GME CSC1GME IPCG144 AB UP EI PL AE AA
PE AC
1GME4G144 DGCG ROL AL,1
? #sto !a lo 3emos 5isto/ (ndamos un poco mDs deprisa/
)<
1GME4G144 DGCG ROL AL,1
1GME4G14M DGCG ROL AL,1
1GME4G14L DGCG ROL AL,1
1GME4G14A DGCG ROL AL,1
1GME4G14C PG PUS. A=
1GME4G14D 24GR AAD AL,GR
1GME4G14R ;CGA CMP AL,GA
1GME4G1P1 QMG2 ]<E G1PP
1GME4G1P; G4GQ ADD AL,GQ
1GME4G1PP G4;G ADD AL,;G
1GME4G1PQ AA STOS<
1GME4G1PL PL POP A=
1GME4G1PN C; RET
? +otar 4ue se desensam)la (u de un-assem)l!9 desde la posicin
actual (*:C,9/
Eamos 3asta U#T/ #n (6 es:200//201 podemos 5er los caracteres 4ue
se 3an escrito/
21
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
)g %-2 ? g de &- mas el punto de control ()rea;point9 1FK/ #l "#$%&
sustitu!e el contenido de *:1FK con C+T > ! despuPs eLecuta el
programa desde la direccin actual (*:C,9/ +otar 4ue la parada del
programa no se garantiza (si el programa no eLecuta la instruccin de
*:1FK no 3a! garant7a 4ue 5a a parar/ (demDs 1FK puede estar
incluso en la mitad de una instruccin/
A=CGG<P <=CGGGG C=CGGGG D=CG;QL SPCRREM <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1PN AB UP EI PL AE AA
PE AC
1GME4G1PN C; RET
)A#$$ #$% ? %tilizamos la Borma de direccin 200 3asta direccin
201.
1GME4G2GG 41 ;P AP
.enos mal ' el segundo carDcter es F de I$FJ ' es correcto/
)t
A=CGG<P <=CGGGG C=CGGGG D=CG;QL SPCRREL <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1GA AB UP EI PL AE AA
PE AC
1GME4G1GA <AGGG2 MOB D=,G2GG
)t
A=CGG<P <=CGGGG C=CGGGG D=CG2GG SPCRREL <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1GD AB UP EI PL AE AA
PE AC
1GME4G1GD <4GN MOB A.,GN
)t
A=CGN<P <=CGGGG C=CGGGG D=CG2GG SPCRREL <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1GR AB UP EI PL AE AA
PE AC
1GME4G1GR CD21 IAT 21
? #n este punto es necesario 5er si todo esta correcto en la memoria
"*:200/
)d2GG ? *in longitud el "#$%& nos imprime O0 )!tes.
1GME4G2GG 41 ;P DQ DQ C; <E <C D<)L< 4C GP L< Q4 GN EL GL
AP.......L.....
1GME4G21G GG G; R1 EL G; GG ;C GD)C; AC EL G4 RN QP G4 ;C
......J......u.J
1GME4G22G ;< QP RM 4E C; 1E P2 PG)P; P1 PM PQ 2E LE 1E RE
9u.A..RPSQB`....
1GME4G2;G D2 LG ;E 4; G4 GG QP GD)RM GM 21 G4 RR QP GM EL
..6C..u...b..u..
1GME4G24G G< GG EL PN GG PR PE PN)P< PL PA 1R C; 2E LG ;E
...F.K\F7=E....6
22
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
1GME4G2PG DP E2 GG Q4 RQ 1E GE 1R)<E DP E2 EL NL G2 2E A1
...............
1GME4G2MG 2R EQ << 4G GG <A G1 GG);; RR CD 21 1R Q2 G< L<
_..V....;..b.!..
1GME4G2QG DL <G RR LM 4Q 1L A2 1L)GG C; GE 1R EL D2 GG ;D
....D..........C
? #UUU----UUUSS 6a cadena no termina con IVJ/ *i eLecutamos int 21
puede ocurrir cual4uier cosa/
? -tro error ' escri)imos en #*:"C pero imprimimos de "*:"C/ ,or
IsuerteJ el "#$%& asigna el mismo 5alor de todos los registros del
segmento/
am)iamos el contenido de la memoria/ (Hadimos U 6W ! IVJ/
)e#$#
1GME4G2G2 GD.$A GA.a
"espuPs de 0d tenemos de teclear espacio/ "espuPs del 0ltimo )!te
tenemos de teclear salto de linea/
#ntramos IVJ como s7m)olo:
)e#$, FGH
ompro)amos
)A#$$
1GME4G2GG 41 ;P GD GA 24 <E <C D<)L< 4C GP L< Q4 GN EL GL
AP..[....L.....
a.
(3ora esta )ien/
)r ? donde estamos
A=CGN<P <=CGGGG C=CGGGG D=CG2GG SPCRREL <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1GR AB UP EI PL AE AA
PE AC
1GME4G1GR CD21 IAT 21
#stamos antes de eLecutar C+T 213 con (1RK ! "2R200/ Tenemos
4ue eLecutar esta instruccin pero no nos interesa entrar en "-*/ ,or
esto eLecutamos C+T 21 no con t pero con p/ #l comando p sustitu!e
la siguiente instruccin con C+T > (4ue en este caso es tam)iPn C+T >9
! eLecuta el programa como si entramos &/
)@
AP
A=CGN24 <=CGGGG C=CGGGG D=CG2GG SPCRREL <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG111 AB UP EI PL AE AA
PE AC
1GME4G111 CC IAT ;
$ienS #l programa escri)e (F (despuPs de la l7nea de p9: como de)e
ser (casi: tal como tiene 4ue escri)ir $F9/
Tal como 3emos a!udando al programa Ia manoJ de conseguir su
tarea: corregimos aHadiendo un patc3 en 1O0 (a partir de este
momento no escri)o los comandos % necesarios9:
2;
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
)a%C$
1GME4G1LG @<98 A9
1GME4G1L1 @;@ e9
1GME4G1L2 call %,$
1GME4G1LP ?;: alBA ? el U
1GME4G1LQ 9t;95
1GME4G1LL ?;: alBa ? #l 6W
1GME4G1LA 9t;95
1GME4G1L< ?;: alB#, ? #l IVJ/ ,odemos 5erlo en la memoria #*:20<
1GME4G1LD 9t;95
1GME4G1LE ret
1GME4G1LR
)a%$1
1GME4G1GQ call %C$ ? entramos en el patc3 ! no en 1<0
1GME4G1GA
ponemos en puerto >QO el 5alor 4ue 5amos a escri)ir:
);&1C -D ? esto es e4ui5alente al programa: .-E "2:>QO3 == .-E
al:F"3 == -%T d8:al
ompro)amos el contenido del puerto:
)i&1C ? #sto es casi e4ui5alente al nuestro programa PD ? orrecto:
tal como el puerto es un simple C=- )uXer/
#Lecutamos
)gE%$$ %$1 ? esta parte !a la sa)emos
%n poco mas despacio con la nue5a parte/
A=CGNPD <=CGGGG C=CGGGG D=CG;QL SPCRRE2 <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1GQ AB UP DI PL AE AA
PE AC
1GME4G1GQ ELQMGG CALL G1LG
)t
A=CGNPD <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1LG AB UP DI PL AE AA
PE AC
1GME4G1LG 1E PUS. DS
)t
A=CGNPD <=CGGGG C=CGGGG D=CG;QL SPCRRDE <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1L1 AB UP DI PL AE AA
PE AC
1GME4G1L1 GQ POP ES
)t
A=CGNPD <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2GG
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1L2 AB UP DI PL AE AA
PE AC
1GME4G1L2 EL<<RR CALL G14G
24
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
on esto ' a toda marc3a/ Ya lo sa)emos/
)@
A=CGNPD <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1LP AB UP DI PL AE AA
PE AC
1GME4G1LP <GGD MOB AL,GD
)t
A=CGNGD <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2G2
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1LQ AB UP DI PL AE AA
PE AC
1GME4G1LQ AA STOS<
)t
A=CGNGD <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2G;
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1LL AB UP DI PL AE AA
PE AC
1GME4G1LL <GGA MOB AL,GA
)t
A=CGNGA <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2G;
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1LA AB UP DI PL AE AA
PE AC
1GME4G1LA AA STOS<
)t
A=CGNGA <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2G4
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1L< AB UP DI PL AE AA
PE AC
1GME4G1L< <G24 MOB AL,24
)t
A=CGN24 <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2G4
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1LD AB UP DI PL AE AA
PE AC
1GME4G1LD AA STOS<
)t
A=CGN24 <=CGGGG C=CGGGG D=CG;QL SPCRREG <PCGGGG SICGGGG
DICG2GP
DSC1GME ESC1GME SSC1GME CSC1GME IPCG1LE AB UP DI PL AE AA
PE AC
1GME4G1LE C; RET
)t
ompro)amos la memoria
)A#$$
2P
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
1GME4G2GG ;P 44 GD GA 24 <E <C D<)L< 4C GP L< Q4 GN EL GL PD..
[....L.....
a.
Y a toda marc3a 3asta el Mnal/
)g
PD
A=CGN24 <=CGGGG C=CGGGG D=CG2GG SPCRRE2 <PCGGGG SICGGGG
DICG2GP
DSC1GME ESC1GME SSC1GME CSC1GME IPCG111 AB UP DI PL AE AA
PE AC
1GME4G111 CC IAT ;
6o 3emos conseguido/ 6o 0nico malo de este IprogramaJ de "-* es
4ue no termina correcto/
(rreglamos el pro)lema:
)a%%%
1GME4G111 int #$
(3ora eLecutamos desde el principio:
)gE%$$ ? eLecutamos desde direccin *:100 sin paradas/
*al5amos el programa en el disco/
)r C0 ? #n $2:2 ' < )!tes de longitud del Mc3ero/ uidado con $2S
C= GGGG
4%$$ ? Todo el cdigo nuestro esta desde 100 (por deBecto9 3asta
2003 ' la longitud el de 1003 )!tes/
"amos un nom)re (see>QO/com9 del Mc3ero:
)n9ee&1C'c;?
#scri)imos el Mc3ero:
)I
*alimos del "#$%&:
)J
(3ora tenemos el programa *##>QO/-.: tal como empieza en 1003:
es menos de >2Z ! el Mc3ero tiene e8tensin /-./ #l programa 4ue
escri)e el contenido del puerto >QO en la pantalla/ #Lecutamos:
C4569ee&1C
PD
#Becti5amente/ *i 4ueremos 5ol5er a maneLar este programa con
"#$%&: podemos eLecutar:
C456Ae5<g 9ee&1C'c;?
)<%$$.
Li9ta Ae l;9 c;?anA;9 Ae DE(UG <tiliKaA;9
)q c Sa"i! de" %!og!a#a
)^ c Pedi! a$uda.
)d c Du#% de #e#o!ia.
)e c Edi I&a#bioH de #e#o!ia.
)a c en'a#b"ado! de "engua/e de #aquina LGLM
)u c Un ) en'a#b"ado! de "engua/e de #aquina LGLM.
) c E/e&ua! %a'o a %a'o
2M
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
)% c E/e&ua! "a 'iguiene in'!u&&in 'in en!a! en e""a ICALL o IATH.
)g c E/e&ua! de'de una di!e&&in &on %a!ada' Ib!eaU%oin'H.
)! c Be!_&a#bia! !egi'!o.
)n c Da! no#b!e de >&0e!o.
)@ c E'&!ibi! en un >&0e!o.
NUMERO ALEATORIO DEL % AL #$
)A ALEE.COM
)L
)U 1GG 11N
1PL24G1GG <<GGGG MOB <=,GGGG
1PL24G1G; L;R<2G CMP <=,S2G
1PL24G1GM Q4RL ]E G1GG
1PL24G1GL L;C;G1 ADD <=,SG1
1PL24G1G< <4G1 MOB A.,G1
1PL24G1GD CD1M IAT 1M
1PL24G1GR QPG2 ]AE G11;
1PL24G111 E<RG ]MP G1G;
1PL24G11; <4GE MOB A.,GE
1PL24G11P CD1G IAT 1G
1PL24G11Q CD2G IAT 2G
1PL24G11N GGGG ADD 7<=SSI8,AL
2Q
d<=C2
G^
<= eGGGG
<= e<=S1
dSE
PRESIOAO
TECLA^
IMPRIME
AUMERO
RIA
SI
AO
AO SI
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
SUMA DE NUMEROS
Lo' 'u#ando' 'on gua!dado' a %a!i! de "a di!e&&in 2G;, "a 'u#a e'
%ue'a en "a di!e&&in 2GG $ 2G1 $ "a &anidad de 'u#ando' 'e &o"o&a
en "a di!e&&in 2G2.
)A SUMA.COM
)L
)U 1GG 11N
)a G1GG
1PN14G1GG CLC
1PN14G1G1 MOB C.,G
1PN14G1G; MOB <=,2G;
1PN14G1GM MOB CL,72G28
1PN14G1GA MOB A=,G
1PN14G1GD ADC A=,7<=8
1PN14G1GR ADD <=,2
1PN14G112 LOOP,RN
1PN14G114 MOB 72GG8,A=
1PN14G11Q IAT 2G
1PN14G11N
2L
Ingeniera Electrnica
UNSA
_____________________________________________________________________________
2N

You might also like