1 - INTRODUÇÃO a) Computador b) Estrutura do sistema i. Hardware ii.Software c) Linguagens de Programação i. Paradigmas e Programação 1. Estruturada 2. Orientada a eventos 3. Orientada a objetos d) Sistemas Operacionais e) Tradutores 1 - INTRODUÇÃO 1 - INTRODUÇÃO a) Computador Máquina destinada a realizar cálculos complexos. b) Estrutura do sistema i. Hardware 1 - INTRODUÇÃO 1 - INTRODUÇÃO b) Estrutura do sistema i. Hardware 1 - INTRODUÇÃO 1 - INTRODUÇÃO b) Estrutura do sistema Gerações dos computadores 1ª Geração (1940 a 1952) válvula Linguagem de máquina Cartão perfurado Eniac 1 - INTRODUÇÃO Memória de atraso de mercúrio 1 - INTRODUÇÃO Gerações dos computadores 2ª Geração (1952 a 1964) •Linguagem assembler, cobol, Algol, Fortran. Memória de núcleo de ferrite Válvula e transistores Tradic - 1955 1 - INTRODUÇÃO Unidade de fita magnética 1 - INTRODUÇÃO Gerações dos computadores 3ª Geração (1964 a 1971) Comparativo: válvula transistores e chips PDP-11 Circuitos integrados VAX 1 - INTRODUÇÃO Gerações dos computadores 1 - INTRODUÇÃO 4ª Geração (1971 a 1981) • Diversidade de Linguagens de programação; • Rede de transmissão de dados. Microcomputador APPLE Microcomputador TRS-80 Microcomputador PC 8088 Disco flexível de 5.1/4” 1 - INTRODUÇÃO Disco flexível de 3.1/2” 1 - INTRODUÇÃO Gerações dos computadores 5ª Geração (1981........) • Inteligência Artificial; • Linguagem Natural • Altíssima velocidade de processamento. Notebook com a mesma capacidade dos desktop CPU - Circuito integrado da Larga escala Microcomputador integrado com processamento paralelo Comparativo atual 1 - INTRODUÇÃO 1 - INTRODUÇÃO ii.Software 1ª Geração Linguagem de máquina 2ª Geração Assembler, linguagem montadora 3ª Geração Linguagem de alto nível orientada para os procedimentos, linguagem simbólica de composição do raciocínio 4ª Geração diversificação das linguagens de programação. Linguagens de altíssimo nível, orientadas para problemas. O software pode ser: •Básico: sistemas operacionais e linguagens de programação. •Aplicativo: processadores de textos, planilhas de cálculo, processadores de imagens, etc. 1 - INTRODUÇÃO 1 - INTRODUÇÃO c) Linguagens de Programação Definição: é um conjunto de termos (vocábulos) e regras (sintaxe) que permitem a formulação de instruções (programas para serem executadas pelo computador) Tipos de linguagens: • Linguagem de Máquina: é única entendida pelo computador, sendo formada por instruções em código binário. 1 - INTRODUÇÃO 1 - INTRODUÇÃO c) Linguagens de Programação • Linguagem de baixo nível: são aquelas cujo os códigos são muito próximos aos usados pela máquina. São utilizadas no desenvolvimento de aplicações que interagem diretamente com o hardware necessitando alta velocidade de execução. A estas linguagens dá-se o nome de Linguagem Montadora (Assembler – Assembly Language). 1 - INTRODUÇÃO 1 - INTRODUÇÃO c) Linguagens de Programação • Linguagem de alto nível: são aquelas cujo os códigos são muito próximos aos utilizados pela linguagem humana. 1 - INTRODUÇÃO 1 - INTRODUÇÃO c) Linguagens de Programação Proximidade entre a linguagem e a máquina. 1 - INTRODUÇÃO 1 - INTRODUÇÃO c) Linguagens de Programação Relação entre o usuário e o computador através da linguagem. 1 - INTRODUÇÃO 1 - INTRODUÇÃO d) Sistemas Operacionais Definição: Conjunto de programas integrados, cuja tarefa é colocar a máquina em operação e proporcionar um ambiente para que o usuário possa se comunicar com ela. Histórico dos S.O´s 1° Nível (anos 50): Auxiliar programas nas operações de entrada e saída de dados e na tradução de programas-fontes. 2° Nível (anos 60): auxiliar na tradução de programas mais evoluídos, programas de serviço para transferência de informação entre periféricos. 3°Nível (anos 60): base para os tradutores de altíssimo rendimento. 1 - INTRODUÇÃO 1 - INTRODUÇÃO d) Sistemas Operacionais Estrutura básica de um sistema operacional. Os programas de um S.O. podem ser divididos em grupos: Programas de controle: Coordenam o funcionamento de todos os elementos físicos (hardware) do computador (CPU, processamento de I/O e periféricos). Gerenciamento de dados: Controlar e coordenar todas as operações relativas à movimentação de dados. Gerenciamento de serviços/trabalhos: Controlar os programas de usuários para execução e reexecução e atribuição a periféricos. 1 - INTRODUÇÃO 1 - INTRODUÇÃO d) Sistemas Operacionais Gerenciamento de sistemas: Coordenar e supervisionar o funcionamento dos demais programas tais como: proteção de memória, identificação de erros na memória e de erros de programa (quando a U.C (Unidade de Controle) não reconhecer o comando). Programas de processo: Usados para dar apoio e fornecer programas para execução: tradutores, utilitários. 1 - INTRODUÇÃO 1 - INTRODUÇÃO e) Tradutores Programa fonte: O programa desenvolvido pelo programador em linguagem de alto nível, inteligível ao computador, e deve sofre um processo de tradução para linguagem de máquina é chamado de programa fonte. Esta tarefa de tradução é feita pelos programas tradutores. Programa-Objeto: É o programa obtido após a tradução do programa fonte feita por um programa chamado compilador. Nesta faze o programa ainda não pode ser executado pois é necessário que se faça a ligação com as bibliotecas de funções (linkedição) da linguagem de programação e a conversão final para linguagem de máquina que o torna um programa executável. 1 - INTRODUÇÃO 1 - INTRODUÇÃO e) Tradutores Finalizando: A tradução dos programas pode se feitas de três formas: Montadores (Assembler): Transformam os programas escritos em linguagem de baixo nível(Assembly) em programas-objetos. Compiladores: Transforma programas escritos em linguagem de alto nível (programa-fonte) em programas-objetos, que após transformado pelo Linker, poderá ser executado pelo computador (arquivo tipo EXE). Interpretadores: Tem as mesmas características dos compiladores, só que não geram programas-objetos. A tradução é feita diretamente do programa fonte. É mais demorado que o compilador, uma vez que interpreta cada comando para executá-lo. 1 - INTRODUÇÃO 1 - INTRODUÇÃO e) Tradutores Processo de tradução do programa fonte. Tradução Interpretada Compilada PROGRAMA FONTE Opera só com o programa FONTE a partir do fonte gera OBJETO TRADUTOR PROGRAMA OBJETO EXECUÇÃO COMPILADOR Linguagem de Máquina Execução de todo o programa Linguagem de Alto Nível INTERPRETADOR Executa a Instrução e Volta Operação gerenciada pelo sistema operacional 1 - INTRODUÇÃO