Você está na página 1de 18

Estrutura e funcionamento

básico de um computador

•O que é um computador?

•Um computador é uma máquina composta por


um conjunto de dispositivos electrónicos e
electromecânicos capazes de processar
informação.

1
Estrutura e funcionamento básico
de um computador (cont.)
Unidade Central de
Processamento (CPU)

Dispositivos Dispositivos
de Input de Output
Memória Primária

Memória Secundária

2
Linguagens de programação
 Linguagem de programação são conjuntos de palavras
formais, utilizadas na escrita de programas, para enunciar a
execução de operações em computador.

 Objectivos de uma linguagem de programação


 Proporcionar os meios de expressão para uma solução
computacional de um dado problema.
 Linguagem máquina – é a única linguagem que o computador
entende e tem por base sequências de zeros e uns (sistema
binário).
 É orientada para a máquina cujas instruções podem ser
directamente utilizadas pelo computador.

3
Programa Informático / Algoritmo
 Programa - é um conjunto de instruções
“frases” com uma sequência lógica e
previamente estabelecida que permite a
execução de tarefas pelo computador.
 Ou seja, um programa é a tradução de uma solução
de um problema na forma de um algoritmo, tendo
em vista uma resolução informática.

 Algoritmo – é então, a uma forma ou fórmula


para a resolução de um problema, mediante o
estabelecimento de determinadas regras ou
procedimentos. A fórmula de resolução do
problema traduz-se numa sequência finita de
acções.

4
Linguagens de Alto-nível / baixo
nível
 As linguagens de programação podem ser
classificadas como linguagens de alto nível, de
acordo com a proximidade que têm ou não
das linguagens humanas. Deste modo as
linguagens de baixo nível são as que se
encontram orientadas para a máquina
(computador) enquanto as linguagens de alto
nível não reflectem a estrutura de nenhum
computador.

5
Linguagens de Alto-nível / baixo
nível
Linguagem Assembly, Algol, Apl, COBOL, LOGO, ADA,
C Pascal, C, PL/1, basic LISP, RPG,
Fotran, Basic PROLOG

Nível Baixo, Médio, baixo Alto Alto


Médio

Classificação Linguagem Linguagens Linguagens Linguagens


máquina e científicas “Comerciais “Inteligentes”
assembler ”

Função Desenvolvim Trabalhos Programas Trabalhos


ento de académicos e de gestão e académicos e
sistemas investigação comércio investigação
científica científica

6
Interpretadores e Compiladores

Para converter um programa escrito numa


linguagem de alto nível para código máquina,
executável pelo computador, torna-se também
necessária a intervenção de software de tradução
ou um programa-tradutor, que pode ser de dois
tipos diferentes:
 Interpretador
 Compilador

7
Interpretadores e Compiladores

• Interpretador – que traduz instrução por


instrução, á medida que o programa vai sendo
lido e executado, ficando assim o programa
dependente do software que executa essa
interpretação.
• Compilador – que traduz na totalidade das
instruções de alto nível para um programa em
código máquina, o qual poderá ser executado
autónoma ou independentemente do software
que faz a compilação.Isto é, é criado um
executável (.EXE).

8
Interpretadores e Compiladores
Entradas
Programa Compilador Programa
Fonte Objecto Saídas

Entradas
Programa
Interpretador
Fonte Saídas

Programa fonte – é o programa original, escrito numa qualquer


linguagem de programação evoluída.
Programa objecto – é o programa gerado após o programa fonte ter
sido compilado, por um compilador e escrito em linguagem máquina ou
assembly.
9
Interpretadores e Compiladores

 Interpretação  Compilação

10
Programação

 O conceito de programação engloba todo o


conjunto de trabalhos de concepção, escrita e
teste de programas. O modo de realizar esses
trabalhos vai determinar o sucesso dos
resultados, pelo que têm sido desenvolvidos
diversos métodos a utilizar em programação.

 PROGRAMAÇÃO ESTRUTURADA (TOP-Down)–


é a técnica de programação utilizada com o
objectivo de reduzir o número de erros e o
tempo de testes de um programa, com
recurso a módulos e figuras lógicas padrão.

11
Abordagem ao problema

 Como abordar um problema?


 Da abordagem do problema depende quase sempre o sucesso
da resolução.
 Tradicionalmente considera-se a aproximação ideal a
descendente TOP-DOWN, em que se divide o problema nas
suas grandes fases e sucessivamente se vai incrementando o
nível de detalhe até se atingir um grau que se considere
razoável.
 A discussão gera-se sempres em torno do grau de detalhe
requerido. Pode-se dizer que o nível de detalhe será aquele
em que não baixando ao nível que se considera próprio da
elaboração do algoritmo. Se assim fosse, o top-down e o
algoritmo consideravam-se iguais na prática.

12
Abordagem ao problema (cont.)

 Exemplo:

 Programar um robôt para desatarraxar uma


lâmpada.

 Neste exemplo pretende-se programar o robôt,


de forma que este se desloque ao centro de uma
sala, suba a uma escada e desatarraxe a
lâmpada.

13
Abordagem ao problema (cont.)

1. Caminhe até á escada;


2. Suba até ao topo da escada;
3. Desatarraxe a lâmpada;

 Com o aumento da complexidade dos


problemas cada um dos passos deve ser
subdividido dando origem a passos
numerados da forma 1.x, 2.x, 3.x, etc.

14
Abordagem ao problema (cont.)

 Assim neste caso, à a considerar:

1. Caminhe  caminhar para onde?


2. Suba  Subir até onde?
3. Desatarraxe  ?

E assim subdividir-los nos seguintes passos:

15
Abordagem ao problema (cont.)

1. Caminhe
1.1 Indicar a direcção
1.2 Deslocar-se até à escada

2. Suba
2.1 Enquanto não alcançar a lâmpada subir o
degrau.

3. Desatarraxe
3.1 Agarrar a lâmpada (sem partir)
3.2 Rodar até soltar

16
Fases de elaboração de um
programa

 Apresentação e análise do problema;


 Formulação e representação de um algoritmo;
 Codificação do algoritmo numa linguagem de
programação;
 Compilação e interpretação do programa-
fonte;
 Testes do programa de forma a verificar erros
de lógica;

17
Fases de elaboração de um
programa (cont.)
Análise da situção / problema Yes

Formulação de um algoritmo
(diagrama/fluxogramas/pseudocódigo)

Tradução do algoritmo numa linguagem de


programação ou escrita do programa-fonte

Detecção de
Yes
erros de escrita
Yes
No
Testes de verificação lógica do
programa

Detecção de
erros de lógica

No

Programa terminado

18

Você também pode gostar