Você está na página 1de 2

Lista de Exerccios 5 31/10/2011 Nvel ISA 1 Explique a afirmao. No nvel ISA est definida a interface entre os compiladores e o hardware.

e. 2 Quais caractersticas que uma mquina de determinada empresa precisa ter em relao ao nvel ISA? 3 O projetista de compiladores precisa conhecer o nvel ISA? Explique. 4 Excetuando a Intel, outras empresas utilizam um documento formal permitindo que diferentes implementadores construam mquinas distintas. O que est contido neste documento formal? Explica cada item. 5 Quais os modos de execuo existentes no nvel ISA? 6 Quais as diferenas de registradores de propsito geral e especfico? 7 As instrues podem ter tamanhos diversos (complica o projeto, mas tem-se economia de memria) ou podem ser todas de tamanhos iguais (simplifica o projeto, mas desperdia espao). Explique esta relao. 8 Quais as diferenas entre: a) Endereamento imediato e indireto. b) Endereamento via registrador e indireto via registrador. c) Endereamento indexado e base indexado. Linguagem de Montagem 1 Cite as vantagens e desvantagens do uso da linguagem de montagem. 2 Descreva exemplos de aplicaes de sistemas que utilizam linguagem de montagem. 3 Descreva e explique cada campo do formato de uma linguagem de montagem. 4 Qual a diferena entre instruo e pseudoinstruo? 5 O que uma macro? Em que circunstncias se usar uma? 6 Explique o problema da referncia futura. 7 Como voc faria o processo de montagem? Uma ou duas passagens? Explique a que voc achar mais interessante. 8 Para certo programa, 2% do cdigo responsvel por 50% do tempo de execuo. Compare tempo de programao e tempo de execuo para as trs estratgias seguintes. Considere que levaria 100 homens-ms para escrev-los em C, e que o cdigo de montagem 10 vezes mais lento para escrever e quatro vezes mais eficiente.

a. Todo o programa em C. b. Todo o programa em assembler. c. Primeiro todo em C e, ento, os 2% fundamentais reescritos em assembler. 9 O que ILC? Qual a sua utilidade? 10 Analisando o cdigo inicia-se com 100. Rtulo Opcode Transferncia: MOV MOV MOV ADD Somas: ADD Multiplicao: IMUL IMUL abaixo, ajuste o ILC, sabendo que o ILC do primeiro rtulo Operandos EAX, K EBX, L ECX, M EAX, EAX EBX, ECX EAX, EBX ECX, EBX Comentrios EAX=K EBX=L ECX=M EAX=K+K EBX=L+M EAX=(K+K)*(L+M) ECX=M*(L+M) Comprimento ILC 7 8 6 4 6 8 5

11 Quais tabelas internas deve se criar ao executar o passo 1, caso a execuo seja de duas passagens? 12 Quais as formas de se organizar a tabela de smbolos? Explique cada e, a que seria mais vantajosa. 13 Como se faz a traduo completa de um programa-fonte para o programa binrio executvel? 14 Quais as funes do Ligador/Linker? 15 Simule a operao do ligador levando os mdulos abaixo para a memria principal. Faa a imagem aps a ligao e relocao. Considere a locao de um espao para vetores de interrupo e comunicao com o sistema operacional. P1
400 300 600

P2
300

P3

CALL P2

500 CALL P3 400

200 100 0

MOV EAX, I

300 100

MOV EBX, J

200 100

ADD EAX, EBX

BRANCH TO 200

BRANCH TO 300

BRANCH TO 200

16 Cite um exemplo de ligao dinmica utilizada no Windows e seu funcionamento. 17 Qual a diferena de ligao implcita e ligao explcita?

Você também pode gostar