Software en los microprocesadores

Anuncio
(OVRIWZDUHHQORVµSURFHVDGRUHV
❚ (MHPSORGHFRPDQGRVGHOD&38
❙ 7DUHD
❘ 6XPDUGRVQ~PHURV$\%
❘ 6XSRQHUORVGDWRV$\%DOPDFHQDGRVHQODVSRVLFLRQHV \ UHVSHFWLYDPHQWH
❘ (O UHVXOWDGRGHEHDOPDFHQDUVH
,Q&
HQ&SRVLFLyQ
PDLQ^
❚ 1RWD³&´1RHVXQOHQJXDMHELQDULR
❚ ¢ &RPRORHQWLHQGHODPiTXLQD"
««
& $%
`
❙ (VFRQYHUWLGRDELQDULRSRUGRVSURJUDPDV
❘ (O &203,/$'25³FF´\HO(16$0%/$'25³DV´
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
1
3ULQFLSDOHVFDUDFWHUtVWLFDV
❚ 6DEHPRVTXHODPiTXLQDHQWLHQGHORVVLJXLHQWHVFRPDQGRV
GHQRPLQDGRVLQVWUXFFLRQHV
❘ 6XPDUHOFRQWHQLGRGHGRVUHJLVWURV
$GG
❘ 6XPDUHOFRQWHQLGRGHODFXPXODGRUFRQHOFRQWHQLGRGHXQD
SRVLFLyQGHPHPRULD
$GG
6XEVWUDFW
❘ ,GHPSHURUHVWDQGRORVRSHUDQGRV
/RDG $FXPXODWRU
❘ &DUJDUXQUHJLVWURGHVGHPHPRULD
6WRUH$FXPXODWRU
❘ $OPDFHQDUXQUHJLVWURHQPHPRULD
(VWDVFRGLILFDFLRQHV
(VWDVFRGLILFDFLRQHV
FRUUHVSRQGHQDORV³2S&RGHV´
FRUUHVSRQGHQDORV1HPyQLFRV
❚ $OJXQDVFDUDFWHUtVWLFDVFRPXQHV
❙ /DPD\RUtDGHODVLQVWUXFFLRQHVSRVHHQyRSHUDQGRV
❙ /RVUHJLVWURVVRQHOHPHQWRVLQWHUQRVGHDOPDFHQDPLHQWRWHPSRUDO
❙ /DVLQVWUXFFLRQHVTXHWUDEDMDQFRQUHJLVWURVOOHYDQPHQRVWLHPSRGH
HMHFXFLyQ
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
2
(QVDPEODGRGHXQSURJUDPD
,QVWUXFFLRQHVHQ/HQJXDMH0iTXLQD &RPHQWDULRV
&DUJDUHODFXPXODGRUFRQHOGDWR+
6XPDUHOFRQWGHODFXPXODGRUFRQHOGDWR+
$OPDFHQDUHOFRQWGHODFXPXODGRUHQODSRV+
❚ ¢ 4XpHVPiVIiFLOGHHQWHQGHUHOOHQJXDMHPiTXLQDRORV
FRPHQWDULRV"/RVFRPHQWDULRV
❙ 8WLOL]DFLyQGHXQOHQJXDMHLQWHUPHGLRTXHVHDVHPHMDDORV
FRPHQWDULRVGHQRPLQDGR/HQJXDMH(QVDPEODGRU
Programa fuente
LDA 1000H
ADD 1010H
STA 1100H
/HQJXDMH(QVDPEODGRU
3URJUDPD
(QVDPEODGRU
3URJUDPD7UDGXFWRU
Programa objeto
00100011 00000000 00010000
00000010 00010000 00010000
00101011 00000000 00010001
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
/HQJXDMH0iTXLQD
3
3URJUDPDVHQVDPEODGRUHV
❚ 3URJUDPDHQVDPEODGRU
❙ 5HDOL]DHOHQVDPEODGROtQHDDOtQHDGHOSURJUDPDIXHQWHHGLWDGR
❙ *XDUGDXQDHVWUHFKDUHODFLyQFRQODHVWUXFWXUDGHODPiTXLQD
❙ 7RGRSURJUDPDHQVDPEODGRUHVWiDVRFLDGRDXQOHQJXDMH
HQVDPEODGRUSURSLR
❙ 'DODSRVLELOLGDGGHXWLOL]DUHWLTXHWDVSVHXGRLQVWUXFFLRQHV\
GLUHFWLYDV FRQODILQDOLGDGGHIDFLOLWDUODIDVHGHSURJUDPDFLyQ
❘ (WLTXHWDV (VXQQRPEUHVLPEyOLFRTXHVHSXHGHXWLOL]DUHQVXVWLWXFLyQGH
ODGLUHFFLyQTXHOHFRUUHVSRQGH
❘ 3VHXGRLQVWUXFFLRQHV ,QIRUPDFLyQSDUDHOSURJUDPDHQVDPEODGRUTXHpVWH
HQWLHQGHSHURTXHQRVHWUDGXFHQSRUXQDLQVWUXFFLyQGHPiTXLQD
❘ 'LUHFWLYDV 6RQyUGHQHVSDUDHOHQVDPEODGRUFX\RYHVWLJLRGHVDSDUHFH
WRWDOPHQWHHQHOSURJUDPDWUDGXFLGR
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
4
(QVDPEODGRUHV\OHQJXDMHHQVDPEODGRU
❚ (MHPSORGHSURJUDPDHQHQVDPEODGRU
3URJUDPDIXHQWHHQHQVDPEODGRU
25*
),1
(48+
-03
,1,&,2
&217$'25 )&%
+
,1,&,2
/'$
&217$'25
&03$
),1
(1'
❚ /HQJXDMHHQVDPEODGRU
❙
❙
❙
❙
'LUHFFLyQ3URJUDPD2EMHWRHQOHQJXDMHPiTXLQD
(VSURSLRGHFDGDPiTXLQD
1RWLHQHSDUDOHOLVPRFRQHOOHQJXDMHFRQYHQFLRQDO
3URGXFHQSURJUDPDVREMHWRVPiVGHSXUDGRVPHQRVH[WHQVRV
6LQWD[LVWtSLFDGHXQOHQJXDMHHQVDPEODGRU
‡ (WLTXHWD&yGLJRGH2SHUDFLyQ2SHUDQGR&RPHQWDULR
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
5
'LUHFWLYDV
❚ 'LUHFWLYDVPiVFRPXQHV
❙ 25*2ULJLQ(VWDEOHFHHOOXJDUGHPHPRULDGRQGHVHDORMDUiHO
SURJUDPDRGDWRV
❘ (MHPSOR25* !,QGLFDTXHHOSURJUDPDVHDOPDFHQDUiDSDUWLU
GHODGLUHFFLyQGHPHPRULD+
❙ (48(TXDO$VLJQDXQYDORUDXQDHWLTXHWD
❘ (MHPSOR5$',2(48
❙ (1' ,QGLFDDOHQVDPEODGRUHOILQDOGHOFyGLJRDHQVDPEODU
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
6
3VHXGRLQVWUXFFLRQHV
❚ 3VHXGRQVWUXFFLRQHVPiVFRPXQHV
❙ )&%)RUP&RQVWDQW%\WH*XDUGDXQE\WHHQXQDSRVLFLyQGH
PHPRULD
❘ (MHPSOR)&%$!*XDUGDHQPHPRULDWUHVE\WHVLQLFLDOL]DGRVFRQ
ORVYDORUHVPHQFLRQDGRV
❙ )'%)RUP'RXEOH&RQVWDQW%\WH*XDUGDGRVE\WHVHQPHPRULD
❘ (MHPSOR)'%
❙ )&&)RUP&RQVWDQW&KDUDFWHU6WULQJ*XDUGDHQPHPRULDORVYDORUHV
GHORVFDUDFWHUHV$6&,,GHXQDVWULQJ
❘ (MHPSOR)&&³+2/$´
❙ 50%QXP5VHUYH0HPRU\%\WH5HVHUYDODFDQWLGDGQXPGHE\WHV
HQPHPRULD
❘ (MHPSOR50%
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
7
&ODVLILFDFLyQGHODVLQVWUXFFLRQHV,
❚ 7LSRVGHLQVWUXFFLRQHVPiVUHSUHVHQWDWLYRVXVDGRVHQORV
µSURFHVDGRUHVWRGRVORVHMHPSORVFRUUHVSRQGHQDOOHQJXDMHHQVDPEODGRUGHOµS ❘ $ULWPpWLFDV 7RGDVDTXHOODVLQVWUXFFLRQHVTXHHMHFXWDQRSHUDFLRQHV
DULWPpWLFDV6XPD5HVWD,QFUHPHQWR'HFUHPHQWRHWF«(VWDV
LQWUXFFLRQHVDIHFWDQDORVVHxDOL]DGRUHVGHOUHJLVWURGHHVWDGR/RVPiV
LPSRUWDQWHVVRQ&9=1+
± (MHPSORV
$%$
68%$0(0B3$/
❘ /yJLFDV (IHFW~DQRSHUDFLRQHVOyJLFDVWDOHVFRPR$1'25;251$1'
HWF«
± (MHPSORV
$1'$0(0B3$/
&20$
❘ 'H WUDQVIHUHQFLD GHGDWRVHQWUHOD&380HPRULD\RGLVSRVLWLYRVGH
(6
± (MHPSORV
/'$$'$72
67$$',5B'$72
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
,1+
287+
8
&ODVLILFDFLyQGHODVLQVWUXFFLRQHV,,
❘ 'H GHVSOD]DPLHQWR\URWDFLyQ 'HVSOD]DQRURWDQQ YHFHVHO
RSHUDQGR
± (MHPSORV
/650(0B326
5&50(0B3$/
$
❘ 'H VDOWR $IHFWDQDODHMHFXFLyQVHFXHQFLDOGHODVLQVWUXFFLRQHVGHO
SURJUDPD,QFOX\HQIXQGDPHQWDOPHQWHLQVWUXFFLRQHVGHVDOWR\
ELIXUFDFLyQ\GHOODPDGDV\UHWRUQRVDVXEUXWLQDV3XHGHQVHU
FRQGLFLRQDOHVRQR
± (MHPSORV
$
-03(7,48(7$
&$//352&
5(7
❘ 'H FRQWURO (QJOREDQODVLQVWUXFFLRQHVGHSHWLFLyQGHLQWHUUXSFLyQSDUD
VLQFURQL]DFLyQFRQHOHPHQWRVH[WHUQRVFRSURFHVDGRUPDWHPiWLFRGH
DFWLYDFLyQGHORVVHxDOL]DGRUHVIODJV(QJHQHUDOHVHOJUXSRPiV
SDUWLFXODUGHODPiTXLQD
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
9
,QVWUXFFLRQHVGHVDOWR
❚ ,QVWUXFFLRQHVGHVDOWRRGHUXSWXUDGHVHFXHQFLD
❙ (OXVRGHVXEUXWLQDVHVXQDWpFQLFDPX\LPSRUWDQWHHQHOGLVHxRGH
VRIWZDUHSDUDVLVWHPDVFRQµSURFHVDGRUHV
❙ (MHPSORGHSURJUDPD
+
+
+
+
,1,&,2 $+
'+
+
+
/'$+
-03,1,&,2
67$+
&$//08/;
+
08/; $+
%+
&+
+
+
+
386+$
52/$
323$
5(7
9DORUHVGHO&3
&3$+(WLTXHWD,1,&,2
&3$+(WLTXHWD08/;
&3+'LUHFFLyQGH5(72512
❘ ¢ 'HGyQGHVDOHODGLUHFFLyQGHUHWRUQRHQHOSDVR"8VRGHOD3,/$
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
10
2SHUDFLRQHVVREUHOD3LOD
❚ 7UDWDPLHQWRGHOD3,/$6WDFN
❙ 'HILQLFLyQ(VXQEXIIHUGHPHPRULDFRQVWLWXLGRSRUUHJLVWURVHQ
FDVFDGDWLSR/,)2/DVW,QSXW)LUVW2XWSXW
❙ (O~QLFRUHJLVWURDFFHVLEOHHQXQPRPHQWRGDGRSDUDOHHURHVFULELU
HVHO3XQWHURGHO6WDFN&DEHFHUDR&LPDGHO6WDFN
❙ 2SHUDFLRQHVVREUHODSLOD
❘ (VFULWXUD3XVK &RQWHQLGRGHFDGD
XQRGHORVUHJLVWURVHVGHVSOD]DGR
D ODVLJXLHQWHSRVLFLyQPiVEDMD &DEHFHUDGHO
6WDFN
❘ /HFWXUD3RS &RQWHQLGRGHFDGD
XQRGHORVUHJLVWURVHVGHVSOD]DGR
KDFLDODVLJXLHQWHSRVLFLyQPiVDOWD
❙ 6WDFNGHSURIXQGLGDGILMD\OLPLWDGD
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
3XVK
3RS
723
5HJLVWURVGH
PHPRULD
LQWHUQRVDO
µ SURFHVDGRU
%27720
11
,PSOHPHQWDFLyQGHXQD3LODHQ0HPRULD
❚ ,PSOHPHQWDFLyQGHO6WDFNHQPHPRULD5$0H[WHUQD
❙ 1HFHVLGDGGHXQ3XQWHURGH3LOD6WDFN3RLQWHU LQWHUQRDO
µSURFHVDGRUSDUDGLUHFFLRQDUOD&DEHFHUDGHOD3LOD
❙ /RQJLWXGGHO6WDFNYDULDEOH
/'$+
❙ (VFULWXUD3XVK'HFUHPHQWRGHO63
❙ /HFWXUD3RS,QFUHPHQWRGHO63
❘ eVWDVGRV~OWLPDVRSHUDFLRQHVVRQ
JHVWLRQDGDVSRUOD8QLGDGGH&RQWURO
❙ ,QLFLDOL]DFLyQGHOiUHDGHPHPRULDSDUD
HO6WDFN
❘ /'60(0/RDG 6WDFN3RLQWHU
0(0FRUUHVSRQGHUiFRQXQDSRVLFLyQDOWD
GHODPHPRULD5$0
3&
µSURFHVDGRU
63
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
5$0
&DEHFHUDGHO
6WDFN
0(0
12
8VRGHOD3LOD$OPDFHQDPLHQWRGHGDWRV
❚ 8VRGHOD3LOD
❙ $UHDGHDOPDFHQDPLHQWRWHPSRUDOGHGDWRV
❘ ,QVWUXFFLyQ386+5
‡ 7UDQVILHUHHOFRQWHQLGRGHOUHJLVWUR5DODSRVLFLyQGHPHPRULD
DSXQWDGDSRUHO6WDFN3RLQWHU
± 5!63
± 63!63
❘ ,QVWUXFFLyQ3235
‡ 7UDQVILHUHHOFRQWHQLGRGHODGLUHFFLyQGHPHPRULDDSXQWDGDSRUHO
6WDFN3RLQWHUDOUHJLVWUR5
± 63!5
± 63!63
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
13
8VRGHOD3LOD/ODPDGDVDVXEUXWLQDV
❙ $UHDGHDOPDFHQDPLHQWRWHPSRUDOGHODVGLUHFFLRQHVGHUHWRUQRHQHO
XVRGHODVVXEUXWLQDV
❘ ,QVWUXFFLyQ&$//68%5-6568%5
‡ *XDUGDHQODSLODODGLUHFFLyQGHUHWRUQRGHODVXEUXWLQDRSHUDFLyQ
3XVKGHO3&&DUJDHO3&FRQORVE\WHV\GHODLQVWUXFFLyQ
±
±
±
±
±
3&/ !63
3&+ !63
63!63
OpCode Byte 2
Byte 3
E\WH!3&+
6LHPSUHTXHHOFRQYHQLRGHDOPDFHQDPLHQWRVHD%LJ(QGLDQ
E\WH!3&/
❘ ,QVWUXFFLyQ5(7576
‡ 7UDQVILHUHHOFRQWURODODLQVWUXFFLyQTXHVLJXHDO&$//-65
UHFXSHUDQGRODGLUHFFLyQGHUHWRUQRGHVGHODSLOD
± 63!3&+
± 63!3&/
± 63!63
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
14
(MHPSORGHPDQHMRGHOD3,/$
❚ (MHPSORGHPDQHMRGHODSLOD
+
+
+
+
,1,&,2 $+
'+
+
+
/'$+
-03,1,&,2
67$+
&$//08/;
+
08/; $+
%+
&+
+
+
+
386+$
52/$
323$
5(7
(YROXFLyQGHOHVWDGRGHOD3LOD
63DQWHV
63GHVSXpV
$
+
❚ 3RVLELOLGDGGHDQLGDPLHQWRGHVXEUXWLQDV
❚ /ODPDGDV\UHWRUQRVFRQGLFLRQDOHVDORVELWVGHOUHJLVWURGH
HVWDGR
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
15
0RGRVGHGLUHFFLRQDPLHQWR,
❚ 0RGRVGHGLUHFFLRQDPLHQWRPiVFDUDFWHUtVWLFRV
❙ /DVLQVWUXFFLRQHVGLVSRQHQGHGLIHUHQWHVIRUPDVSDUDORFDOL]DUORV
GDWRVFRQORVTXHGHEHRSHUDU(VWDVYDULDQWHVUHFLEHQHOQRPEUHGH
0RGRVGH'LUHFFLRQDPLHQWR
❘ ,QPHGLDWR (OGDWRHVWiFRQWHQLGRHQODLQVWUXFFLyQ
‡ (MHPSOR /'$
'( &'
❘ 'LUHFWR /DLQVWUXFFLyQFRQWLHQHODGLUHFFLyQGHOGDWR
‡ (MHPSOR /'$7$%/$
'( &'
❘ ,QGLUHFWR /DLQVWUXFFLyQFRQWLHQHXQDGLUHFFLyQGHXQSXQWHURDOGDWR
‡ (MHPSOR /'$>7$%/$@
'( >&'@
&3
$
+
/'$
/'$
7$%/$
/'$
>7$%/$@
7$%/$ +
+
+
+
+
+
+
+
+
$
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
7$%/$ +
+
+
+
+
+
+
+
)+
)+
$
16
0RGRVGHGLUHFFLRQDPLHQWR,,
❘ 5HODWLYR /DLQVWUXFFLyQFRQWLHQHXQGHVSOD]DPLHQWRRIIVHWTXH
VXPDGRDOFRQWDGRUGHSURJUDPDGDODGLUHFFLyQHIHFWLYD
‡ (MHPSOR %65/
'( &3&'
❘ ,QGH[DGR /DLQVWUXFFLyQFRQWLHQHXQYDORUTXHVXPDGRDOFRQWHQLGRGH
XQUHJLVWURtQGLFHGHOD&38GDODGLUHFFLyQHIHFWLYD
‡ (MHPSOR /'$;
'( ;&'
❘ ,QKHUHQWH (OFyGLJRGHRSHUDFLyQGHODLQVWUXFFLyQFRGLILFDODGLUHFFLyQ
HIHFWLYD
‡ (MHPSOR 7$%
386+$
'( 63
&3
;
+
+
)+
%65
/
/'$
;
/'$
>7$%/$@
7$%/$ ()+
)+
)+
/ )+
)+
)+
+
+
/'$
7$%
386+$
)
Calculadoras 6º Eléctrico E.T.S.I.I. Introducción al Lenguaje Ensamblador
$!%
&3
17
Descargar