1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.6. Tipos de Instruções
|
|
- Simone Gama Laranjeira
- 7 Há anos
- Visualizações:
Transcrição
1 1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.6. Tipos de Instruções As instruções podem ser classificadas de acordo com o número de endereços que elas utilizam. Não se deve esquecer que um conjunto de registradores numerados da CPU constitui, de fato, uma memória de alta velocidade e define um espaço de endereçamento. Uma instrução que soma o registrador 1 ao registrador 2 deve ser classificada como tendo dois endereços porque a instrução deve especificar quais os registradores que serão adicionados, do mesmo modo que uma instrução que soma duas palavras de memória deve especificar as palavras. Instruções que especificam um, dois e três endereços são comuns. Em muitas máquinas que fazem aritmética com um endereço apenas, um registrador especial denominado acumulador prove um dos operandos. Nestas máquinas, o endereço é geralmente o endereço m de uma palavra de memória, no qual se localiza o operando. A instrução para adição com o conteúdo instruções de dois endereços de soma utiliza um dos endereços como fonte e o outro como destino. A fonte é então somada ao destino: destino := destino + fonte As instruções de três endereços especificam duas fontes e um destino. As duas fontes são adicionadas e armazenadas no destino. As instruções de nível convencional de máquina podem ser divididas aproximadamente em dois grupos: instruções de propósito geral, e; instruções de propósito especial. As instruções de propósito geral tem vasta aplicação. Por exemplo, a capacidade de mover dados pela máquina é algo necessário em quase toda aplicação. As instruções de propósito especiais têm aplicações bem restritas. Por exemplo, a instrução MOVEP do pega o conteúdo de um registrador D e o armazena na memória em bytes alternados, com um byte não usado entre os bytes de dados. Poucas aplicações podem fazer uso efetivo desta instrução, e nenhum compilador irá gerá-la. (Ela foi incluída para simplificar a comunicação com as antigas pastilhas periféricas de 8 bits.) Nosso foco, portanto, será os principais grupos de instruções de propósito geral Instruções de Transferência de Dados A cópia de dados de um lugar para outro é a mais fundamental de todas as operações. Por cópia entendemos a criação de um novo objeto, com o padrão de bits idêntico ao do original. O uso da palavra "transferência" é algo diferente de seu uso normal em português. Quando dizemos que um paciente foi transferido da UTI para o quarto, não significa que uma cópia idêntica do paciente foi criada no quarto e o original permaneceu na UTI. Disciplina: Projeto Lógico de Computadores (5º/6º Sem ). Livro: Andrew S. Tanenbaum Página 1 de 7
2 Quando dizemos que o conteúdo da posição de memória 2000 foi transferido para algum registrador, isto quase significa que uma cópia idêntica foi criada lá e que o original permanece intacto na posição Instruções de transferência de dados seriam melhor chamadas de instruções de "duplicação de dados", mas o termo "transferência de dados" já está oficializado. Dados podem estar armazenados em vários lugares, diferindo no modo como as palavras são acessadas. Três lugares comuns são: Uma palavra de memória específica; Um registrador, ou; A pilha. A pilha é mantida tanto em registradores especiais como na memória, mas a maneira de acessa-la é diferente dos acessos-padrão a memória. Um acesso à memória requer um endereço, enquanto o empilhar de um item não explicita endereço na pilha. Sabemos que é altamente desejável ter instruções de máquina tão curtas quanta possível para economizar memória e tempo de CPU. O máximo em redução de comprimentos de endereço seria ter instruções com absolutamente nenhum endereço, apenas códigos de operação. Esta situação, bastante surpreendente, é possível. É conseguida organizando a máquina em torno de uma estrutura de dados denominada pilha. Uma pilha consiste em itens de dados (palavras, caracteres, bits) armazenados em ordem consecutiva na memória. O primeiro item colocado na pilha é denominado fundo da pilha. Associado a cada pilha há um registrador ou palavra de memória que contém o endereço do topo da pilha. É denominado apontador da pilha. Utilizar pilhas em aritmética é muito diferente de utilizar pilhas para armazenar variáveis locais (ambos os casos podem, naturalmente, ser combinados). A Fig. 1.8 ilustra a operação de uma pilha. Na Fig. 1.8(a) dois itens já se encontram na pilha. O fundo da pilha localiza-se na posição 1000 da memória e o topo da pilha localiza-se na posição 1001 da memória. O apontador da pilha contém o endereço do item no topo da pilha, ou seja, 1001; isto significa que ele "aponta" para o topo da pilha. Na Fig. 1.8(b), 6 foi colocado na pilha e o apontador da pilha indica 1002 como o novo topo da pilha. Na Fig. 1.8(c), 75 foi colocado na pilha e o apontador da pilha aumentado para Na Fig. 1.8(d), 75 foi retirado da pilha. Fig. 1.8 Funcionamento de uma pilha. Disciplina: Projeto Lógico de Computadores (5º/6º Sem ). Livro: Andrew S. Tanenbaum Página 2 de 7
3 Os computadores orientados para pilha possuem uma instrução para inserir o conteúdo de uma posição de memória ou de um registrador na pilha. Tal instrução deve tanto incrementar o apontador de pilha quanta copiar o item. Similarmente, uma instrução que copia o conteúdo do topo da pilha para um registrador ou posição de memória deve fazer a nova cópia para o lugar escolhido e decrementar o apontador da pilha. Alguns computadores tem suas pilhas de cima para baixo, com os novos itens sendo inseridos consecutivamente em posições de memória de endereços de menor valor em vez de consecutivamente em posições de endereços superiores, este segundo como na Fig As instruções sem endereço são utilizadas conjuntamente com uma pilha. Esta forma de endereçamento específica que os dois operandos devem ser retirados da pilha, um após o outro, a operação executada (ex., multiplicação ou AND) e o resultado recolocado na pilha. A Fig. 1.9(a) mostra uma pilha que contém quatro itens. Uma instrução de multiplicação retira o 5 e o 6 da pilha, faz o apontador de pilha apontar temporariamente para 1001 e então recoloca o resultado, 30, de volta na pilha, como mostra a Fig. 1.9(b). Se uma adição for depois executada, o resultado será como mostra a Fig. 1.9(c). Fig. 1.9 Utilização de uma pilha em aritmética. (a) Configuração inicial. (b) Após uma multiplicação, (c) Após uma adição. Instruções de transferência de dados requerem que ambos, fonte (i.e., o original) e destino da informação (i.e., onde a cópia será colocada), sejam especificados quer explícita ou implicitamente. Instruções da transferência de dados precisam indicar, de algum modo, a quantidade de dados a ser transferida. Existem instruções para mover quantidades de dados desde 1 bit até a memória inteira. Em máquinas com palavras de tamanho fixo, o número de palavras a serem transferidas é usualmente especificado pela instrução - por exemplo, instruções separadas para mover uma palavra e mover meia palavra. Máquinas com palavra de tamanho variável frequentemente tem instruções que apenas especificam os endereços de fonte e destino mas não à quantidade. A transferência continua até que a marca do fim de dados é encontrada nos próprios dados. As CPUs Intel tem instruções MOVE muito limitadas, mas existem muitas delas, de tal maneira que são também possíveis transferências entre dois lugares quaisquer. Disciplina: Projeto Lógico de Computadores (5º/6º Sem ). Livro: Andrew S. Tanenbaum Página 3 de 7
4 Operações Diádicas Curso de Ciências da Computação Operações diádicas são aquelas que combinam dois operandos para produzir um resultado. Existe basicamente dois grupos destas instruções: Para fazer adição e subtração de inteiros, e; O grupo dos operadores booleanos. Três instruções presentes em muitas máquinas são AND, OR e XOR. Seus usos em operações diádicas são: Em máquinas com palavra de tamanho fixo, AND calcula o produto booleano bit a bit de dois argumentos de uma palavra, tendo como resultado também uma palavra. Outro uso do AND é a extração de bits de palavras. Para extrair o caractere, é feito um AND da palavra contendo o caractere e uma constante, chamada máscara. O resultado dessa operação é que os bits indesejáveis são todos mudados para zeros, isto é, mascarados. Um uso importante para OR é empacotar bits em uma palavra, sendo empacotar o inverso de extrair. A operação AND tende a remover os números 1, porque nunca há mais números 1 no resultado que em qualquer dos operandos. A operação OR tende a inserir números 1, porque há sempre no mínimo tantos números 1 no resultado quanto no operando com mais números 1. A operação XOR, por outro lado, é simétrica, tendendo, em média, a nem inserir nem remover números 1. Quase todas as máquinas de Nível 2 (Nível de Máquina Convencional) tem instruções para fazer adição e subtração de inteiros. Exceto para os microcomputadores de 8 bits, as instruções de multiplicação e divisão de inteiros são também comuns. Praticamente, todos os computadores, portanto, são equipados com instruções aritméticas Operações Monádicas As operações monádicas tem 1 operando e produzem 1 resultado. Como são especificados menos endereços que as diádicas, as instruções são bem mais curtas. Instruções para deslocar e rodar o conteúdo de uma palavra ou byte são realmente. Deslocamentos são operações nas quais os bits são movidos para a esquerda ou direita, perdendo os bits deslocados para fora da palavra. Rotações são deslocamentos nos quais os bits jogados fora da palavra reaparecem do outro lado. A diferença entre um deslocamento e uma rotação é ilustrada abaixo A A deslocado 2 bits para a direita A rodado 2 bits para a direita Disciplina: Projeto Lógico de Computadores (5º/6º Sem ). Livro: Andrew S. Tanenbaum Página 4 de 7
5 FLUXO DE CONTROLE Curso de Ciências da Computação O fluxo de controle se refere à sequência na qual as instruções são executadas. Geralmente, as instruções executadas sucessivamente são buscadas de posições de memória consecutivas. Chamadas de procedimento causam alterações no fluxo de controle, parando o procedimento atual e iniciando o procedimento chamado. Co-rotinas são parecidas com procedimentos e causam alterações similares no fluxo de controle. Armadilhas (traps) e Interrupções também alteram o fluxo de controle quando ocorrem condições especiais. Vejamos: Fluxo de Controle Sequencial e Desvios A maioria das instruções não altera o fluxo de controle. Após uma instrução ser executada, a seguinte na memória é buscada e executada. Após cada instrução, o contador de programa é incrementado do número de posições de memória da instrução. Se observado durante um intervalo de tempo longo comparado com o tempo de instrução médio, o contador de programa é aproximadamente uma função linear do tempo, aumentando do comprimento médio de instruções por tempo médio de instrução. Expresso de outra forma, a ordem dinâmica na qual o processador realmente executa as instruções é a mesma ordem na qual elas aparecem na Iistagem do programa. Se um programa contém desvios, esta relação simples entre a ordem em que as instruções aparecem na memória e a ordem em que elas são executadas não é mais verdadeira. Quando desvios estão presentes, o contador de programa não é mais uma função monotonamente crescente no tempo. Como consequência, torna-se difícil visualizar a sequência de execução de instruções da Iistagem do programa. Quando os programadores tem problemas em manter-se a par da sequência na qual o processador irá executar as instruções, eles estão propensos a cometer erros. Esta observação levou Dijkstra (1968) a escrever um artigo nessa época polêmico intitulado "GO TO Statement Considered Harmful", no qual, sugere evitar comandos GO TO. Este artigo deu origem à revolução da programação estruturada, sendo um de seus lemas a substituição de comandos GO TO por formas mais estruturadas de controle de fluxo, tais como loops WHILE. Naturalmente, esses programas são compilados para programas de nível 2 que podem conter muitos desvios, pois a implementação de IF, WHILE e outras estruturas de controle de alto nível requerem desvios por toda parte Procedimentos A técnica mais importante para estruturar programas é o procedimento. De certo ponto de vista, uma chamada de procedimento altera o fluxo de controle tal como um desvio faz, mas, ao contrário do desvio, quando terminar sua tarefa ela retorna o controle para o comando ou instrução seguinte a chamada. Entretanto, de outro ponto de vista, o corpo de um procedimento pode ser visto como a definição de uma nova instrução em um nível superior. Deste ponto de vista, uma chamada de procedimento pode ser considerada uma única instrução, mesmo que o procedimento seja muito complicado. Para entender um trecho do programa que contenha uma chamada de procedimento, basta saber o que ele faz, não como ele faz. Disciplina: Projeto Lógico de Computadores (5º/6º Sem ). Livro: Andrew S. Tanenbaum Página 5 de 7
6 Co-rotinas Na sequência comum de chamada, há uma clara distinção entre o procedimento que chama e o procedimento chamado. Considere um procedimento A que chama um procedimento B. O procedimento B é executado por um tempo e então retorna para A. A primeira vista você poderia considerar essa situação simétrica, porque nem A nem B são programas principais, ambos são procedimentos (o procedimento A pode ter sido chamado pelo programa principal, mas isto é irrelevante). Além disto, inicialmente o controle é transferido de A para B a chamada - e mais tarde o controle é transferido de B para A - o retorno. A assimetría vem do fato de que quando o controle passa de A para B, o procedimento B começa do início; quando B retorna para A, a execução não começa no início de A, mas no comando seguinte a chamada. Se A é executado por um tempo e chama B de novo, a execução começa no início de B, e não no comando seguinte ao retorno anterior. Se durante a execução A chama B várias vezes, B começa do início todas às vezes, enquanto A nunca começa do início de novo Traps (Armadilhas) Uma armadilha (trap) é um tipo de chamada automática de procedimento iniciada por alguma condição causada pelo programa, usualmente uma condição importante mas rara. Um bom exemplo é o transbordo (overflow). Em muitos computadores, se o resultado de uma operação aritmética excede o maior número que pode ser representado, ocorre um trap, significando que o fluxo de controle é transferido para alguma posição fixa na memória em vez de continuar sequencialmente. Nesta posição fixa há um salto para um procedimento chamado rotina de tratamento de trap, que executa alguma ação apropriada, tal como a impressão de uma mensagem de erro. Se o resultado de uma operação está dentro do intervalo permitido, não ocorre nenhum trap Interrupções Interrupções são modificações no fluxo de controle causadas não por uma execução de programa mas por outra coisa, usualmente relacionada a E/S. Por exemplo, um programa pode instruir ao disco para prover uma interrupção tão logo à transferência tenha terminado. Como uma armadilha (trap), a interrupção para o programa em execução e transfere o controle para o tratamento de interrupção, que executa alguma ação apropriada. Ao terminar, a rotina de tratamento de interrupção retorna o controle para o programa interrompido. É preciso reativar o processo interrompido exatamente no mesmo estado em que ele estava quando ocorreu a interrupção, o que significa restaurar todos os registradores internos aos seus estados anteriores a interrupção. A diferença essencial entre armadilhas e interrupções é que as armadilhas (traps) são síncronas com o programa e as interrupções são assíncronas. Se o programa é reexecutado um milhão de vezes com a mesma entrada, as armadilhas irão ocorrer no mesmo lugar a cada vez, mas as interrupções podem variar, dependendo, por exemplo, de quando precisamente uma pessoa no terminal pressiona a tecla de retorno do carro. Disciplina: Projeto Lógico de Computadores (5º/6º Sem ). Livro: Andrew S. Tanenbaum Página 6 de 7
7 1.7. RESUMO O nível de máquina convencional é o que muitas pessoas tem como "linguagem de máquina". Neste nível a máquina tem uma memória orientada por byte ou por palavra desde dezenas de quilo bytes a dezenas de megabytes, e instruções como MOVE, ADD e JUMP. A maioria dos computadores modernos possui memória que é organizada como uma sequência de bytes, com 2 ou 4 bytes agrupados em palavras. Estão também presentes normalmente entre 8 e 32 registradores, cada um deles contendo uma palavra. Muitos computadores vem em famílias, tais como as famílias Intel. As instruções tem geralmente um ou dois operandos que são endereçados usando os modos imediato, direto, indireto, indexado ou outros modos de endereçamento. Algumas máquinas tem muitos modos de endereçamento. Geralmente, são disponíveis instruções para transferência de dados, operações diádicas e monádicas, incluindo operações aritméticas e booleanas, desvios, chamadas de procedimento, loops e algumas vezes para E/S. As instruções tipicamente copiam uma palavra de memória para um registrador (ou vice-versa), somam, subtraem, multiplicam ou dividem os conteúdos de dois registradores ou os conteúdos de um registrador e de uma posição de memória, ou comparam dois itens localizados em registradores ou na memória. Não é comum um computador ter mais de 100 instruções em seu repertório. O fluxo de controle no nível 2 é conseguido utilizando diversas primitivas, incluindo desvios, chamadas de procedimento, chamadas de co-rotinas, traps e interrupções. Os desvios são usados para terminar uma sequência de instruções e iniciar uma nova. Os procedimentos são utilizados como um mecanismo de abstração para permitir que uma parte do programa seja isolada como uma unidade e chamada de diversos lugares. Co-rotinas permitem que duas threads de controle executem simultaneamente. Traps são utilizadas para sinalizar situações excepcionais, tais como transbordo (overflow) aritmético. Finalmente, as interrupções permitem E/S acontecer em paralelo com a computação principal, com a CPU recebendo um sinal tão logo a E/S tenha sido completada. Disciplina: Projeto Lógico de Computadores (5º/6º Sem ). Livro: Andrew S. Tanenbaum Página 7 de 7
Nível da Arquitetura do Conjunto das Instruções
Fluxo Seqüencial de Controle e Desvios (1) Nível da Arquitetura do Conjunto das Instruções (Aula 13) Fluxo de Controle Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Fluxo
Leia maisUniversidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.
Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização e Arquitetura Básicas
Leia maisCONJUNTO DE INSTRUÇÕES
CONJUNTO DE INSTRUÇÕES 1 CARACTERÍSTICAS DE INSTRUÇÕES DE MÁQUINA Quando um programador usa uma linguagem de alto-nível, como C, muito pouco da arquitetura da máquina é visível. O usuário que deseja programar
Leia maisDisciplina: Arquitetura de Computadores
Disciplina: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof a. Carla Katarina de Monteiro Marques UERN Introdução Responsável por: Processamento e execução de programas armazenados na
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Conjunto de Instruções Slide 1 Sumário Características de Instruções de Máquina Tipos de Operandos Tipos de Operações Linguagem de Montagem Slide 2 Características
Leia maisArquitetura e Organização de Computadores
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Conjunto de Instruções Prof. Sílvio Fernandes
Leia maisORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES. Prof. Juliana Santiago Teixeira
ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES Prof. Juliana Santiago Teixeira julianasteixeira@hotmail.com INTRODUÇÃO INTRODUÇÃO O processador é o componente vital do sistema de computação, responsável
Leia mais2. A influência do tamanho da palavra
1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante a execução de
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Conjunto de Instruções Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes - UFERSA
Leia mais2. A influência do tamanho da palavra
PROCESSAMENTO 1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante
Leia maisNível do Conjunto de Instruções Prof. Edson Pedro Ferlin
1 Definições Nível ISA (Instruction Set Architecture). Está posicionado entre o nível da microarquitetura e o nível do sistema operacional. É a interface entre o software e o hardware. Nesse nível está
Leia maisCONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)
CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP) 1 LINGUAGENS Conhecida pelo PROCESSADOR Conhecida pelo Usuário COMPILADOR LINGUAGEM DE ALTO NÍVEL LINGUAGEM ASSEMBLY 2 INSTRUÇÕES EM ASSEMBLY Para programar
Leia maisUnidade Central de Processamento 2. Registradores
Unidade Central de Processamento 2 Registradores Conceitos Fundamentais Arquitetura da CPU Unidade de Controle Registradores Barramento interno Unidade lógica e Aritmética Registradores Conjunto de unidades
Leia maisProf. Leonardo Augusto Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 2 Estrutura de um processador Prof. Leonardo Augusto Casillo Arquitetura de Von Neumann: Conceito de programa armazenado; Dados
Leia maisAula 16: UCP: Conceitos Básicos e Componentes
Aula 16: UCP: Conceitos Básicos e Componentes Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Conceitos Básicos e Componentes FAC 1 / 34
Leia maisCONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)
CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP) 1 LINGUAGENS Constituída de seqüência de zeros (0) e uns (1) Cada instrução em ASSEMBLY constitui-se em um mnemônico (uma forma fácil de se lembra) de uma
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Msc. Tiago Alves de Oliveira Objetivos Conhecer o processador Compreender os registradores
Leia mais25/8/2010. Praticamente todas as arquiteturas de computadores fornecem mais de um modo de
Arquitetura de Computadores Conjuntos de Instruções: modos de endereçamento e formatos Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Endereçamento Normalmente, os campos de endereço são
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Dr. Daniel Caetano 2012-2 Objetivos Conhecer o processador Compreender os registradores
Leia maisSolução Lista de Exercícios Processadores
Solução Lista de Exercícios Processadores Questão 1 A ULA é o dispositivo da CPU que executa operações tais como : Adição Subtração Multiplicação Divisão Incremento Decremento Operação lógica AND Operação
Leia maisAULA 03: FUNCIONAMENTO DE UM COMPUTADOR
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?
Leia maisSSC510 Arquitetura de Computadores 1ª AULA
SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura
Leia maisTodo processador é constituído de circuitos capazes de realizar algumas operações primitivas:
Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas: Somar e subtrair Mover um dado de um local de armazenamento para outro Transferir um dado para um dispositivo
Leia maisArquitetura de Computadores. Ciclo de Busca e Execução
Arquitetura de Computadores Ciclo de Busca e Execução Ciclo de Busca e Execução Início Buscar a próxima instrução Interpretar a instrução Executar a instrução Término Funções realizadas pela UCP Funções
Leia maisMicroprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios
Microprocessadores I ELE 1078 Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios Grupos de Instruções do 8085 As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência da
Leia maisWilliam Stallings Arquitetura e Organização de Computadores 8 a Edição
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 10 Conjuntos de instruções: Características e funções slide 1 O que é um conjunto de instruções? A coleção completa de instruções
Leia maisUnidade de Controle. UC - Introdução
Unidade de Controle Prof. Alexandre Beletti (Cap. 3 Weber, Cap.8 Monteiro, Cap. 10,11 Stallings) UC - Introdução Para gerenciar o fluxo interno de dados e o instante em que ocorrem as transferências entre
Leia maisNotas de Aula Guilherme Sipahi Arquitetura de Computadores
Notas de Aula Guilherme Sipahi Arquitetura de Computadores Endereçamento O Campo de endereço em uma instrução é pequeno. Para referenciar uma faixa de endereços maior na memória principal, ou em alguns
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Dr. Daniel Caetano 2012-1 Objetivos Conhecer o processador Compreender os registradores
Leia maisMODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES
MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES Alexandre Lucas Chichosz Discente do curso Engenharia da Computação Calwann de Souza Freire Discente do curso Engenharia da Computação Myke Albuquerque Pinto
Leia maisMODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES
MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES Alexandre Lucas Chichosz Graduando em Engenharia da Computação, Faculdades Integradas de Três Lagoas FITL/AEMS Calwann de Souza Freire Graduando em Engenharia
Leia maisOrganização de Sistemas Computacionais Processadores: Organização da CPU
Universidade Paulista UNIP Curso: Ciências da Computação Turma: CCP30 Turno: Noturno Disciplina: Arquitetura de Computadores Professor: Ricardo Loiola Alunos: Thiago Gomes dos Santos Matrícula: C63873-0
Leia maisInstruções. Maicon A. Sartin
Instruções Maicon A. Sartin SUMÁRIO Introdução Instruções Formatos de instruções Conjuntos de instruções Execução de instruções Introdução a Linguagem de Montagem Introdução a Linguagem de Montagem Níveis
Leia maisRegistradores. Os processadores possuem espaços específicos onde são guardados valores, os chamados registradores.
Os processadores possuem espaços específicos onde são guardados valores, os chamados registradores. Esses espaços são parecidos com variáveis de uma linguagem de programação de alto nível, onde se guarda
Leia maisOrganização e Arquitetura de Computadores INTRODUÇÃO
Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo
Leia maisWilliam Stallings Arquitetura e Organização de Computadores 8 a Edição
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 11 Conjuntos de instruções: Modos de endereçamento e formatos slide 1 Diagrama do endereçamento imediato Instrução Opcode
Leia maisULA. Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade.
PROCESSADOR ULA Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade. ULA Uma ULA típica pode realizar as operações artiméticas: - adição; - subtração; E lógicas: - comparação
Leia maisSSC0112 Organização de Computadores Digitais I
SSC0112 Organização de Computadores Digitais I 3ª Aula Visão Geral e Conceitos Básicos Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Copyright William Stallings & Adrian J Pullin Tradução, revisão e
Leia maisELETRÔNICA DIGITAL II. AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR
ELETRÔNICA DIGITAL II AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR acjunior@facthus.edu.br 1º SEMESTRE 2009 CONTEÚDO PROGRAMADO: 1 O que é um computador digital? 2 Como funcionam os computadores 3 O agente
Leia mais4. Modelo de Programação do DLX Introdução
4. Modelo de Programação do DLX Quero que o matemático Beremiz Samir nos conte uma lenda, ou uma simples fábula, na qual apareça uma divisão de 3 por 3 indicada, mas não efetuada, e outra de 3 por 2, indicada
Leia maisMicroprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -
Microprocessadores I ELE 1078 Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS - 9.1 - Grupos de Instruções As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas Aula Tópico 2 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para o compilador
Leia maisProcessador: Conceitos Básicos e Componentes
Processador: Conceitos Básicos e Componentes Cristina Boeres Instituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado nos slides de Fernanda Passos Cristina Boeres (IC/UFF)
Leia maisUNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES
UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES ESSA APRESENTAÇÃO POSSUI QRCODE PARA ACESSAR INFORMAÇÕES ADICIONAIS AOS SLIDES. Código QR Reader Código QR INTRODUÇÃO A ARQUITETURA DE COMPUTADORES Qual
Leia maisLISTA 02 CONJUNTO DE INSTRUÇÕES - GABARITO
LISTA 02 CONJUNTO DE INSTRUÇÕES - GABARITO 1) Identifique na instrução em linguagem de máquina armazenada na memória, os elementos da instrução 2) Na figura acima, qual a quantidade de código de operações
Leia maisBarramento. Prof. Leonardo Barreto Campos 1
Barramento Prof. Leonardo Barreto Campos 1 Sumário Introdução; Componentes do Computador; Funções dos Computadores; Estrutura de Interconexão; Interconexão de Barramentos Elementos de projeto de barramento;
Leia maisLinguagem de Maquina II. Visão Geral
Linguagem de Maquina II Visão Geral Revisão A linguagem de máquina é composta de seqüências binárias (1's e 0's) São interpretadas como instruções pelo hardware A linguagem de montagem e a linguagem de
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Estrutura e Função do Processador Material adaptado, atualizado e traduzido de: STALLINGS, William. Arquitetura e Organização de Computadores. 5ª edição Organização
Leia maisEstrutura Básica de um Computador
SEL-0415 Introdução à Organização de Computadores Estrutura Básica de um Computador Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira INTRODUÇÃO n Organização Æ implementação do hardware, componentes, construção
Leia mais1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é
1. A pastilha do processador Intel 80486 possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é organizado com mapeamento associativo por conjuntos de quatro
Leia maisENDEREÇAMENTO DE INSTRUÇÕES. Adão de Melo Neto
ENDEREÇAMENTO DE INSTRUÇÕES Adão de Melo Neto 1 TIPOS DE OPERAÇÕES 2 TIPOS DE OPERAÇÕES TIPOS DE INSTRUÇÕES/OPERAÇÕES (RELEMBRANDO) 3 INTRODUÇÃO TIPOS DE INSTRUÇÕES/OPERAÇÕES (RELEMBRANDO) 4 INTRODUÇÃO
Leia maisArquitetura de Computadores. Professor: Vilson Heck Junior (Material: Douglas Juliani)
Arquitetura de Computadores Professor: Vilson Heck Junior (Material: Douglas Juliani) Agenda Conceitos Componentes Funcionamento ou tarefas Otimização e desempenho Conceitos Componente de Hardware que
Leia maisCOMPUTADOR. Adão de Melo Neto
COMPUTADOR Adão de Melo Neto 1 PROGRAMA É um conjunto de instruções LINGUAGEM BINÁRIA INTRODUÇÃO Os caracteres inteligíveis são apenas zero(0) e um (1). É uma linguagem de comunicação dos computadores.
Leia maisINTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL
INTRODUÇÃO À TECNOLOGIA DA ORGANIZAÇÃO COMPUTACIONAL PROFESSOR CARLOS MUNIZ ORGANIZAÇÃO DE UM COMPUTADOR TÍPICO Memória: Armazena dados e programas Processador (CPU - Central Processing Unit): Executa
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Unidade Central de Processamento (CPU) Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Baseado nos slides do capítulo
Leia maisProf. Sandro Wambier
Prof. Sandro Wambier São elementos da Arquitetura de um computador: conjunto de instruções de um processador, os modos de endereçamentos, o tipo e tamanho dos dados manipulados pelo processador, ex.: Intel
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4
Algoritmos e Estruturas de Dados I (DCC/003) 2013/1 Estruturas Básicas Aula Tópico 4 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para
Leia maisInstruções de Máquina
Instruções de Máquina Operação básica (primitiva) que o hardware é capaz de executar diretamente Conjunto de bits que indica ao processador uma operação que ele deve realizar O projeto de um processador
Leia maisEstrutura da CPU Organização de registradores Ciclo de instrução
Estrutura da CPU Organização de registradores Ciclo de instrução Elucidar o funcionamento da CPU, processamento das informações e a comunicação entre a CPU e demais componentes do computador. O processador
Leia maisArquitetura e organização de computadores
Arquitetura e organização de computadores 3º. Semestre - Sistemas de informação Prof. Emiliano S. Monteiro Classificação de computadores Grande porte: Supercomputadores e Mainframes Médio porte: Minicomputadores
Leia maisPCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca
PCS-2529 Introdução aos Processadores Prof. Dr. Paulo Sérgio Cugnasca 1 2 Existem 4 esquemas diferentes de E/S possíveis, cada um se aplicando em uma determinada situação. E/S Programada. E/S Acionada
Leia mais14/3/2016. Prof. Evandro L. L. Rodrigues
SEL 433 APLICAÇÕES DE MICROPROCESSADORES I SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Prof. Evandro L. L. Rodrigues Tópicos do curso Conceitos básicos - Aplicações e utilizações dos microcontroladores
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I BARRAMENTO Slide 1 Sumário Introdução Componentes de Computador Funções dos Computadores Estruturas de Interconexão Interconexão de Barramentos Slide 2 Introdução
Leia maisORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 04: ASPECTO BÁSICO DO PROJETO DE UMA CPU SIMPLES E LINGUAGEM DE MONTAGEM Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia
Leia maisORGANIZAÇÃO DE COMPUTADORES MÓDULO 7
ORGANIZAÇÃO DE COMPUTADORES MÓDULO 7 Índice 1. A Organização do Computador...3 1.1 Processadores... 3 2 1. A ORGANIZAÇÃO DO COMPUTADOR Um computador digital consiste em um sistema interconectado de processadores,
Leia maisArquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;
1 Microprocessador Um microprocessador é um circuito eletrônico capaz de realizar diversas tarefas conforme os comandos específicos. Para isso ele deve ler esses comandos da memória de programa (ROM) e
Leia maisSEL-433 APLICAÇÕES DE MICROPROCESSADORES I
SEL 433 APLICAÇÕES DE MICROPROCESSADORES I SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Apresentação do curso Critério de avaliação Média final = 0.8 * MP + 0.2 * ME onde MP = (P1 + P2) / 2 e ME = Notas
Leia maisEstrutura e Funcionamento da CPU. Adriano Maranhão
Estrutura e Funcionamento da CPU Adriano Maranhão 1 S Relembrando S Compiladores de linguagens ao fazer a conversão da linguagem de alto nível para chegar na fase da linguagem de baixo nível como assembly
Leia maisVariáveis e Memória. Revisão. Conceitos. Operações sobre a memória
Variáveis e Memória Revisão Estudamos, na Introdução, que os programas de computador implementam algoritmos, os quais manipulam um conjunto de dados para produzir um resultado. O algoritmo é um conjunto
Leia maisMicrocontrolador Assembly UTFPR / DAELN Microcontroladores 1 Prof. Gabriel Kovalhuk
Assembly 8051 Num sistema microprocessado, geralmente, não existe um sistema operacional; O programa desenvolvido pelo programador deve cuidar tanto da lógica do programa, bem como da configuração e acesso
Leia maisProcessador. Processador
Departamento de Ciência da Computação - UFF Processador Processador Prof. Prof.Marcos MarcosGuerine Guerine mguerine@ic.uff.br mguerine@ic.uff.br 1 Processador Organização básica de um computador: 2 Processador
Leia maisComputadores e Programação (DCC/UFRJ)
Computadores e Programação (DCC/UFRJ) Aula 3: 1 2 3 Abstrações do Sistema Operacional Memória virtual Abstração que dá a cada processo a ilusão de que ele possui uso exclusivo da memória principal Todo
Leia mais2ª Lista de Exercícios de Arquitetura de Computadores
2ª Lista de Exercícios de Arquitetura de Computadores 1. Descreva as funções desempenhadas pelos escalonadores de curto, médio e longo prazo em um SO. 2. Cite três motivos pelos quais o controle do processador
Leia maisOrganização de Computadores
Organização de Computadores Aula 25 Conjunto de Instruções: Modos de Endereçamento e Formatos Rodrigo Hausen 11 de novembro de 2011 http://cuco.pro.br/ach2034 1/26 Apresentação 1. Bases Teóricas 2. Organização
Leia maisUNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES
Tecnologia da informação e comunicação UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES CICLO DE INSTRUÇÕES OU DE EXECUÇÃO Arquitetura de computadores 2 CICLO DE EXECUÇÃO No inicio de cada ciclo de instrução,
Leia maisOrganização de computadores. Prof. Moisés Souto
Organização de computadores Prof. Moisés Souto Moisés Souto docente.ifrn.edu.br/moisessouto professor.moisessouto.com.br moises,souto@ifrn.edu.br @moises_souto Aula 06 CICLO DE INSTRUÇÕES Unidade Central
Leia maisProf. Gustavo Oliveira Cavalcanti https://sites.google.com/a/poli.br/professorgustavooc/
Sistemas Digitais Prof. Gustavo Oliveira Cavalcanti gustavooc@poli.br https://sites.google.com/a/poli.br/professorgustavooc/ Conteúdo Programático (Organização e Arquitetura) Arquitetura e história dos
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Entrada e Saída Slide 1 Entrada e Saída Dispositivos Externos E/S Programada Organização e Arquitetura de Computadores I Sumário E/S Dirigida por Interrupção
Leia maisCOMPUTADOR 2. Professor Adão de Melo Neto
COMPUTADOR 2 Professor Adão de Melo Neto Modelo Barramento de Sistema É uma evolução do Modelo de Von Newman. Os dispositivos (processador, memória e dispositivos de E/S) são interligados por barramentos.
Leia maisCPU. CPU Unidade Central de Processamento. Função: leitura, escrita e processamento de dados
CPU CPU Unidade Central de Processamento Função: leitura, escrita e processamento de dados Constituída por: dispositivos que gerem a entrada (leitura) e saída (escrita) de dados; registos (memórias auxiliares)
Leia maisEstrutura de um computador digital. Gustavo Queiroz Fernandes
Gustavo Queiroz Fernandes Atualizado em: 18/02/2019 Sumário Objetivos... 1 Pré-requisitos... 1 Recursos e Materiais... 1 Última Atualização... 1 1. Memória primária... 1 2. Memória secundária... 2 3. Unidade
Leia maisArquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia (Material Adaptado)
Arquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia (Material Adaptado) Capítulo 3 Concorrência Agenda Introdução Interrupções e exceções Operações de Entrada/Saída Buffering
Leia maisInfraestrutura de Hardware. Implementação Multiciclo de um Processador Simples
Infraestrutura de Hardware Implementação Multiciclo de um Processador Simples Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e
Leia maisINSTITUTO FEDERAL CATARINENSE Campus Ibirama
INSTITUTO FEDERAL CATARINENSE Campus Ibirama Arquitetura de Hardware Professor Eduardo Stahnke Arquiteturas Grande diversidade das arquiteturas de computadores Componentes básicos do computador Os Principais
Leia mais2º Estudo Dirigido CAP 3
2º Estudo Dirigido CAP 3 1. Cite três exemplos de aspecto na definição e implementação de uma arquitetura que são influenciados pelas características do conjunto de instruções? R.: Operações lógicas e
Leia maisARQUITETURA DE COMPUTADORES. Organização de Sistemas Computacionais. Prof.: Agostinho S. Riofrio
ARQUITETURA DE COMPUTADORES Organização de Sistemas Computacionais Prof.: Agostinho S. Riofrio Agenda 1. Unidade Central de Processamento 2. Organização da CPU 3. Interpretador 4. RISC x CISC 5. Principios
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Slide 1 Memória Virtual os primeiros computadores (início dos anos 60) tinham memória principal muito reduzida O PDP-1 funcionava com uma memória de 4096 palavras
Leia maisConjunto de Instruções. Alisson Brito
Conjunto de Instruções Alisson Brito 1 1 O que é o Conjunto de Instruções? Instruction Set Architecture (ISA) Interface entre Programas e CPU A coleção completa de instruções reconhecidas pela CPU Programas
Leia maisWilliam Stallings Arquitetura e Organização de Computadores 8 a Edição. Capítulo 12 Estrutura e função do processador
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 12 Estrutura e função do processador slide 1 Estrutura da CPU CPU precisa: Buscar instruções. Interpretar instruções. Obter
Leia maisOrganização de Computadores Aula 05
Organização de Computadores Aula 05 Componente Computador Unidade Central de Processamento (CPU) Memória Unidades de E/S Barramentos Modelo de Von Neumann Apresentado em 1945 Conceito de programa armazenado
Leia maisORGANIZAÇÃO DE COMPUTADORES
Organização de Computadores ORGANIZAÇÃO DE COMPUTADORES Curso: Tecnologia em Gestão da Tecnologia da Informação Ano: 2011 Conhecida como Processador ou é o cerebro do computador Unifica todo sistema e
Leia maisOrganização de Computadores 1
Organização de Computadores 1 3.1 CPU: Unidade de Processamento Central Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Unidade de Processamento Central (CPU): Memória Principal Unidade de Processamento
Leia mais3. O NIVEL DA LINGUAGEM DE MONTAGEM (Cont.)
3. O NIVEL DA LINGUAGEM DE MONTAGEM (Cont.) Com base nas observações feitas anteriormente, de que apenas uma pequena parte do código é responsável por grande parte do tempo gasto na execução, pode-se adotar
Leia maisHistórico de desenvolvimento de computadores Prof. Luís Caldas Aula 02 Processador de uso geral
Processador de uso geral 1. Introdução: Um sistema digital completo é constituído de uma unidade controle e o bloco operacional. Na figura a seguir alguns elementos externos necessários para completar
Leia maisUniversidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação. Arquitetura de Computadores I. Organização Básica do Computador
Universidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação Arquitetura de Computadores I Organização Básica do Computador Gabriel P. Silva Ementa Unidade 2: Organização Lógica e Funcional
Leia maisNível da Arquitetura do Conjunto das Instruções
Nível da Arquitetura do Conjunto das Instruções (Aula 11) Visão Geral do Nível ISA Antes de deixarmos o hardware (1) 8 2 Antes de deixarmos o hardware (2) 3 ISA (Instruction Set Architecture) Arquitetura
Leia maisUNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES
Tecnologia da informação e comunicação UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES ESSA APRESENTAÇÃO POSSUI QRCODE PARA ACESSAR INFORMAÇÕES ADICIONAIS AOS SLIDES. Código QR Reader Código QR INTRODUÇÃO
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Linguagem de Montagem e Linguagem de Máquina Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Conceitos básicos Linguagem/código
Leia maisFUNCIONAMENTO DO COMPUTADOR. Adão de Melo Neto
FUNCIONAMENTO DO COMPUTADOR Adão de Melo Neto 1 ELEMENTOS DE UM COMPUTADOR PROCESSADOR (UCP) unidade de controle (UC) + unidade lógica aritmética (ULA) + registradores MEMÓRIA; BARRAMENTOS barramento de
Leia mais