Escolar Documentos
Profissional Documentos
Cultura Documentos
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
200 100 0
MOV EAX, I
300 100
MOV EBX, J
200 100
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?