Sie sind auf Seite 1von 26

Microprocessadores Intel Enfim, a dura realidade (ou: que saudades dos simuladores.

Chip ALU re dado End. Cache Caracter!sticas "#""($) %$ %$ " (%$) &# ' micro de %$ (its "#%"$ %$ %$ %$ &# ' "#"$ ) circuitos de apoio "#&"$ %$ %$ %$ &* ' mem+ria ,irtual se mentada e modo prote ido -"$./ -& -& %$ -& ' "#-"$ simplificado "#-"$ -& -& -& -& ' MMU, -& (its e modo ,irtual *"$./ -& -& -& -& "0 "#*"$ sem 12U "#*"$ -& -& -& -& "0 "#-"$ com 12U *"$3/& -& -& -& -& "0 *"$ com frequ4ncia interna de cloc5 dupla 3/* -& -& -& -& "0 instr. "0 dado *"$ com frequ4ncia interna de cloc5 tripla 2entium -& -& $* -& "0 instr. "0 dado & pipelines inteiros, 12U de $* (its, l+ ica de pre,is6o de des,ios 2entium 2ro -& -& $* -$ "0 instr. "0 dado &7$0n!,el& 2entium, mais renomea86o de re istradores e e9ecu86o fora de sequ4ncia 2entium MM/ -& -& $* -& %$0 instr. %$0 dado 2entium, com instru8:es e9tras para paralelismo (.IM3) 2entium II -& -& $* -$ %$0 instr. %$0 dado 7%&0n!,el& 2entium 2ro com MM/

Chip ALU re dado End. Cache Caracter!sticas 2entium -& -& $* -& "0 instr. "0 dado & pipelines inteiros, 12U de $* (its, l+ ica de pre,is6o de des,ios 2entium 2ro -& -& $* -$ "0 instr. "0 dado &7$0n!,el& 2entium, mais renomea86o de re istradores e e9ecu86o fora de sequ4ncia 2entium MM/ -& -& $* -& %$0 instr. %$0 dado 2entium, com instru8:es e9tras para paralelismo (.IM3) 2entium II -& -& $* -$ %$0 instr. %$0 dado 7%&0n!,el& 2entium 2ro com MM/ 2entium II Celeron -& -& $* -$ %$0 instr. %$0 dado #0 n!,el & 2entium II sem cache de n!,el & 2entium II Celeron A -& -& $* -$ %$0 instr. %$0 dado %&"0n!,el& 2entium II com cache na mesma frequ4ncia da C2U 2entium II /eon -& -& $* -$ %$0 instr. %$0 dado cache n!,.& 2entium II com 7%&0;%M;&M de cache na mesma frequ4ncia da C2U 2entium III -& -& $* -$ %$0 instr. %$0 dado cache n!,.& 2entium II com instru8:es e9tras para paralelismo de ponto flutuante 2entium * -& -& $* -$ %&0 instr. "0 dado cache n!,.& 2entium III com mais instru8:es e9tras para paralelismo de ponto flutuante (..E&)

2rocessador Cache tipo n!,el & frequ4ncia mult. <ens6o <ransistor "#""($) ' ' ' ' %9 7 = &>.### "#&"$ ' ' ' ' %9 7 = %-*.### "#-"$ ' ' ' ' %9 7 = &?7.### *"$./ "0 @< ' ' %9 7 = %.%"7.### *"$3/ "0 @< ' ' %9 7 = %.&##.### *"$3/& "0 @< ' ' &9 7 = %.%##.### 3/* %$0 @< ' ' &'-9 -,- = %.$##.### 2entium $#;$$ &9"0 @A ' ' %9 7 = -.%##.### 2entium ?7;&## &9"0 @A ' ' %,7'-9 -,- = -.-##.### 2entium 2ro &9"0 @A &7$0 % &'-9 -,- = 7.7##.### 2entium MM/ &9%$0 @A ' ' %,7'-9 %,"'&," = *.%##.### 2entium II &9%$0 @A 7%&0 %;& -,7'79 %,"'&," = ?.7##.### Celeron &9%$0 @A #0 ' -,7'79 %,"'&," = ?.7##.### Celeron A &9%$0 @A %&"0 % -,7'79 %,"'&," = ?.7##.### /eon &9%$0 @A 7%&0'&M % -,7'79 %,"'&," = ?.7##.### 2entium III &9%$0 @A 7%&0 %;& -,7'79 %,"'&," = >.7##.### 2entium III E &9%$0 @A &7$0 % *,#'>9 %,-'%,? = &".%##.### 2entium * "0 @A &7$0 % -,#'*9 %,-'%,? = *&.###.### Caracter!sticas tecnol+ icas

tipos 2C /< 2C A< 2C A< -"$ 2C A< *"$ 2entium 27 2entium 2$ microprocessador "#"" "#&"$ "#-"$ "#*"$ 2entium, MM/ 2entium 2ro, II, III, * 12U "#"? "#&"? "#-"? interna interna Interna

(arramento de dados " (its %$ (its -& (its -& (its $* (its $* (its (arramento de endere8os &# (its &* (its -# (its -# (its -# (its -- (its Computadores 2essoais tipo 2C

B ,ers6o 2C >> dispon!,el em http:;;de,eloper.intel.com;desi n;des uide ou http:;;CCC.microsoft.com;hCde,;pc>>.htm . B Usos distintos (ser,idores, portDteis, domEsticos, esta8:es de tra(alho, etc) B Confi ura86o (Dsica: F 2entium II -## MGH F -& a $* MAItes de mem+ria F (arramento 2CI (sem conectores I.A) F duas portas U.A F resolu86o de ,!deo de "## 9 $## com $*0 cores F suporte a C3 ou 3=3 F modem de 7$ 0(ps ou placa de rede F opcionais: placas de som, placas aceleradoras -3, suporte a infra,ermelho (Ir3A) e IEEE %->* ((arramento serial rDpido)

B ,ers6o 2C &##% dispon!,el em http:;;CCC.pcdes uide.or . B Usos distintos (ser,idores, portDteis, domEsticos, esta8:es de tra(alho, etc) B Confi ura86o (Dsica: F 2entium II $$? MGH (des5top) ou *## MGH (laptop) F $* a %&" MAItes de mem+ria F (arramento 2CI (proi(i86o de conectores I.A) F duas portas U.A (su(stitui86o de portas seriais e paralela) F resolu86o de ,!deo de %#&* 9 ?$" com -& (its por pi9el F suporte a C3 ou 3=3 F modem de 7$ 0(ps ou placa de rede F placa aceleradora -3 em modelos des5top F opcionais: placas de som, suporte a infra,ermelho (Ir3A) e IEEE %->* ((arramento serial rDpido)

Microprocessador Intel "#"$ B Arquitetura de %$ (its B Comunica86o com a mem+ria em %$ ("#"$) ou " ("#"") (its B Capacidade mD9ima de mem+ria de % MAIte B %* re istradores (* dado, * endere8o, * se mento, ponteiro do pro rama, fla s)

%7 " ? # A/ AG AL acumulador A/ AG AL (ase C/ CG CL contador 3/ 3G 3L dado .2 ponteiro para pilha A2 ponteiro (ase .I !ndice fonte 3I !ndice destino I2 apontador de instru8:es 1LAJ. fla s C. se mento de c+di o 3. se mento de dados .. se mento de pilha E. se mento e9tra Microprocessador Intel "#"$;"#""

Microprocessador Intel "#"$ B Arquitetura de %$ (its B Comunica86o com a mem+ria em %$ ("#"$) ou " ("#"") (its B Capacidade mD9ima de mem+ria de % MAIte B %* re istradores (* dado, * endere8o, * se mento, ponteiro do pro rama, fla s) B endere8o f!sico K se mento L %$ M deslocamento

C. 3. .. E. #### #### #### #### Nffset (deslocamento) # %7 # %7 Endere8o 1!sico # %> "#"$ ' 1orma86o de endere8o

tipo de refer4ncia O mem+ria se mento default se mento alternati,o deslocamento (usca de instru86o C. I2 pilha .. .2 ,ariD,el 3. C.,E.,.. endere8o de operando A2 como (ase .. C.,E.,3. endere8o de operando strin fonte 3. C.,E.,.. .I strin destino E. 3I Uso padr6o de re istradores de se mento

Modo .i nificado Imediato operando na instru86o Pe istrador operando em re istrador 3ireto operando na mem+ria, endere8ado por deslocamento contido na instru86o Pe istrador indireto operando na mem+ria, endere8ado por deslocamento contido em re istrador Inde9ado (ou (ase) operando na mem+ria, endere8ado pela soma do conteQdo do re istrador de !ndice (ou (ase) com o deslocamento contido na instru86o Aase e inde9ado com deslocamento operando na mem+ria, endere8ado pela soma do conteQdo do re istrador de !ndice com o conteQdo do re istrador (ase e com o deslocamento contido na instru86o Uso padr6o de re istradores de se mento Modos de endere8amento (cDlculo do deslocamento)

Imediato: A33 CG,71G Pe istrador: A33 A/,3/ 3ireto: A33 @=AP,A/ (@=AP E uma refer4ncia O mem+ria) Pe istrador indireto: A33 C/,RA/S Inde9ado (ou (ase): A33 R.IM$S,AL Aase e inde9ado com deslocamento: A33 RA/M3IM7S,3/ E9emplos de modos de endere8amento (A33 destino, fonte)

Microprocessador Intel "#"$ B Arquitetura de %$ (its B Comunica86o com a mem+ria em %$ ("#"$) ou " ("#"") (its

B Capacidade mD9ima de mem+ria de % MAIte B %* re istradores (* dado, * endere8o, * se mento, ponteiro do pro rama, fla s) B endere8o f!sico K se mento L %$ M deslocamento B "7 instru8:es (Dsicas

AAA A.CII AdTust After Adition AA3 A.CII AdTust Aefore 3i,ision AAM A.CII AdTust After MultiplI AA. A.CII AdTust After .u(tract A3C Add Cith CarrI A33 Add AU3 Lo ical And CALL Call 2rocedure CA@ Con,ert AIte to @ord CLC Clear CarrI 1la CL3 Clear 3irection 1la CLI Clear Interrupt 1la CMC Complement CarrI 1la CM2 Compare CM2.A;@ Compare strin s (AIte, @ord) C@3 Con,ert @ord to 3ou(le 3AA 3ecimal AdTust After 3i,ision 3A. 3ecimal AdTust after .u(tract 3EC 3ecrement 3I= Unsi ned 3i,ide E.C Escape (for 12U) GL< Galt I3I= .i ned 3i,ide IMUL .i ned MultiplI IU Input from 2ort IUC Increment IU< .oftCare Interrupt IU<N Interrupt on N,erfloC IPE< Interrupt Peturn (%$ (its) IPE<3 Interrupt Peturn (-& (its) VA,VUAE Vump if A(o,e VAE,VUA Vump if A(o,e or Equal VA,VUAE Vump if (elloC VAE,VUA Vump if AelloC or Equal VC Vunp on CarrI VC/W Vump if C/ is Wero VE,VW Vump if Equal (Wero) VJ,VULE Vump if Jreater VJE,VUL Vump if Jreater or Equal VL,VUJE Vump if Less VLE,VUJ Vump if Less or Equal VM2 Vump inconditionallI VUC Vump if not CarrI VUE,VUW Vump if not Equal VU2,V2N Vump if 2aritI Ndd VN,VUN Vump on N,erfloC, not N,erf. V2,V2E Vump if 2aritI E,en V.,VU. Vump on .i n, not .i n LAG1 Load 1la s into AG L3.,LE. Load 1ar 2ointer (3., E.) LEA Load Effecti,e Address LNC0 Loc5 the Aus LN3.A;@ Load .trin (AIte, @ord) LNN2 Loop LNN2E;W Loop Chile Equal LNN2UE;W Loop Chile not Equal MN= Mo,e 3ata MN=.A;@ Mo,e .trin (AIte,@ord) MUL Unsi ned MultiplI UEJ <CoXs Complement Ue ation UN2 Uo Nperation UN< NneXs Complement Ue ation NP Inclusi,e Nr NU< Nutput to 2ort 2N2 2op from .tac5 2N21 2op 1la s 2U.G 2ush into .tac5 2U.G1 2ush 1la s PCL Potate Cith CarrI Left PCP Potate Cith CarrI Pi ht PE2 Pepeat .trin PE2E;W Pepeat Chile Equal (Wero) PE2UE;W Pepeat Chile not Equal (Wero) PE<,PE<1 Peturn from 2rocedure PNL Potate Left PNP Potate Pi ht .AG1 .tore AG into 1la s .AL .hift Arithmetic Left .AP .hift Arithmetic Pi ht .AA .u(tract Cith AorroC .CA.A;@ .can .trin (AIte, @ord) .GL .hift Left .GP .hift Pi ht .<C .et CarrI 1la .<3 .et 3irection 1la .<I .et Interrupt 1la .<N.;@ .tore .trin (AIte, @ord) .UA .u(tract <E.< Lo ica Compare @AI< @ait (coprocessor) /CGJ E9chan e /LA< <ranslate /NP E9clusi,e Nr

Microprocessador Intel "#"$ B Arquitetura de %$ (its B Comunica86o com a mem+ria em %$ ("#"$) ou " ("#"") (its B Capacidade mD9ima de mem+ria de % MAIte B %* re istradores (* dado, * endere8o, * se mento, ponteiro do pro rama, fla s) B endere8o f!sico K se mento L %$ M deslocamento B "7 instru8:es (Dsicas B coprocessador: "#"? ($? instru8:es (Dsicas)

1&/M% Calculates &Y9'% 1AA. A(solute =alue 1A33 Add Peal 1A332 Add Peal and 2op 1AL3 Load AC3 1A.<2 .tore AC3 and 2op 1CG. Chan e .i n 1(U)CLE/ Clear e9ceptions 1CNM Compare Peal

1CNM2 Compare Peal And 2op 1CNM22 Compare Peal and 2op <Cice 13EC.<2 3ecrement .tac5 1(U)3I.I (L) 3isa(le Interrupts 13I= 3i,ide Peal 13I=2 3i,ide Peal and 2op 13I=P 3i,ide Peal Pe,ersed 13I=P2 3i,ide Peal Pe,ersed and 2op 1(U)EUI (L) Ena(le Interrupts 11PEE 1ree Pe ister 1IA33 Inte er Add 1ICNM Compare Inte er 1ICNM2 Compare Inte er and 2op 1I3I= Inte er 3i,ide 1I3I=P Inte er 3i,ide Pe,ersed 1IL3 Load Inte er 1IMUL Inte er MultiplI 1IUC.<2 Increment .tac5 1(U)IUI< InitialiHe Coprocessor 1I.< .tore Inte er 1I.<2 .tore Inte er and 2op 1I.UA Inte er .u(tract 1I.UAP Inte er .u(tract Pe,ersed 1L3 Load Peal 1L3% Load =alue of %.# 1L3C@ Load Control @ord 1L3EU= Load En,ironment .tate 1L3L&E Load =alue of Lo &(e) 1L3L&< Load =alue of Lo &(%#) 1L3LJ& Load =alue of Lo %#(&) 1L3LU& Load =alue of Lo e(&) 1L32I Load =alue of 2i 1L3W Load =alue of #.# 1MUL Peal MultiplI 1MUL2 Peal MultiplI and 2op 1UN2 Uo Nperation 12A<AU 2artial Arctan ent 12PEM 2artial Pemainder 12<AU 2artial <an ent 1PU3IU< Pound to Inte er 1P.<NP Pestore .a,ed .tate 1(U).A=E .a,e Coprocessor .tate 1.CALE .cale Cith poCers of & 1.ZP< .quare Poot 1.< .tore Peal 1(U).<C@ .tore Control @ord 1(U).<EU= .tore En,ironment .tate 1.<2 .tore Peal and 2op 1(U).<.@ .tore .tatus @ord 1.UA Peal .u(tract 1.UA2 Peal .u(tract and 2op 1.UA2P Peal .u(tract Pe,ersed and 2op 1.UAP Peal .u(tract Pe,ersed 1<.< <est for Wero 1@AI< C2U @ait (until 12U readI) 1/AM E9amine 1/CG E9chan e Pe isters 1/<PAC< E9tract E9ponent and Mantissa 1[L&/ Calculates I . lo &(9) 1[L&/2% Calculates I . lo &(9M%) (L) F eliminadas a partir do "#&"?

Microprocessador Intel "#"$ B Arquitetura de %$ (its B Comunica86o com a mem+ria em %$ ("#"$) ou " ("#"") (its B Capacidade mD9ima de mem+ria de % MAIte B %* re istradores (* dado, * endere8o, * se mento, ponteiro do pro rama, fla s) B endere8o f!sico K se mento L %$ M deslocamento B "7 instru8:es (Dsicas B coprocessador: "#"? ($? instru8:es (Dsicas) B sem cache, sem mem+ria ,irtual B somente opera no modo real

Microprocessador Intel "#%"$ B Id4ntico ao "#"$ B Comunica86o com a mem+ria em %$ (its B Capacidade mD9ima de mem+ria de % MAIte B %* re istradores B Endere8o f!sico K se mento L %$ M deslocamento B .ete instru8:es e9tras ("7 M ? K >& instru8:es (Dsicas) B Coprocessador: "#%"? (id4ntico ao "#"?)

B .em cache, sem mem+ria ,irtual

Microprocessador Intel "#&"$ B Modos real ("#"$) e ,irtual (modo prote ido) B Comunica86o com a mem+ria em %$ (its B Capacidade mD9ima de mem+ria de %$ MAIte B %* re istradores (os do "#"$) B Endere8o f!sico ou ,irtual B %7 instru8:es e9tras (>& M %7 K %#? instru8:es (Dsicas) B Coprocessador: "#&"? B .em cache B Mem+ria ,irtual se mentada

Microprocessador Intel "#-"$ B Modos real ("#"$), ,irtual (prote ido) e ,irtual"$ B Comunica86o com a mem+ria em %$ (./) ou -& (its (3/) B Capacidade mD9ima de mem+ria de * JAIte B %* re istradores (os do "#"$, estendidos para -& (its) e mais & re istradores de se mento

-% %$ %7 EA/ AG AL acumulador EA/ AG AL (ase EC/ CG CL contador E3/ 3G 3L dado E.2 .2 ponteiro para pilha EA2 A2 ponteiro (ase E.I .I !ndice fonte E3I 3I !ndice destino -% %$ %7 # EI2 I2 apontador de instru8:es E1 1LAJ. fla s

1la s de status: C1 Ait # ,ai'um (carrI) 21 Ait & paridade (paritI) A1 Ait * ,ai'um au9iliar (au9iliarI carrI) W1 Ait $ Hero .1 Ait ? sinal (si n) N1 Ait %% o,erfloC 1la s de controle: <1 Ait " trap

I1 Ait > interrupt ena(le 31 Ait %# dire86o (direction) 1la s espec!ficos do "#-"$: IN2L Aits %& e %- n!,el de pri,ilE io de E;. U< Ait %* tarefa aninhada P1 Ait %$ fla resume =M Ait %? modo ,irtual Pe istrador de fla s (1 ou E1)

C. se mento de c+di o (code se ment) .. se mento de pilha (stac5 se ment) 3. se mento de dados (data se ment) E. se mento de dados 1. se mento de dados J. se mento de dados Pe istradores de se mento B 1ormam endere8o f!sico (modo real) B .elecionam descritor de se mento (modo prote ido)

Microprocessador Intel "#-"$ B Modos real ("#"$), ,irtual (prote ido) e ,irtual"$ B Comunica86o com a mem+ria em %$ (./) ou -& (its (3/) B Capacidade mD9ima de mem+ria de * JAIte B %* re istradores (os do "#"$, estendidos para -& (its) e mais & re istradores de se mento B Endere8o f!sico ou ,irtual B ** instru8:es e9tras (%#? M ** K %7% instru8:es (Dsicas) B Mem+ria ,irtual se mentada e pa inada (opcional)

Jer4ncia de mem+ria ,irtual

Zuest:es de mem+ria ,irtual

B Zuando mo,er um (loco da mem+ria secundDria para a mem+ria primDria (real) \ por demanda B Zuando mo,er um (loco da mem+ria real para a mem+ria secundDria\ quando faltar espa8o na mem+ria real B qual o tamanho ideal de um (loco\ constante (pa ina86o) ou ,ariD,el (se menta86o) ] onde colocar um no,o (loco transferido para a mem+ria principal\ onde hou,er Drea li,re (pa ina86o) ou no ^melhor_ lu ar (se menta86o)

Microprocessador Intel "#-"$ B Modos real ("#"$), ,irtual e ,irtual"$ B Comunica86o com a mem+ria em %$ (./) ou -& (its (3/) B Capacidade mD9ima de mem+ria de * JAIte B %* re istradores (os do "#"$, estendidos para -& (its) e mais & re istradores de se mento B Endere8o f!sico ou ,irtual B ** instru8:es e9tras (%#? M ** K %7% instru8:es (Dsicas) B Mem+ria ,irtual se mentada e pa inada (opcional) B Coprocessador: "#-"? ($? M ? '% K ?- instru8:es (Dsicas) B .em cache

Microprocessador Intel "#*"$ B Id4ntico ao -"$ B Modos real ("#"$), ,irtual e ,irtual"$ B Comunica86o com a mem+ria em -& (its B Capacidade mD9ima de mem+ria de * JAIte B %$ re istradores (os do "#-"$, tam(Em em -& (its) B Endere8o f!sico ou ,irtual B $ instru8:es e9tras (%7% M $ K %7? instru8:es (Dsicas) B Mem+ria ,irtual se mentada e pa inada (opcional) B Coprocessador: "#*"? para "#*"$./ inte rado no "#*"$3/

B Com cache de " 0AIte

Microprocessador Intel 2entium B Peestrutura86o do *"$ B Modos real ("#"$), ,irtual e ,irtual"$ B Comunica86o com a mem+ria em $* (its B Capacidade mD9ima de mem+ria de * JAIte B %$ re istradores (os do "#-"$, tam(Em em -& (its) B Endere8o f!sico ou ,irtual B 7 instru8:es e9tras (%7? M 7 K %$& instru8:es (Dsicas) B Mem+ria ,irtual se mentada (sempre) e pa inada (opcional) B Coprocessador: inte rado B Com cache de %$ 0AIte (& 9 " 0AIte)

Microprocessador Intel 2entium ] & pipelines para de inteiros, operando em paralelo ] cada pipeline inteiro consta de 7 estD ios: (usca de instru86o (a partir da cache de instru8:es), decodifica86o de instru86o, era86o de endere8o, e9ecu86o, escrita (Crite (ac5). ] 12U tam(Em em pipeline (mas n6o em paralelo) ] Npera86o superescalar: mais de uma instru86o pronta em um ciclo de rel+ io

A33 UM= AU3 UM= CALL (immediate) = CM2 UM= 3EC UM= IUC UM= Vcc = VM2 (immediate onlI) = LEA UM= MN= ( eneral re ister and memorI onlI) UM= UN2 UM= NP UM= 2N2 (re ister onlI) UM= 2U.G (re ister onlI) UM= PCL, PCP (one (it and immediate onlI) U PNL, PNP (one (it and immediate onlI) U .AP,.GL,.GP (one (it and immediate onlI) U .UA UM= <E.< (re 're , mem're and immediate'EA/ onlI) UM= /NP UM= Instru8:es paraleliHD,eis no 2entium

Microprocessador Intel 2entium 2ro (2$) B Peestrutura86o do 2entium (27) B Mesmas caracter!sticas de "#-"$ (mem. ,irtual) e do 2entium (lar ura de dados de $* (its) B 7 instru8:es e9tras (%$& M - K %$7 instru8:es (Dsicas) B Coprocessador: inte rado B Com cache de %$ 0AIte (& 9 " 0AIte) B Npera86o superescalar B Cinco unidades internas ] E9ecu86o fora de sequ4ncia ] E9ecu86o especulati,a

Microprocessador Intel 2entium MM/ B Arquitetura do 2entium (27) B Uo,o tipo de dado: ^pac5ed_ B 7? instru8:es e9tras (alEm das %$7 instru8:es (Dsicas) B Com cache de -& 0AIte (& 9 %$ 0AIte) B Npera86o superescalar B U6o possui as caracter!sticas do 2entium 2ro (e9ecu86o fora de sequ4ncia, e9ecu86o especulati,a) B Instru8:es para processamento de ,etores (" (Ites, * pala,ras ou & pala,ras duplas) B " no,os re istradores l+ icos (MM/# a MM/?)

<ipo de dado Limite Inferior Limite .uperior Com sinal AIte '%&" %&? 2ala,ra '-&.?$" -&.?$? .em sinal AIte # &77 2ala,ra # $7.7-7 Microprocessador Intel 2entium MM/ B 7? Instru8:es para processamento de ,etores (" (Ites, * pala,ras ou & pala,ras duplas) B " no,os re istradores l+ icos (MM/# a MM/?) B AritmEtica de satura86o

Microprocessador Intel 2entium II (2$) B 2entium 2ro com MM/ B Mesmas caracter!sticas do 2entium 2ro

B Instru8:es MM/ B Cinco unidades internas ] E9ecu86o fora de sequ4ncia ] E9ecu86o especulati,a

%&? >$ >7 $* $- -& -% # .in le 12 .in le 12 .in le 12 .in le 12 2ac5ed .in le 12 %&? >$ >7 $* $-& -% # U6o alterado U6o alterado U6o alterado .in le 12 .calar .in le 12 Microprocessador Intel 2entium III B Arquitetura do 2entium II (2$) B Uo,o tipo de dado: ^floatin pac5ed_ B ?# instru8:es e9tras (alEm das %$? (Dsicas e 7? MM/) B Instru8:es para processamento de ,etores inteiros (MM/) ou de ponto flutuante (..E) B " no,os re istradores f!sicos (/MM# a /MM?), de %&" (its, para as instru8:es ..E

2ar`metro =alores ap+s e9ecu86o de C2UI3 EA/K# EA/: Maior ,alor aceito para EA/ EA/:EC/:E3/: .trin de identifica86o EA/K% EA/: Identificador do processador (-& (its superiores do nQmero de sErie) EA/:EC/: Indefinidos E3/: 1eature 1la s EA/K& EA/:EA/:EC/:E3/: ,alores de confi ura86o do 2rocessador EA/K- E3/:EC/: $* (its inferiores do nQmero de sErie EA/a- EA/:EA/:EC/:E3/: Indefinidos 3esa(ilitar o nQmero de sErie MN= EC/, %%>G P3M.P bloads E3/:EA/ NP EA/, ##&# ####h @PM.P 2entium: instru86o C2UI3 e nQmero de sErie

<ipo C+di o (he9a) Instru86o 3escri86o % "" re rm MN= rm", r" Mo,e de re istradores de " (its & "> re rm MN= rm%$, r%$ Mo,e de re istradores de %$ (its - "> re rm MN= rm-&, r-& Mo,e de re istradores de -& (its * "A re rm MN= r", rm" Mo,e para re istradores de " (its 7 "A re rm MN= r%$, rm%$ Mo,e para re istradores de %$ (its $ "A re rm MN= r-&, rm-& Mo,e para re istradores de -& (its ? "C re rm MN= rm%$, sre Mo,e de re istrador de se mento " "E re rm MN= sre , rm%$ Mo,e para re istrador de se mento > A# MN= AL, m" Mo,e (Ite para AL %# A% MN= A/, m%$ Mo,e pala,ra (%$ (its) para A/ %% A% MN= EA/, m-& Mo,e pala,ra dupla (-& (its) para EA/ %& A& MN= m", AL Mo,e AL para mem+ria ((Ite) %- A- MN= m%$, A/ Mo,e A/ para mem+ria (pala,ra) %* A- MN= m-&, EA/ Mo,e EA/ para mem+ria (pala,ra dupla) %7 A# re imed MN= r", im" Mo,e dado imediato ((Ite) para re . " (its %$ A" re imed MN= r%$, im%$ Mo,e dado imediato para re . %$ (its %? A" re imed MN= r-&, im-& Mo,e dado imediato para re . -& (its %" C$ rm imed MN= rm", im" Mo,e dado imediato para re ;mem (" (its) %> C? rm imed MN= rm%$, im%$ Mo,e dado imediato para re ;mem (%$ (its) &# C? rm imed MN= rm-&, im-& Mo,e dado imediato para re ;mem (-& (its) Codifica86o de Instru8:es (e9emplo: MN=)

Instru8:es de transfer4ncia de dados B MN= destino, fonte mo,e fonte para destino (A,@,3) B 2U.G fonte coloca fonte na pilha (@,3) B 2N2 destino retira da pilha para destino (@,3) B /CGJ op%, op& troca (e9chan e) operandos B A.@A2 re -& in,erte a ordem dos * (Ites B Pestri8:es: ] apenas MN=, 2U.G e 2N2 podem acessar re istradores de se mento ] n6o E poss!,el mo,er um dado imediato para um re istrador de se mento ] C. n6o pode ser usado como destino (nem I2) ] operandos de 2U.G e 2N2 de,em ser de %$ ou -& (its ] op% e op& em /CGJ podem ser re istradores, ou apenas um pode ser operando na mem+ria

Instru8:es de transfer4ncia de dados B MN= re , re mesmo tamanho (", %$ ou -& (its) B MN= mem, re mesmo tamanho (", %$ ou -& (its) B MN= re , mem mesmo tamanho (", %$ ou -& (its) B MN= re , imed mesmo tamanho (", %$ ou -& (its) B MN= mem, imed mesmo tamanho (", %$ ou -& (its) B MN= re , se re operandos de %$ (its B MN= se re , re (e9ceto C.) operandos de %$ (its B MN= se re , mem (e9ceto C.) operandos de %$ (its B MN= mem, se re operandos de %$ (its B /CGJ re , re mesmo tamanho (", %$ ou -& (its) B /CGJ re , mem mesmo tamanho (", %$ ou -& (its) B /CGJ mem, re mesmo tamanho (", %$ ou -& (its)

Instru8:es de transfer4ncia de dados B 2U.G r%$;r-& Empilha um re istrador de %$ ou -& (its B 2U.G m%$;m-& Empilha um operando de mem+ria de %$ ou -& (its B 2U.G im%$;im-& Empilha um dado imediato de %$ ou -& (its

B 2U.G se re Empilha um re istrador de se mento (%$ (its) B 2U.GA Empilha A/, C/, 3/, A/, .2 (ori inal), A2, .I e 3I B 2U.GA3 Empilha EA/,EC/,E3/,EA/,E.2(ori inal),EA2,E.I,E3I B 2N2 r%$;r-& 3esempilha um re istrador de %$ ou -& (its B 2N2 m%$;m-& 3esempilha um operando de %$ ou -& (its B 2N2 se re (e9ceto C.) 3esempilha um re istrador de se mento (e9ceto C.) B 2N2A 3esempilha 3I, .I, A2, .2, A/, 3/, C/ e A/ B 2N2A3 3esempliha E3I, E.I, EA2, E.2, EA/, E3/, EC/ e EA/

Instru8:es de transfer4ncia de fla s B 2U.G1;2U.G13 coloca re istrador de fla s na pilha (%$ (its para 1 ou -& (its para E1) B 2N21;2N213 retira re istrador de fla s da pilha (%$ (its para 1 e -& (its para E1) B LAG1 carre a AG com fla s (" (its menos si nificati,os do re istrador 1) B .AG1 carre a fla s com AG (" (its menos si nificati,os do re istrador 1)

Instru8:es de transfer4ncia so(re endere8os B LEA r%$;r-&, mem carre a endere8o efeti,o do operando mem para re (%$ ou -& (its) B L3. r%$;-&, mem carre a endere8o de mem para re (%$ ou -& (its) e 3. (%$ (its) B LE. r%$;-&, mem carre a endere8o de mem para re (%$ ou -& (its) e E. (%$ (its) B L1. r%$;-&, mem carre a endere8o de mem para re (%$ ou -& (its) e 1. (%$ (its) B LJ. r%$;-&, mem carre a endere8o de mem para re (%$ ou -& (its) e J.

Instru86o de tradu86o B /LA< con,erte AL (translate (Ite) B .u(stitui um (Ite em AL por um (Ite de uma ta(ela, indicada em A/ B ConteQdo de AL fornece o deslocamento na ta(ela B Instru86o su(stitui o conteQdo de AL pelo (Ite em RA/MALS

Instru8:es de entrada e sa!da B IU acumulador, porta leitura de (Ite, Cord ou do(leCord para AL, A/ ou EA/ B NU< porta, acumulador transfere (Ite, Cord ou dou(leCord de AL, A/ ou EA/ para a porta B IU e NU< podem referenciar atE $77-$ portas de E;. Cada porta pode rece(er ou fornecer um (Ite apenas B Aparecem em dois tipos: direto e indireto Uo tipo direto a instru86o fornece um endere8o de porta de % (Ite (so( a forma de constante imediata, entre # e &77) Uo tipo indireto, o re istrador 3/ fornece o endere8o de porta, permitindo assim referenciar atE $77-$ portas

Instru8:es de entrada e sa!da B 1ormatos poss!,eis IU AL, im" NU< im", AL IU AL, 3/ NU< 3/, AL IU A/, im" NU< im", A/ IU A/, 3/ NU< 3/, A/ IU EA/, im" NU< im", EA/ IU EA/, 3/ NU< 3/, EA/

Instru8:es aritmEticas so(re dois operandos B A33 destino, fonte soma (destino K destino M fonte) B A3C destino, fonte

soma com carrI (destino K destino M fonte M carrI) B .UA destino, fonte su(trai fonte do destino (destino K destino ' fonte) B .AA destino, fonte su(trai com (orroC (destino K destino ' fonte ' (orroC) B CM2 destino, fonte compara destino ' fonte (sem armaHenar o resultado) B com(ina8:es ^re , re _, ^re , mem_, ^mem, re _, ^re , imed_ e ^mem, imed_, em ", %$ ou -& (its

Instru8:es aritmEticas so(re um operando B IUC destino incrementa de % B 3EC destino decrementa de % B UEJ destino troca sinal (complemento de dois) B ^destino_ pode ser um re istrador ou uma refer4ncia a mem+ria, de ", %$ ou -& (its

Instru8:es de multiplica86o e di,is6o B MUL fonte multiplica como inteiro sem sinal B IMUL fonte multiplica como inteiro com sinal B 3I= fonte di,ide como inteiro sem sinal B I3I= fonte di,ide como inteiro com sinal

Instru8:es de multiplica86o e di,is6o B <r4s formas poss!,eis para a multiplica86o B AL 9 fonte K A/ (multiplica86o de (Ites, resultado em uma pala,ra) B A/ 9 fonte K 3/:A/

(multiplica86o de pala,ras, resultado em pala,ra dupla) B EA/ 9 fonte K E3/:EA/ (multiplica86o de pala,ras duplas, resultado em $* (its) B C1 e N1 s6o li ados se a metade mais si nificati,a do resultado n6o for apenas e9tens6o do sinalb demais fla s indefinidos

Instru8:es de multiplica86o e di,is6o B <r4s formas poss!,eis para di,is6o B A/ ; fonte KAL e resto em AG (di,is6o por (Ite) B 3/:A/ ; fonte K A/ e resto em 3/ (di,is6o por pala,ra) B E3/:EA/ ; fonte K EA/ e resto em E3/ (di,is6o por pala,ra dupla) B <odos os fla s s6o indefinidos B .e o resultado ti,er mais (its do que pode ser armaHenado no quociente E erada uma interrup86o do tipo # (erro de di,is6o)

Instru8:es de multiplica86o e di,is6o B IMUL: & no,os formatos no "#%"$ e % no,o no *"$: ] Com um operando (IMUL fonte) ] Com dois operandos (IMUL destino, fonte) o operando destino (re istrador) E multiplicado pelo operando fonte (re istrador, operando em mem+ria ou dado imediato). N resultado E armaHenado no re istrador destino, truncado para o seu tamanho (%$ ou -& (its). C1 e N= indicam ent6o se ocorreu estouro

] Com tr4s operandos (IMUL destino, fonte, constante) o operando destino (re istrador) rece(e o produto do operando fonte (re istrador ou operando em mem+ria) pela constante (dado imediato). Ns operandos fonte e destino de,em ser de %$ ou -& (its e ter o mesmo comprimentob o resultado E armaHenado com trunca em dos (its mais si nificati,os. C1 e N= indicam se hou,e

Instru8:es de con,ers6o e aTuste B CA@ con,erte AL para A/

B C@3 con,erte A/ para 3/:A/ B C@3E con,erte A/ para EA/ B C3Z con,erte EA/ para E3/:EA/ B 3AA decimal adTust after addition (so(re AL) B 3A. decimal adTust after su(traction (so(re AL) B AAA A.CII adTust after addition (so(re AL) B AA. A.CII adTust after su(traction (so(re AL) B AAM A.CII adTust after multiplication (so(re

Instru8:es de transfer4ncia e aTuste B MN=./ destino, fonte mo,e fonte para destino com e9tens6o do sinal B MN=W/ destino, fonte mo,e fonte para destino com e9tens6o de Heros B Instru8:es foram acrescentadas a partir do "#-"$ MN=./ r%$, rm" MN=./ r-&, rm" MN=./ r-&, rm%$ MN=W/ r%$, rm" MN=W/ r-&, rm" MN=W/ r-&, rm%$

Instru8:es l+ icas con,encionais B UN< destino B AU3 destino, fonte B NP destino, fonte B /NP destino, fonte B <E.< destino, fonte (id4ntico a AU3, sem armaHenar resultado)

Instru8:es de deslocamento

B PNP destino, contador rotate ri ht ms( rece(e ls(, ls( ,ai tam(Em para C1 B PCP destino, contador rotate Cith carrI ri ht ms( rece(e C1, ls( ,ai para C1 B PNL destino, contador rotate left ls( rece(e ms(, ms( ,ai tam(Em para C1 B PCL destino, contador rotate Cith carrI left ls( rece(e C1, ms( ,ai para C1

Instru8:es de deslocamento B .GP destino, contador shift lo ical ri ht ms( rece(e #, ls( ,ai para C1 B .AP destino, contador shift arithmetic ri ht ms( rece(e sinal, ls( ,ai para C1 B .GL destino, contador shift left ls( rece(e #, ms( ,ai para C1 B .AL destino, contador shift left ls( rece(e #, ms( ,ai para C1 (como .GL)

Instru8:es de deslocamento B Codifica8:es poss!,eis opera86o re ,% opera86o re , CL opera86o re , im" opera86o mem,% opera86o mem, CL opera86o mem, im"

Instru8:es so(re (its de um operando B A.1 (itcinde9, operando Ait .can 1orCard B A.P (itcinde9, operando Ait .can Pe,erse

.e nenhum (it for um, W1K% B A< operando, (itcinde9 Ait <est B A<C operando, (itcinde9 Ait <est and Complement B A<P operando, (itcinde9 Ait <est and Peset B A<. operando, (itcinde9 Ait <est and .et Copia o (it para C1

Instru8:es de des,io B As instru8:es de des,io podem alterar C. e I2 (ou EI2) ou somente I2 (ou EI2) B .e o endere8o fornecido E de %$ (its, o re istrador EI2 E mascarado pelo ,alor ####1111Gb o endere8o al,o fica dentro da Drea de $* 0AItes de um se mento B .e o endere8o fornecido E de -& (its, o mascaramento n6o E realiHadob endere8ando uma Drea de * JAItes. .omente E ,Dlido no modo prote ido.Uos modos real e ,irtual"$, uma interrup86o de erro de endere8amento E erada se o ,alor final apontar para ,alores acima de $* 0

Instru8:es de des,io incondicional B VM2 direto B 2ode ser curto (short), perto (near) ou lon e (far) B Uo VM2 curto e no perto, um deslocamento contido na instru86o E adicionado ao I2 (modo de endere8amento relati,o para des,ios) B Esse deslocamento pode ser de % (Ite (short), ou de & ou * (Ites (near) B Uo VM2 lon e, C. e I2 (ou EI2) s6o carre ados com o endere8o especificado B VM2 indireto B 2ode ser perto (near) ou lon e (far) B Uo VM2 perto, o conteQdo de um re istrador ou uma posi86o de mem+ria E copiado no I2 (ou EI2) B Uo VM2 lon e, C. e I2(ou EI2) s6o carre ados com o conteQdo de mem+ria (endere8ada como operando, usando os modos de endere8amento)

Controle de la8o B LNN2 endere8ocal,o loop B LNN2E endere8ocal,o loop Chile equal (W1K%) B LNN2W endere8ocal,o loop Chile Hero(W1K%) B LNN2UE endere8ocal,o loop Chile not equal (W1K#)

B LNN2UW endere8ocal,o loop Chile not Hero (W1K#) B VC/W endere8ocal,o Tump if C/ K # B VEC/W endere8ocal,o Tump if EC/ K # Usam o re istrador C/ (ou EC/) como contador 3ecrementam o contador e des,iam se n6o che ou a Hero Uenhum fla E afetado LNN2E e LNN2UE testam adicionalmente o fla W1 <odas as instru8:es permitem apenas deslocamentos curtos (short, ou seTa, de M%&? a '%&")

Chamada e retorno de su(rotina B CALL endere8ocal,o call procedure B PE< ,alorcopcional return from procedure B CALL E semelhante a VM2, s+ que armaHena o endere8o de retorno na pilha B CALL pode ser direto ou indireto, assim como near ou far B A forma near armaHena o I2 (ou EI2) na pilha B A forma far armaHena C. e I2 (ou EI2) na pilha B PE< tam(Em de,e ser correspondentemente near ou far B PE< pode ter um ,alor que E somado ao .2 depois do retorno

Interrup8:es de softCare B IU<tipo interrup86o B IU<N interrup86o se o,erfloC B IPE< retorno de interrup86o B IU< tipo: des,ia de modo far para o endere8o especificado em mem(####:tipoL*) des,io semelhante a uma su(rotina, mas empilha fla s

Instru8:es de des,io condicional B Com sinal F VJ endere8ocal,o reater ((.1 /NP N1) NP W1) K # F VULE endere8ocal,o not less nor equal (idem)

F VJE endere8ocal,o reater or equal (.1 /NP N1) K # F VUL endere8ocal,o not less (idem) F VL endere8ocal,o less(.1 /NP N1) K % F VUJE endere8ocal,o not reater nor equal (idem) F VLE endere8ocal,o less or equal ((.1 /NP N1) NP W1) K % F VUJ endere8ocal,o not reater (idem) F VN endere8ocal,o o,erfloC N1 K % F V. endere8ocal,o si n .1 K % F VUN endere8ocal,o not o,erfloC N1 K # VU. endere8ocal,o not si n .1 K #

Instru8:es de des,io condicional B .em sinal: F VA endere8ocal,o a(o,e (C1 NP W1) K # F VUAE endere8ocal,o not (eloC nor equal (idem) F VAE endere8ocal,o a(o,e or equal C1 K # F VUA endere8ocal,o not (eloC (idem) F VA endere8ocal,o (eloC C1 K % F VUAE endere8ocal,o not a(o,e nor equal (idem) F VAE endere8ocal,o (eloC or equal (C1 NP W1) K % F VUA endere8ocal,o not a(o,e (idem)

Instru8:es de des,io condicional B Independente de sinal VC endere8ocal,o carrI C1 K % VE;VW endere8ocal,o equal ; Hero W1 K % V2;V2E endere8ocal,o paritI ; paritI e,en 21 K % VUC endere8ocal,o not carrI C1 K # VUE;VUW endere8ocal,o not equal ; not Hero W1 K # VU2;V2N endere8ocal,o not paritI ; paritI odd 21 K #

Instru8:es de manipula86o de strin s B Pe istradores impl!citos F RES.I !ndice para strin fonte F RES3I !ndice para strin destino F E. se mento do strin destino F RESC/ contador F AL;A/;EA/ ,alor de (usca (destino p; LN3., fonte p; .<N.) F 31 # (auto incremento p; 3I, .I) % (auto decremento p; 3I, .I) F W1 condi86o de tErmino para (usca e compara86o

Instru8:es 2rimiti,as B MN=. mo,e source strin to destination strin B CM2. compare source strin Cith destination strin B .CA. scan destination strin B LN3. load into AL;A/ from source strin B .<N. store AL;A/ into destination strin B IU. input from I;N port (in 3/) into destination B NU<. output from source to I;N port (in 3/)

Instru8:es 2rimiti,as B MN=. mo,e source strin to destination strin F MN=.A mo,e um (Ite de 3.:.I para E.:3I F MN=.@ mo,e uma pala,ra de 3.:.I para E.:3I F MN=.3 mo,e uma pala,ra dupla de 3.:.I para E.:3I B CM2. compare source strin Cith destination strin F CM2.A su(trai (Ite de mem(3.:.I) F mem(E.:3I) F CM2.@ su(trai pala,ra de mem(3.:.I) Fmem(E.:3I) F CM2.3 su(trai pala,ra dupla de mem(3.:.I) Fmem(E.:3I) F afeta fla s de forma id4ntica a CM2

Instru8:es 2rimiti,as B .CA. scan destination strin F .CA.A su(trai (Ite em AL F mem(E.:3I) F .CA.@ su(trai pala,ra em A/ F mem(E.:3I) F .CA.3 su(trai pala,ra dupla em EA/ F mem(E.:3I) F AL, A/ ou EA/ contEm ,alor sendo (uscado B LN3. load into AL;A/ from source strin F LN3.A carre a (Ite de mem(3.:.I) em AL F LN3.@ carre a pala,ra de mem(3.:.I) em A/ F LN3.@ carre a pala,ra dupla de mem(3.:.I) em EA/

Instru8:es 2rimiti,as B .<N. store AL;A/ into destination strin F .<N.A armaHena AL no (Ite de mem (E.:3I) F .<N.@ armaHena A/ na pala,ra de mem (E.:3I) F .<N.3 armaHena EA/ na pala,ra dupla de mem (E.:3I) B IU. input from I;N port (in 3/) into destination F IU.A mo,e (Ite da porta especificada em 3/ para E.:3I F IU.@ mo,e pala,ra da porta especificada em 3/ para E.:3I F IU.3 mo,e pala,ra dupla da porta especificada em 3/ para E.:3I

Instru8:es 2rimiti,as B NU<. output from source to I;N port (in 3/) F NU<.A mo,e (Ite de 3.:.I para porta de E;. especificada em 3/ F NU<.@ mo,e pala,ra de 3.:.I para porta especificada em 3/ F NU<.3 mo,e pala,ra dupla de 3.:E. para porta especificada em 3/

Instru8:es primiti,as %. PealiHa opera86o primiti,a (so(re um (Ite, uma pala,ra ou uma pala,ra dupla) &. AtualiHa re istradores de !ndice (.I e;ou 3I): &.% .e 31K#, ent6o incrementa re istradores de !ndice:

&.%.% de um, se opera86o for a (Ite &.%.& de dois, se opera86o for a pala,ra &.%.- de quatro, se a opera86o for a pala,ra dupla &.& .e 31K%, ent6o decrementa re istradores de !ndice: &.&.% de um, se opera86o for a (Ite &.&.& de dois, se opera86o for a pala,ra &.&.- de quatro, se a opera86o for a pala,ra dupla

Instru8:es de repeti86o B PE2 repeat B PE2E ; PE2W repeat Chile equal;repeat Chile Hero B PE2UE ; PE2UW repeat Chile not equal;repeat Chile not Hero %. .e EC/ K #, ent6o n6o e9ecuta a primiti,a e encerra a repeti86o &. .e EC/ a #, ent6o: &.% E9ecuta a opera86o primiti,a, atualiHando os fla s &.& 3ecrementa EC/, sem afetar os fla s &.- =olta para a repeti86o, de acordo com o prefi9o: &.-.% .e for PE2, repete incondicionalmente &.-.& .e for PE2E;W, somente repete se WK% &.-.- .e for PE2UE;UW, somente repete se

Instru8:es so(re fla s B .<C set carrI fla B CLC clear carrI fla B CMC complement carrI fla B .<3 set direction fla B CL3 clear direction fla B .<I set interrupt'ena(le fla B CLI clear interrupt'ena(le fla

Instru8:es condicionais so(re fla s

B .E<cc rm" .et AIte on condition (-"$) .e cc for ,erdadeiro, rm" rece(e % .e cc for falso, rm" rece(e # B CMN=cc destino, fonte Conditional Mo,e (2$) .e cc for ,erdadeiro, copia fonte para destino

Instru8:es especiais B GL< halt until interrupt or reset (suspende o processador) B @AI< Cait for <E.< pin ati,e B E.C escape to e9ternal processor B LNC0 loc5 (us durin ne9t instruction B UN2 no operation

Instru8:es de prefi9o B 2refi9o para operando de -& (its (sen6o E %$ (its) B 2refi9o para endere8o de -& (its (sen6o E %$ (its) B .EJ re se ' altera o re istrador de se mento padr6o

Ai(lio rafia B @e(er, Paul 1. ^1undamentos deArquitetura de Computadores_. .e unda Edi86o. Ed. .a ra'LuHHatto, &##% F Cap!tulo %&

Das könnte Ihnen auch gefallen