Você está na página 1de 4

Noesquea:Esseexemplosssoumasubdivisodosassuntosdaprova1. Questo1) a) ConvertaocdigoemCseguinteparaocdigoassemblyusandooconjuntode instruesMIPS(conjuntodeinstruesdoMIPS).Comenteseucdigo. #include <stdio.

o.h> # Suponha que os valores das variveis # w, v, x, y e z estejam armazenados em $s2, # $s3, $s4, $5, $6 e que o endereo base da # matriz A esteja armazenada em $s7 main() { int v,w,x,y,z; int A[100]; A[99] = v + x; A[80] = A[10] z; A[10] = w - x; x = y + z + w; } b) Convertaocdigoassemblyobtidoema)paraocdigodemquinausandooconjunto deinstruesdoMIPS.Comenteseucdigo. Questo2) a) ConvertaocdigoemCseguinteparaocdigoassemblyusandooconjuntode instruesMIPS(conjuntodeinstruesdoMIPS).Comenteseucdigo. #include <stdio.h> # Suponha que os valores das variveis # w, v, x, y e z estejam armazenados em $s2, # $s3, $s4, $5, $6 e que o endereo base da # matriz A esteja armazenada em $s7 main() { int v,w,x,y,z; int A[100]; z = A[10] + A[0] + A[99]; x = z * A[10]; A[80] = A[10] >> z; A[11] = w << y + x; z = x + y v + y; } b) Convertaocdigoassemblyobtidoema)paraocdigodemquinausandooconjunto deinstruesdoMIPS.Comenteseucdigo. Questo3) a) ConvertaocdigoemCseguinteparaocdigoassemblyusandooconjuntode instruesMIPS(conjuntodeinstruesdoMIPS).Comenteseucdigo. #include <stdio.h> # Suponha que os valores das variveis # w, v, x, y e z estejam armazenados em $s2, # $s3, $s4, $5, $6 e que o endereo base da # matriz A esteja armazenada em $s7 main() { int v,w,x,y,z; int A[100]; if (x > y) { A[x] = A[y] + z; x++;
y = x + y; } }

b) Convertaocdigoassemblyobtidoema)paraocdigodemquinausandooconjunto deinstruesdoMIPS.Comenteseucdigo. Questo4) a) ConvertaocdigoemCseguinteparaocdigoassemblyusandooconjuntode instruesMIPS(conjuntodeinstruesdoMIPS).Comenteseucdigo. #include <stdio.h> # Suponha que os valores das variveis # w, v, x, y e z estejam armazenados em $s2, # $s3, $s4, $5, $6 e que o endereo base da # matriz A esteja armazenada em $s7 main() { int v,w,x,y,z; int A[100]; while ( z > x) { A[z] = A[10] + 19; z = z+ 2; if ( z > y) { y--; } } } b) Convertaocdigoassemblyobtidoema)paraocdigodemquinausandooconjunto deinstruesdoMIPS.Comenteseucdigo. Questo5) a) ConvertaocdigoemCseguinteparaocdigoassemblyusandooconjuntode instruesMIPS(conjuntodeinstruesdoMIPS).Comenteseucdigo. #include <stdio.h> # Suponha que os valores das variveis # w, v, x, y e z estejam armazenados em $s2, # $s3, $s4, $5, $6, que o endereo base da # matriz A esteja armazenada em $s7 e que # o valor incio de $sp 8000 0000h int func() (int a, int b ) { int c; c = 2 + a + b; return (c); } main() { int v,w,x,y,z; int A[100]; w = 2; x = 10 z = 0; while ( z < x) { z = func(x,w); } } b) Convertaocdigoassemblyobtidoema)paraocdigodemquinausandooconjunto deinstruesdoMIPS.Comenteseucdigo. c) Executeocdigoedetermineparacadainstruoosvaloresde$spe$ra.

Questo6) a) ConvertaocdigoemCseguinteparaocdigoassemblyusandooconjuntode instruesMIPS(conjuntodeinstruesdoMIPS).Comenteseucdigo. #include <stdio.h> # Suponha que os valores das variveis # w, v, x, y e z estejam armazenados em $s2, # $s3, $s4, $5, $6, que o endereo base da # matriz A esteja armazenada em $s7 e que # o valor incio de $sp 8000 0000h int func() (int a, int b ) { int c; c = a + b - 20; return (c); } main() { int v,w,x,y,z; int A[4] = {0, 10, 3, 4}; v = 0; w = 21 z = 0; while ( z < A[v]) { z = func(A[v],w); v++; } b) Convertaocdigoassemblyobtidoema)paraocdigodemquinausandooconjunto deinstruesdoMIPS.Comenteseucdigo. c) Executeocdigoedetermineparacadainstruoosvaloresde$spe$ra. Questo7)Descreveaarquiteturabsicadeumprocessador. Questo8)Desenheedescreveociclodeinstruosimplificado. Questo9)Descreveascaractersticasdaarquiteturaprogramaarmazenada. Questo10)Descreveossegmentosdamemria. Questo11)Descreveocomportamentodapilha.

Questo12) ConvertaocdigoemCseguinteparaocdigoassemblyusandooconjuntodeinstrues MIPS(conjuntodeinstruesdoMIPS).Comenteseucdigo.


# Suponha que os valores das variveis # w, v, x, y e z estejam armazenados em $s2, # $s3, $s4, $5, $6, que o endereo base da # matriz A esteja armazenada em $s.

intfunc2(intx){ inty; y=x*x; return(y); } intfunc1()(inta,intb){ intc; c=func2(a)+b; return(c); } main(){ intv,w,x,y,z; intA[100]; w=2; x=10 z=0; while(z<x){ z=func(x,w); } } Questo13)DescreveasdiferenasentraasarquiteturasdetipoRISCeCISC.Quaissoas vantagensedesvantagens? Questo14)Descreveasdiferenasentramicrocontroladoresemicroprocessadores.Quais soasvantagensedesvantagens?

Você também pode gostar