Introdução à Arquitetura de Computadores

Ana Paula de Oliveira Enock

VOCÊ VAI APRENDER


 Introdução à arquitetura de computadores

 Conceitos básicos de arquitetura de computadores

 Entrada, Processamento e Saída de dados

 Níveis de Organização

pré-requisitos

Conhecimento básico em informática 

Interesse em conceitos básicos relacionados ao Hardware

 Interesse em adquirir conhecimento específico


introdução



O   termo “Arquitetura de Computadores” foi empregado pela primeira vez em um livro editado por Werner Buzhholz: o Planning a Computer System: Project Stretch de 1962, onde Frederick Brooks introduziu o termo no capítulo intitulado “Architectural Philosophy”. Duas décadas mais tarde Jean-Loup Baer examina minuciosamente o termo e chega a conclusão de que Arquitetura de Computadores é um conjunto de componentes que  faz parte do computador.

Entende-se que quando o programador estiver utilizando uma linguagem de programação ou a linguagem de montagem, é preciso compreender a máquina em seu conjunto.

"A arquitetura de computadores se refere ao comportamento de um sistema computacional visível para o programador, ou seja, aos aspectos relacionados com a execução lógica de um programa. A organização de computadores se refere às unidades estruturais e seus relacionamentos lógicos e eletrônicos." (STALLINGS, 2010).

O computador trabalha seguindo uma sequência de passos ou instruções que são estabelecidas por homens para resolver um problema ou gerar algum resultado. Estes passos são chamados de algoritmos, que é uma sequência lógica e finita de instruções. Dessa forma, define-se então que um ou mais algoritmos compõem programas de computadores, os chamados softwares, classificando-os como parte lógica cuja função é fornecer instruções para o hardware.

O hardware é a parte estruturada e física do computador que é composta por circuitos eletrônicos e lógicos. É a parte "palpável" formada pelos componentes eletrônicos como, dispositivos de entrada e saída (monitor, teclado, mouse), dispositivos de armazenamento, processador. E software são responsáveis por pegar o algoritmo, modificá-lo e o transformar em programas que solucionarão os problemas propostos. Portanto, a Arquitetura de Computadores busca compreender os elementos do hardware que compõem o computador com a junção do sistema computacional, sendo possível utilizar os recursos do processador em sua totalidade. Para uma máquina ser considerada um computador é necessário que nela contenha os seguintes elementos básicos: processador, memória, dispositivos de entrada e/ou saída e é considerada eficiente em resolução de problemas complexos com grande volume de dados. Os elementos básicos do computador é retratado na figura, a seguir: 

Figura 1. Elementos básicos de um computador

Figura 1. Elementos básicos do computador. 

  • O Processador é um circuito integrado que é responsável por realizar todas as funções do computador e efetuar o processamento de dados de instruções estabelecidas pelo usuário.​​​​​​

  • A memória é responsável por armazenar todos os dados do dispositivo. A memória principal é denominada de memória RAM que é caracterizado pelo armazenamento de dados enquanto o computador estiver ligado. É constituída também pela memória Cache e memória secundária, que serão explicadas na seção de Memória e Barramento.

  • Os periféricos são dispositivo de entrada e saída que recebem as informações do computador e por isso conseguem obter troca de informações. Estes dispositivos são responsáveis também pela comunicação entre a máquina e o homem.

  • O barramento é um agrupamento de fios ligados por função que farão a ligação e comunicação entre os componentes do computador.

Figura 1. Elementos básicos de um computador Imagem widget

como o computador funciona


Os computadores utilizam o sistema binário para realizar cálculos, que serão realizados na ULA (Unidade Aritmética e Lógica), para a resolução de problemas e processamento de dados. Para melhor explicação, a seguir será feito uma comparação com o sistema de cálculos utilizados por seres humanos.

Para realizar cálculos, é utilizado o sistema decimal. E por isso ao te perguntarem quanto é 5+5 você certamente dirá 10. Por sua vez, em computadores é trabalhado apenas com sistemas binários, ou seja, apenas  os algarismos 0 e 1, e utiliza-se a lógica binária atrelada a booleana (true ou false; sim ou não; ligado ou desligado). Logo, ao realizar a mesma operação utilizando um computador, essa informação será transformada em número binário e a conversão será feita com tamanha rapidez que não irá interferir no tempo de resposta. Qualquer instrução inserida no computador é transformada em binário, sendo elas int, string, char, ou de qualquer outro tipo. Para se converter um número qualquer em binário existem diversas maneiras.

Figura 2. Transformando número decimal em binário.

Figura 2. Transformando número decimal para sistema binário. 



No exemplo acima basta você pegar o número que deseja transformar em binário e comparar com os números da tabela. Como no exemplo, escolha um número, nesse caso será utilizado o número 22. Comece da esquerda para a direita, perguntando-se: 22 é maior que 128? Se a resposta for sim insira 1, senão insira 0. No caso obviamente a resposta é não, então insira 0 e continue. 22 é maior que  64? Não, insira 0. E assim respectivamente até chegar no 16; 22 é maior que 16? Sim. Então insira 1. Após isso você irá fazer 22-16 = 6 e dará continuidade; 6 é maior que 8? Não, insira zero. 6 é maior que 4? Sim, insira 1. Faça 6-4 = 2; 2 é menor ou igual a dois? Sim; então insira 1. Repita esse processo até chegar ao final da tabela, no número 1. Perceba que esse processo não é visto pelo usuário, sendo feito por um conjunto de instruções, arquitetada por vários elementos que compõem a estrutura do computador, a seguir será descrita as principais.



modelo de von neumann


Segundo o modelo de Von Neumann, o modelo de um computador ideal seria utilizar o sistema binário para codificar as instruções; e que todas as instruções sejam armazenadas na memória e que também fossem carregadas direto da memória. Os computadores digitais baseiam-se no modelo de Von Neumann,  listado a seguir:

  • Unidade de entrada – Provê instruções e dados ao sistema.

  • Unidade de memória – Armazena os dados do sistema.

  • Unidade lógica e aritmética – Processa os dados.

  • Unidade de controle – Controla a execução das instruções e o processamento dos dados.

  • Unidade de saída – Apresenta os resultados dos dados processados.


    Figura 3. Modelo de Von Neumann

    Figura 3. Modelo de Von Neumann 

A tarefa principal de um computador é o processamento de dados, onde é realizado diversos cálculos para que dados sejam manipulados e transformados em informação útil. A seguir, será apresentado os principais dispositivos que atuam no processo de entrada de dados, processamento e saída de informações.

Figura 3. Modelo de Von Neumann

Figura 3. Modelo de Von Neumann



Entrada e saída 



Operações de entrada e saída são basicamente realizadas pelo usuário através dos dispositivos de entrada, por isso são responsáveis pelas interações entre o computador e o mundo externo (usuários) . Alguns exemplos destes acessórios são: monitor, teclado, mouse, webcam, impressora, CD, DVD, pendrive. Quando o usuário deseja realizar alguma operação através destes dispositivos, o computador deve processar essas informações e guardá-las em algum local. Estas informações são arquivadas no processador e guardadas na memória, como apresentado a seguir.

Processamento


O processador (UCP - Unidade Central de Processamento) é um circuito integrado e é considerado o cérebro do computador. É responsável por executar os programas e por isso deduz que, quanto mais rápido é o processador, mais rápida será a execução dos programas. A UCP é composta por três diferentes áreas que trabalham em conjunto:

  • Unidade Aritmética e Lógica (ULA): Cuja função é executar operações indicadas pelas instruções de um programa, sendo elas lógicas ou aritméticas. O trabalho da ULA é apoiado por diversos registradores.

  • Unidade de controle (UC): Controla as ações a serem realizadas pelo computador, comandando também os demais componentes de sua arquitetura, garantindo a correta execução dos programas.

  • Registradores: Estão memorizados todos os elementos realizados pela UCP, contendo instruções, endereços de memória, etc. Asseguram o armazenamento temporário de informações importantes para o processamento de uma dada instrução. Para entender melhor, pode-se comparar os registradores a memória, contendo apenas diferenças de localização, capacidade de armazenamento, e tempo de acesso às informações.

  • Clock  : É responsável por sincronizar e ditar a medida de velocidade de transferência de dados no computador, sendo, a frequência com que o processador consegue executar as tarefas. Quanto maior a frequência do clock, menor é o tempo de execução e, portanto, mais rápido é o processador


memória e barramento 


A Memória é, basicamente, um conjunto de circuitos capazes de armazenar dados e todos os programas que serão executados pela máquina. Existem diferentes categorias de memória que atuam de maneira distinta e em conjunto, sendo elas:

  • Memória Principal: Contém os programas e dados a serem manipulados pelo processador;

  • Memória Secundária: Armazena uma maior quantidade de dados e instruções por um maior período de tempo;

  • Memória Cache: Pequena porção de memória, com curto tempo de resposta, geralmente interligada aos processadores, permitindo maior desempenho durante a execução de um programa. Após os dados entrarem, serem processados e armazenados, eles são "devolvidos" ao usuário, seja por meio de dispositivos de saída ou não;

  • Barramento: Como explicado antes, o barramento é responsável por interligar todos os componentes listados acima, sendo, de uma via de comunicação composta por diversos fios ou condutores elétricos por onde circulam os dados manipulados pelo computador.​​​​​​​

A imagem a seguir resume o esquema explicado acima:​​​​​​​

Figura 4. Esquema do funcionamento da memória e barramento.

Figura 4. Esquema do funcionamento da memória e barramento. 





níveis de organização


Para finalizar, será apresentado a seguir os níveis de organização de um computador, desde o nível mais baixo dos transistores até o mais alto, que é a interação com o usuário.

Figura 5.  Níveis de organização de um computador.

Figura 5.  Níveis de organização de um computador.



1. Usuário, programa ou aplicativo: Neste nível é que ocorre a interação usuário e computador, através de programas.

2. Linguagem de alto nível: Nível em que o programador desenvolve os programas, através de linguagem de alto nível, como, por exemplo, C#, Java ou qualquer outra linguagem de programação.

3. Linguagem de máquina: As instruções são interpretadas e executadas pelo processador, como descrito no tópico de entrada, processamento e saída deste tutorial. Os programas escritos em alto nível são traduzidos para uma linguagem de baixo nível ou linguagem de máquina denominada Assembly.

4. Controle: A unidade de controle dentro do processador efetua transferência de dados entre os registradores, memória, dispositivos de entrada e saída.

5. Unidades funcionais: O registradores internos da UCP são organizados de acordo com a função que desempenham para realizar a transferência de dados.

6. Portas Lógicas: Nível mais baixo de funcionamento do computador, sendo as unidades funcionais desenvolvidas através de portas lógicas.

7. Transistores e Fios: Nível mais baixo do computador, composto por componentes eletrônicos e fios, sendo as portas lógicas implementadas através desse nível.

Por conseguinte, este tutorial mostra o sistema funcional e arquitetura de um computador. Espera-se que tenha alcançado objetivo e ajudado no aprendizado sobre o assunto. 






links úteis 

Arquitetura de Computadores

Organização e Arquitetura de Computadores

Este tutorial foi adaptado do tutorial "Introdução à Arquitetura de Computadores" desenvolvido por Bárbara Ferreira e Jéssica Mota.

Voltar