procura
Capítulo 1 Introdução
Autor: Andrew S. Tanembaum
1- Explique com suas palavras o significado de cada um dos seguintes termos:
R: Tradutor – A tradução na lógica de programação se dá através da substituição de cada instrução escrita sequencialmente em nível L1, o que nós seres humanos entendemos, para o nível de máquina, conhecido como L0, ou seja, de forma que o computador também entenda.
Interpretador – A interpretação consiste na entrada de uma instrução em nível L1 que o computador processa e executada após examinada e reconhecida pelo próprio interpretador. É também tratado como um dado de entrada.
Máquina virtual – É a ideia de se ter sua própria linha de códigos para programar. Sem a necessidade de níveis de programação tão complexos.
2- Qual a diferença entre interpretação e tradução?
R: Na interpretação, após o exame e a decodificação de cada instrução, ela é executada imediatamente.
Na tradução todo o programa L1 é antes convertido para um programa L0.
3- É razoável que um compilador gere saída diretamente para o nível da microarquitetura, em vez de fazê-lo para o nível ISA?
R: Sim, se não existir um programa armazenado para controlar a interpretação das instruções para o nível 2 (ISA).
4 – Você poderia imaginar um computador no qual o nível dos dispositivos e o nível da lógica digital não fossem os níveis mais baixos da hierarquia? Explique.
R:
5 – Considere um computador com interpretadores idênticos para os níveis 1, 2 e 3. Um interpretador gasta n instruções para buscar, decodificar executar uma instrução do nível imediatamente superior. Uma instrução do nível 1 gasta k nano segundos para ser executada. Quanto tempo é gasto na execução das instruções dos níveis 2, 3 e 4?
R:
6 – Considere um computador de vários níveis no qual todos os níveis sejam diferentes. Cada nível tem instruções que são m vezes mais poderosas que as do nível imediatamente abaixo; isto é,