Texto de pré-visualização
UNIVERSIDADE FEDERAL RURAL DO SEMIÁRIDO COMPONENTE CURRICULAR Código PEX1244 Nome Arquitetura e Organização de Computadores Nome Matrícula 1 Valor 60 pontos Faça um comparativo entre máquinas RISC e CISC respondendo os seguintes itens a Valor 20 pontos As instruções presentes nos programas são simples ou complexas b Valor 20 pontos O hardware do sistema é barato ou caro c Valor 20 pontos Quantos ciclos de máquina são necessários para interpretar uma instrução ATENÇÃO Para cada item justifique sua resposta 2 Valor 20 pontos Por que o nível ISA é considerado uma interface entre as camadas de software e hardware do computador Disserte sobre os aspectos de software e hardware que devem ser contemplados no projeto desse nível 3 Valor 20 pontos Descreva o algoritmo usado pelo Montador durante a geração da tabelas de símbolos 1 Valor 60 pontos Faça um comparativo entre máquinas RISC e CISC respondendo os seguintes itens a Valor 20 pontos As instruções presentes nos programas são simples ou complexas Podese dizer que em relação ao CISC Os processadores baseados na computação de conjunto de instruções complexas contêm uma microprogramação ou seja um conjunto de códigos de instruções que são gravados no processador permitindolhe receber as instruções dos programas e executálas utilizando as instruções contidas na sua microprogramação Seria como quebrar estas instruções já em baixo nível em diversas instruções mais próximas do hardware as instruções contidas no microcódigo do processador Já as máquinas SISC o programador já teria um pouco mais de trabalho pois como disporia apenas de instruções simples teria sempre que combinar várias instruções sempre que precisasse executar alguma tarefa mais complexa b Valor 20 pontos O hardware do sistema é barato ou caro Ao contrário dos complexos CISC os processadores RISC são capazes de executar apenas algumas poucas instruções simples Justamente por isso os chips baseados nesta arquitetura são mais simples e muito mais baratos c Valor 20 pontos Quantos ciclos de máquina são necessários para interpretar uma instrução São necessários as etapas fetch unidade de controle solicita instruções da memória principal que está armazenada em uma localização da memória indicada pelo contador do programa também conhecido como contador de instruções decodificar as instruções recebidas são decodificadas no registro de instrução Isso envolve quebrar o campo do operando em seus componentes com base no código de operação da instrução opcode execute envolve o opcode da instrução pois especifica a operação da CPU necessária O contador do programa indica a sequência de instruções do computador Essas instruções são organizadas no registrador de instruções e à medida que cada uma é executada ele incrementa o contador do programa para que a próxima instrução seja armazenada na memória Os circuitos apropriados são então ativados para executar a tarefa solicitada Assim que as instruções forem executadas ele reinicia o ciclo da máquina que inicia a etapa de busca 2 Valor 20 pontos Por que o nível ISA é considerado uma interface entre as camadas de software e hardware do computador Disserte sobre os aspectos de software e hardware que devem ser contemplados no projeto desse nível Porque ele é responsável por fazer a ligação entre a parte de hardware e a parte de software de um sistema computacional Podese dizer que os computadores foram divididos em diversas camadas para simplificar o desenvolvimento de aplicações e reduzir os custos de produção O entendimento dessas diferentes camadas propicia entender o funcionamento interno do computador Este nível está localizado entre o nível da microarquitetura e o nível de Sistema Operacional e foi desenvolvido antes de qualquer outro nível Projetos desse nível em relação ao hardware e software possuem a contemplação no modelo de memória que antes de ser executado o programa em linguagem de máquina é armazenado na memória principal memória dividida em células referenciadas por endereços consecutivos célula pode ter qualquer tamanho mas um byte é padrão atualmente os bytes são agrupados em palavras Nos registradores o nível ISA disponibiliza um conjunto de registradores visíveis ao programador registradores de propósito geral utilizados para armazenar resultados intermediários e variáveis locais agilizando o acesso a esses dados registradores de propósito específico PC contador de programa ponteiro que armazena o endereço da próxima instrução a ser executada Nós tipos de dados Dados Numéricos números inteiros 8 16 32 e 64 bits com sinal em complemento de dois ou sem sinal números decimais BCD 4 bits por dígito hardware não muito eficiente números em ponto flutuante 32 e 64 bits 3 Valor 20 pontos Descreva o algoritmo usado pelo Montador durante a geração da tabelas de símbolos Como o montador processa cada arquivo de um programa individualmente e isoladamente ele só conhece os endereços de labels locais O montador depende do ligador para combinar uma coleção de arquivos objetos e bibliotecas em um arquivo executável resolvendo os labels externos O montador auxilia o ligador fornecendo uma lista de labels e referências não resolvidas Às vezes os labels são usados antes de serem definidos Isso se chama forward reference Isso força o montador a traduzir o programa em dois passos primeiro ele acha todos os labels e então produz as instruções Na primeira passagem do montador cada linha de um arquivo de montagem é lida e quebrada em componentes chamados lexemas Esses pedaços são palavras individuais números e caracteres de pontuação Um exemplo a linha Ble t0 100 loop contém seis lexemas o opcode ble o registrador t0 uma vírgula o número 100 uma vírgula e o símbolo loop Se uma linha começa com um label o montador registra em uma tabela de símbolos o nome do label e o endereço de memória da palavra que a instrução ocupa O montador segue calculando quantas palavras de memória a instrução da linha atual vai ocupar Mantendo um registro do tamanho das instruções o montador pode determinar onde a próxima instrução vai Depois ele executa um cálculo similar para computar o espaço necessário para as declarações de dados Quando o montador chega no final de um arquivo a tabela de símbolos terá registrado o local de cada label definido no arquivo O montador usa a informação da tabela de símbolos em uma segunda passagem pelo arquivo que de fato produz o código de máquina Nessa segunda passagem o montador lê novamente cada linha do arquivo Se a linha contém uma instrução o montador combina a representação binárias dos opcodes e operandos em instruções legíveis Instruções e palavras de dados que referenciam um símbolo externo definido em outro arquivo não conseguem ser completamente montados pois o endereço do símbolo não está na tabela de dados
Texto de pré-visualização
UNIVERSIDADE FEDERAL RURAL DO SEMIÁRIDO COMPONENTE CURRICULAR Código PEX1244 Nome Arquitetura e Organização de Computadores Nome Matrícula 1 Valor 60 pontos Faça um comparativo entre máquinas RISC e CISC respondendo os seguintes itens a Valor 20 pontos As instruções presentes nos programas são simples ou complexas b Valor 20 pontos O hardware do sistema é barato ou caro c Valor 20 pontos Quantos ciclos de máquina são necessários para interpretar uma instrução ATENÇÃO Para cada item justifique sua resposta 2 Valor 20 pontos Por que o nível ISA é considerado uma interface entre as camadas de software e hardware do computador Disserte sobre os aspectos de software e hardware que devem ser contemplados no projeto desse nível 3 Valor 20 pontos Descreva o algoritmo usado pelo Montador durante a geração da tabelas de símbolos 1 Valor 60 pontos Faça um comparativo entre máquinas RISC e CISC respondendo os seguintes itens a Valor 20 pontos As instruções presentes nos programas são simples ou complexas Podese dizer que em relação ao CISC Os processadores baseados na computação de conjunto de instruções complexas contêm uma microprogramação ou seja um conjunto de códigos de instruções que são gravados no processador permitindolhe receber as instruções dos programas e executálas utilizando as instruções contidas na sua microprogramação Seria como quebrar estas instruções já em baixo nível em diversas instruções mais próximas do hardware as instruções contidas no microcódigo do processador Já as máquinas SISC o programador já teria um pouco mais de trabalho pois como disporia apenas de instruções simples teria sempre que combinar várias instruções sempre que precisasse executar alguma tarefa mais complexa b Valor 20 pontos O hardware do sistema é barato ou caro Ao contrário dos complexos CISC os processadores RISC são capazes de executar apenas algumas poucas instruções simples Justamente por isso os chips baseados nesta arquitetura são mais simples e muito mais baratos c Valor 20 pontos Quantos ciclos de máquina são necessários para interpretar uma instrução São necessários as etapas fetch unidade de controle solicita instruções da memória principal que está armazenada em uma localização da memória indicada pelo contador do programa também conhecido como contador de instruções decodificar as instruções recebidas são decodificadas no registro de instrução Isso envolve quebrar o campo do operando em seus componentes com base no código de operação da instrução opcode execute envolve o opcode da instrução pois especifica a operação da CPU necessária O contador do programa indica a sequência de instruções do computador Essas instruções são organizadas no registrador de instruções e à medida que cada uma é executada ele incrementa o contador do programa para que a próxima instrução seja armazenada na memória Os circuitos apropriados são então ativados para executar a tarefa solicitada Assim que as instruções forem executadas ele reinicia o ciclo da máquina que inicia a etapa de busca 2 Valor 20 pontos Por que o nível ISA é considerado uma interface entre as camadas de software e hardware do computador Disserte sobre os aspectos de software e hardware que devem ser contemplados no projeto desse nível Porque ele é responsável por fazer a ligação entre a parte de hardware e a parte de software de um sistema computacional Podese dizer que os computadores foram divididos em diversas camadas para simplificar o desenvolvimento de aplicações e reduzir os custos de produção O entendimento dessas diferentes camadas propicia entender o funcionamento interno do computador Este nível está localizado entre o nível da microarquitetura e o nível de Sistema Operacional e foi desenvolvido antes de qualquer outro nível Projetos desse nível em relação ao hardware e software possuem a contemplação no modelo de memória que antes de ser executado o programa em linguagem de máquina é armazenado na memória principal memória dividida em células referenciadas por endereços consecutivos célula pode ter qualquer tamanho mas um byte é padrão atualmente os bytes são agrupados em palavras Nos registradores o nível ISA disponibiliza um conjunto de registradores visíveis ao programador registradores de propósito geral utilizados para armazenar resultados intermediários e variáveis locais agilizando o acesso a esses dados registradores de propósito específico PC contador de programa ponteiro que armazena o endereço da próxima instrução a ser executada Nós tipos de dados Dados Numéricos números inteiros 8 16 32 e 64 bits com sinal em complemento de dois ou sem sinal números decimais BCD 4 bits por dígito hardware não muito eficiente números em ponto flutuante 32 e 64 bits 3 Valor 20 pontos Descreva o algoritmo usado pelo Montador durante a geração da tabelas de símbolos Como o montador processa cada arquivo de um programa individualmente e isoladamente ele só conhece os endereços de labels locais O montador depende do ligador para combinar uma coleção de arquivos objetos e bibliotecas em um arquivo executável resolvendo os labels externos O montador auxilia o ligador fornecendo uma lista de labels e referências não resolvidas Às vezes os labels são usados antes de serem definidos Isso se chama forward reference Isso força o montador a traduzir o programa em dois passos primeiro ele acha todos os labels e então produz as instruções Na primeira passagem do montador cada linha de um arquivo de montagem é lida e quebrada em componentes chamados lexemas Esses pedaços são palavras individuais números e caracteres de pontuação Um exemplo a linha Ble t0 100 loop contém seis lexemas o opcode ble o registrador t0 uma vírgula o número 100 uma vírgula e o símbolo loop Se uma linha começa com um label o montador registra em uma tabela de símbolos o nome do label e o endereço de memória da palavra que a instrução ocupa O montador segue calculando quantas palavras de memória a instrução da linha atual vai ocupar Mantendo um registro do tamanho das instruções o montador pode determinar onde a próxima instrução vai Depois ele executa um cálculo similar para computar o espaço necessário para as declarações de dados Quando o montador chega no final de um arquivo a tabela de símbolos terá registrado o local de cada label definido no arquivo O montador usa a informação da tabela de símbolos em uma segunda passagem pelo arquivo que de fato produz o código de máquina Nessa segunda passagem o montador lê novamente cada linha do arquivo Se a linha contém uma instrução o montador combina a representação binárias dos opcodes e operandos em instruções legíveis Instruções e palavras de dados que referenciam um símbolo externo definido em outro arquivo não conseguem ser completamente montados pois o endereço do símbolo não está na tabela de dados