TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

A Introdução aos Ambientes Operacionais

Por:   •  16/12/2020  •  Ensaio  •  1.019 Palavras (5 Páginas)  •  151 Visualizações

Página 1 de 5

FACULDADE DE COMPUTAÇÃO E INFORMÁTICA

BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO

FUNDAMENTOS DE COMPUTAÇÃO E SISTEMAS – Aula 01  – 2º SEMESTRE/2017

PROF. LUCIANO SILVA

TEORIA: MODELOS E COMPONENTES COMPUTACIONAIS

[pic 1]

Nossos objetivos nesta aula são:

  • conhecer a noção informal de modelo de computação
  • conhecer os Modelos de Turing e von Neumann
  • conhecer os principais componentes computacionais
  • conhecer a evolução dos sistemas computacionais

[pic 2]

Para esta aula, usamos como referência o Capítulo 1 (Introdução)  do nosso livro-texto:

FOROUZAN, B., MOSHARRAF, F.  Fundamentos da Ciência da Computação. 2.ed. São Paulo: Cengage Learning, 2012.  

Não deixem de ler este capítulo depois desta aula!

MODELOS DE COMPUTAÇÃO

  • Informalmente, um modelo de computação descreve um conjunto de operações possíveis para um computador.
  • Modelos de computação podem existir mesmo que ainda não se tenha um computador físico que consiga executar as operações definidas por um modelo.
  • Isto é possível porque um modelo de computação abstrai o conceito de computação, permitindo que se trabalhe com tal conceito do ponto de vista matemático.
  • Mas, como será um modelo de computação para os computadores como conhecemos atualmente ?

MODELO DE TURING

  • Inicialmente, vamos tentar construir um modelo de computador como um processador de dados, conforme mostrado abaixo:

[pic 3]

  • Neste modelo, o computador age como uma caixa-preta, que aceita dados de entrada, os processa e gera dados de saída resultantes do processamento.

  • Embora este modelo possa definir um computador atual, ele é muito genérico.

EXERCÍCIO COM DISCUSSÃO EM DUPLAS

Por que o modelo de computador descrito acima é genérico demais ?

MODELO DE TURING (continuação)

  • Para contrapor o fato encontrado no exercício acima, Alan Turing (considerado o pai da Computação) introduziu um novo elemento (programa) no modelo de processador de dados produzindo o chamado Modelo de Turing.

[pic 4]

Alan Mathison Turing  (23 de junho de 1912 — 7 de junho de 1954) foi um matemático, lógico, criptoanalista e cientista da computação britânico. Foi influente no desenvolvimento da ciência da computação e na formalização do conceito de algoritmo e computação com a máquina de Turing, desempenhando um papel importante na criação do computador moderno. Ele também é pioneiro na Inteligência Artificial e na Ciência da Computação.

Durante a Segunda Guerra Mundial, Turing trabalhou para a inteligência britânica em Bletchley Park, num centro especializado em quebra de códigos. Por um tempo ele foi chefe do Hut 8, a seção responsável pela criptoanálise da frota naval alemã. Planejou uma série de técnicas para quebrar os códigos alemães, incluindo o método da bomba eletromecânica, uma máquina eletromecânica que poderia encontrar definições para a máquina Enigma.

  • Com um programa, o Modelo de Turing explicita o que realmente o computador deve fazer com os dados. Esquematicamente, o Modelo de Turing fica como mostrado abaixo:

[pic 5]

  • Este modelo é bastante flexível, pois permite que um mesmo programa possa operar sobre diferentes dados de entrada:

[pic 6]

  • Este modelo ainda permite que diferentes programas possam ser utilizados com as mesmas entradas:

[pic 7]

EXERCÍCIO COM DISCUSSÃO EM DUPLAS

O Modelo de Turing permite trabalhar com diferentes programas e diferentes entradas de dados ? Caso afirmativo, dê um exemplo. Caso negativo, justifique.

MODELO DE TURING (continuação)

  • O Modelo de Turing consegue executar qualquer computação se o programa apropriado for fornecido.  Neste caso, dizemos que este modelo é universal e o modelo é chamado de Máquina Universal de Turing.

  • A Máquina Universal de Turing foi a primeira descrição abstrata de um computador moderno. Esta descrição foi feita em 1936, no famoso artigo “On Computable Numbers, with an Application to the Entscheidungsproblem “. Chama-se a atenção para o fato de que, nesta época, ainda não havia computadores como aqueles que conhecemos atualmente: mas, um modelo de computação abstrato (matemático)  já existia!

MODELO DE von NEUMANN

  • Os computadores que foram construídos com base na Máquina Universal de Turing armazenavam os dados em suas memórias.

  •  Por volta de 1944-1945, John von Neumann propôs que, se um programa e os dados são logicamente a mesma coisa (sequencia de bits), os programas também poderiam ser armazenados na memória de um computador.
  • Isto não só criou o conceito de programa armazenado, como também permitiu a construção de um novo modelo de computação (Modelo de von Neumann), formado de quatro subsistemas básicos: memória, unidade de lógica e aritmética (ULA), unidade de controle e entrada/saída.

[pic 8]

  • Neste modelo, tanto o programa quanto os dados são armazenados na memória. A execução do programa é controlada pela unidade de controle (UC) e com o auxílio da ULA.

  • No Modelo de von Neumann, um programa é composto por um número finito de instruções, que são executadas uma depois da outra (sequencialmente). Neste contexto, a UC busca uma instrução na memória, faz sua decodificação e a executa.

COMPONENTES COMPUTACIONAIS

  • Com base no Modelo de von Newmann, podemos pensar um computador (ou sistema computacional) como sendo formado por três componentes: hardware, dados e software. 

  • Modernamente, o hardware pode ser visto com a parte física de um sistema computacional. Mesmo arquiteturas de hardware mais complexas exibem os elementos do Modelo de von Newmann (UC, ULA, memória). Geralmente, a UC e a ULA são acomodadas numa unidade chamada processador ou CPU (Unidade Central de Processamento).

[pic 9]

  • O software é programa que irá ser executado sobre o hardware. A execução pode ser feita diretamente no hardware ou com o auxílio de um sistema operacional (Windows, Linux, MacOS, ...).

  • Programas são construídos através de linguagens de programação. O que é um programa irá executar é definido por um algoritmo. A partir de um algoritmo, utilizando uma linguagem de programação (Python, C, Java, Cobol), produz-se um programa.
  • O projeto de softwares mais complexos pode exigir técnicas mais sofisticadas, estudadas em Engenharia de Software.
  • Softwares atuam sobre dados. Determinados tipos de dados podem exigir diferentes esquemas de representação para que possam ser armazenados, juntamente com os programas, na memória de um computador.

ATIVIDADES EXTRA-CLASSE

  1. Ler o Capítulo 1 do livro-texto.

  1. Fazer os exercícios de fixação do final do capítulo.
  1. PARA ENTREGA: descrever a evolução histórica dos computadores desde 1930, relacionando-a com os dois modelos estudados em aula (Turing e von Neumann).

...

Baixar como (para membros premium)  txt (7.3 Kb)   pdf (297.4 Kb)   docx (290.2 Kb)  
Continuar por mais 4 páginas »
Disponível apenas no TrabalhosGratuitos.com