trabalho lost171 (atualizado)
Post on 05-Dec-2014
2.934 Views
Preview:
DESCRIPTION
TRANSCRIPT
DOMÊNICO MEDEIROSICARO TORRESJOÃO GERALDOJONATHAS SANTOS
Áreas de Ciência da Computação
Top 10
Universidades com os melhores cursos da Área no Brasil
Unicamp - Bacharelado em Ciência da Computação Unicamp - Engenharia de computação UFRGS - Ciência da Computação ICMC/USP/São Carlos - Bacharelado em ciência da computação USP/Poli - Engenharia da Computação ITA - Engenharia de computação Poli/USP - Engenharia Elétrica - Ênfase em Computação UFRGS - Engenharia da Computação UFMG - Bacharelado em Ciência da Computação UFRJ - Bacharelado em ciência da computação
Áreas da Ciência da Computação
Teoria da Computação Computabilidade e Modelos de Computação Linguagem Formais e Automatos Análise de Algoritmos e Complexidade de Computação Lógicas e Semântica de Programas
Matemática da Computação Matemática Simbólica Modelos Analíticos e de Simulação
Áreas da Ciência da Computação
Metodologia e Técnicas da Computação Linguagens de Programação Engenharia de Software Banco de Dados Sistemas de Informação Processamento Gráfico (Graphics)
Sistemas de Computação Hardware Arquitetura de Sistemas de Computação Software Básico Teleinformática
ALUNO:
JOÃO GERALDO DE SANTANA OLIVEIRALost171.blogspot.com
Teoria da Computação
Teoria da computação
O que é computação?ProblemaProblema
SoluçãoSolução
COMPUTAÇÃOCOMPUTAÇÃO(ALGORITMO)(ALGORITMO)
Teoria da Computação
Matemática
Teoria da Computação
Ciência da Computação
Teoria da Computação
Objetivo principal? Classificação dos problemas
computacionais:1. Problemas indecidíveis . 2. Problemas intratáveis.3. Problemas tratáveis.
Teoria da computação
Importância da TC é dupla:1. Apóia aspectos teóricos da CC.2. Fundamenta diversas aplicações
computacionais.
Importância no campo cognitivo:1. Proporciona mais um estágio no raciocínio lógico.2. No desenvolvimento de demonstrações e de suas
técnicas.3. No desenvolvimento da capacidade de abstração.
Computabilidade e Modelos de Computação Computabilidade? Finalidades:
1. Estudo da solucionabilidade de problemas.
2. Investigar a existência ou não de algoritmos que solucionem determinada classe de problemas.
3. Evitar a pesquisa de soluções inexistentes. Ex: Hilbert em 1901.
Computabilidade e Modelos de Computação Capacidade computacional plena
(computabilidade): surge no momento em que a linguagem de máquina, na qual o programa é construído, permite a construção de sentenças suficientemente poderosas (programas P0), cuja a execução permite a entrada de dados na linguagem abstrata, onde essa linguagem abstrata torna-se tão poderosa quanto L0.
Os primeiro modelos de computabilidade, foram com:
1. Kurt Göedel - funções recursivas. 2. Alonso Church - lambda-calculus.3. Alan Turing – Máquina de Turing.
Máquina de Turing
Linguagens Formais e Autômatos Teoria das linguagens formais e dos
autômatos: Início: Aplicações mais recentes: animações,
hipertextos e hipermídias e em linguagens não -lineares (planares, espaciais, n-dimensionais).
Linguagens formais e Autômatos As linguagens formais são
mecanismos p/ representação e especificação de linguagens baseado na TC. As principais representações podem ser:
1. Reconhecedores.2. Geradores.
Objetivo da LFA?
ALUNO:
JONATHAS SANTOS DA SILVALost171.blogspot.com
Análise de Algoritmos e Complexidade Computacional
Análise de Algoritmos E Complexidade Computacional
Análise de Algoritmos
Determina os recursos necessários para executar um dado algotimo;
A eficiência ou complexidade de um algoritmo depende: Do tamanho do problema; Do número de passos necessários (complexidade temporal); Da complexidade espacial ou de memória do sistema usado
para executar o algoritmo. Esta disciplina faz parte da mais vasta teoria da
complexidade computacional, que permite fazer estimativas quanto aos recursos necessários para que um algoritmo resolva um determinado problema computacional
Análise de Algoritmos E Complexidade Computacional
Complexidade Computacional
A Complexidade de um algoritmo consiste na quantidade de "trabalho" necessária para a sua execução, expressa em função das operações fundamentais, as quais variam de acordo com o algoritmo, e em função do volume de dados.
Se divide em dois tipos: Espacial Temporal
São usadas três perspectivas no estudo da complexidade algorítmica.
Melhor caso - Ω( ) Caso médio - θ( ) Pior caso - O( )
Lógica e Semântica de Programas
Lógica de Programas Muitos programadores preferem preparar um programa
iniciando com um diagrama de blocos para demonstrar sua linha de raciocínio lógico. Esse diagrama, denominado fluxograma.
A técnica mais importante no projeto da lógica de programas é chamada programação estruturada, a qual consiste:
Agilizar a codificação da escrita da programação; Facilitar a depuração da leitura da mesma; Permitir a verificação de possíveis falhas apresentadas
pelos programas; Facilitar as alterações e atualizações dos programas;
Lógica e Semântica de Programas
Semântica de Programas
Semântica se referia ao estudo de como palavras mudam o seu significado.
Atualmente: designar o estudo da relação existente entre palavras e sentenças de uma linguagem (falada ou escrita) e seus significados.
Áreas: lingüística (e filosofia), lógica matemática, linguagens de programação.
Os objetivos do estudo de semântica de linguagens de programação são bastante diferentes daqueles de semântica para linguagens naturais ou lógica matemática, mas ainda assim existe uma interseção nos métodos utilizados.
Lógica e Semântica de Programas
Design de uma linguagem de programação = gramática + semântica para essa gramática.
Considere o exemplo (em inglês):Time flies like an arrow.Fruit flies like a banana.
Na primeira sentença, “flies" é um verbo, enquanto que na segunda é um substantivo. Ou seja, é impossível construir uma semântica para a língua inglesa baseada apenas na sua gramatica.
Lógica e Semântica de Programas
Programas bem taipados, assim como os tipos usados nesses programas, possuem significado. Existem métodos formais usados na definição da semântica de linguagens de programação. Duas diferentes abordagens são usualmente empregadas:
Semântica denotacional.
Semântica operacional.
ALUNO:
ÍCARO DA SILVA TÔRRESLost171.blogspot.com
Matemática da Computação e Modelos Analíticos e de Simulação
Matemática da Computação
Área que trata do desenvolvimento de modelos matemáticos, problemas complexos, e métodos numéricos de obtenção de soluções.
Colabora na solução de problemas das ciências exatas e de outras áreas quaisquer. No Brasil colabora fortemente com a computação científica, com três centros de estudo avançado
Para quê estudar?: para desenvolver programas que aplicando a matemática simbolicamente, resolvam problemas de interesse cientifico ou computacional de maneira exata.
Centros de Estudo e atuações
Na UFMG(com um curso de graduação), em Belo Horizonte.
Na Unicamp(com o curso de matemática aplicada e computacional), em Campinas
Na USP de São Carlos.
Possui integração com a Modelagem Computacional
Atua na interface com outras ciências
Matemática Simbólica
O uso de computadores na utilização de símbolos (simbólica) de equações e expressões, em oposição à manipulação de aproximações a quantidades numéricas específicas representadas pelos símbolos
Funcionalidades: Integração, diferenciação, substituição e simplificação de
expressões, derivação e outras funções matemáticas podem ser realizadas com esses softwares.
Alem de Testes de software sob o título de “execução simbólica” usado para analisar se e quando o código pode ter erros e para prever o que partes desse código iram fazer com inputs e outputs especificados nos testes.
Sistema de álgebra computacional
Há vários softwares para matemática simbólica, normalmente chamados sistemas de álgebra computacional
Um sistema de álgebra computacional é um programa que facilita o cálculo na matemática simbólica.
Normalmente, os sistemas incluem:
Precisão aritmética arbitrária (bignum)Motor de manipulação simbólica Facilidades gráficasSubsistema de álgebra linearLinguagem de programação de alto nívelSistema de composição para expressões matemáticas
Historia desses softwares
O seu aparecimento começou na década de 1970 e evoluíram a partir de pesquisas para inteligência artificial. Reduce, Macsyma e Derive foram os primeiros a se popularizarem. Atualmente os líderes do mercado desses softwares são Maple e Mathematica, muito usados por pesquisadores e cientistas de várias áreas.
Um desses softwares comerciais, o MuPAD, foi um que ofereceu uma versão grátis para pesquisa não comercial e uso educacional (com sua interface e funções restritas).
Alguns desses softwares atuam em áreas específicas, de interesse de seus desenvolvedores, que comumente são estudantes, e geralmente esses softwares são gratuitos.
Softwares de Matemática Simbólica e suas funções
Uso genérico Comercial Maple Mathematica MATLAB Software gratuito Scilab GNU Octaver Maxima geometria algébrica, computações polinomiais: Macaulay SINGULAR Teoria de grafos VEGA álgebra, teoria de grupos Magma Teoria numérica: PARI-GP gratuito calculadoras com sistemas de álgebra TI-92 (baseado em tecnologia Derive) HP 49G+
29
Exemplos gráficos
Gráfico feito com Mathematica Superfície feita usando MATLAB
com as condições iniciais:dsolve( {diff(y(x),x,x) - 3*y(x) = x, y(0)=1, D(y)(0)=2}, y(x) );
Exemplo de código Maple
Scilab - exemplo 3d.
Captura de tela no GNU Octave
Algumas Aplicações
Exemplos de Exibição de resultados
Gráfico 2D
Gráfico 3D
Gráfico de Superfície
Modelos analíticos e de Simulação
Para prever o desempenho de um sistema cliente/servidor, é necessário decidir o modelo que melhor o representa.
Conceitos
Analíticos são fórmulas que definem de forma exata ou aproximada o comportamento do sistema
Simulação são algoritmos ou procedimentos que representam o comportamento do sistema em uma escala de tempo.
O modelo de desempenho ao nível de sistema O modelo de desempenho ao nível de componentes
Níveis de detalhamento. Dentre os níveis possíveis destacam-se dois:
Modelo de desempenho ao nível de Sistema
É modelado como uma “caixa preta”.
Nível de explicitação sobre o sistema é baixo.
É analisado como um conjunto de componentes realizando a analise do funcionamento geral sem alto rigor de detalhes por componentes.
Realiza analise dos componentes simultaneamente.
Modelo de desempenho ao nível de Componentes
Considera diferentes recursos do sistema e o modo como eles são usados pelas diferentes requisições.
Discos e redes são explicitamente considerados pelo modelo, mais preciso sobre o sistema e mais lento.
Cada recurso do sistema representa uma fila.
Para filas limitadas, pode se analisar a partir das equações que representam o tempo de espera e o tamanho da fila.
ALUNO:
DOMÊNICO MEDEIROS TRAVÁLIALost171.blogspot.com
Engenharia de Software e Banco de Dados
Áreas de Engenharia de Software
Requisitos de Software Projeto de Software Implementação de Software Testes de Software Manutenção de Software Gerência de Configuração Métodos e Ferramentas de Engenharia de Software Qualidade de Software
Áreas de Banco de Dados
Banco de Dados Distribuídos Banco de Dados Geográficos Banco de Dados Hierárquico Banco de Dados Orientado a Objetos
ALUNO:
JOÃO GERALDO DE SANTANA OLIVEIRALost171.blogspot.com
Sistemas de Informação
Sistemas de Informação
Sistemas de Informação: É o termo para descrever um sistema automatizado, q
estende a pessoas, máquinas e métodos organizados para coletar, processar, transmitir e disseminar dados q representam informação ao usuário.
Área de conhecimento;
Foco;
Sistemas de Informação
Componentes de um SI
Sistemas de Informação
Classificassão dos SI baseado em TI de acordo com a informação processada:1. Sistemas de Informação operacionais.2. Sistemas de Informação gerencial.3. Sistemas de Informação estratégico.
Sistemas de Informação
Apoioàs
Estratégiaspara Vantagem
Competitiva
Apoio à Tomadade DecisãoEmpresarial
Apoio às Operações e aos Processos
Tipos de Sistemas de Informação
GRUPOS
ASSISTIDOS
Nível
Estratégico
Gerentes
Seniores
Nível Gerencial
Gerentes de Nível
Médio
Nível Operacional
Vendas e
Marketing
Produção Finanças Contabilidade Recursos
Humanos
Ajudam gerentes seniores no planejamento de longo prazo
SAD – Sistemas de Apoio à Decisões
Gerentes
Operacionais
SIE – Sistemas de Informações Executivas
Ajudam gerentes de nível médio a monitorar e controlar
SIG – Sistemas de Informações Gerenciais
Ajudam os gerentes operacionais a monitorar atividades diárias.ST – Sistemas Transacionais
Sistemas de Informação
Sistemas Transacionais(sistemas de informação
operacional) Coletar dados existentes nos documentos da
organização. Ordenar esses dados afim de facilitar o acesso a
eles. Permitir consulta aos dados detalhados ou
agregados. Gerar relatórios p/ auditoria e fiscalização.
Sistemas de Informação Gerenciais Fornecer informações p/ o planejamento operacional,
tático e até mesmo estratégico da organização. Fornecer um conj. de relatórios resumidos sobre o
desempenho da organização.
Sistemas de Informação
Integrar dados de diversas aplicações e transformar em informação.
Entrada: alto volume de dados. Saída: relatórios e sumários executivos.Ex.: Orçamento anual de uma organização.
Sistemas de Informação Executivas(sistemas de informação
estratégico) Promover informações de modo acessível, sem precisar
que o executivo seja um especialista em análise e modelo de dados.
Gerar mapas, gráficos e dados que possam ser submetidos à análise estatística p/ dar aos executivos informações comparativas fáceis de se entender.
Sistemas de Informação
Nível estratégico. Entrada: dados agregados. Saída: projeções. Usuário: Gerentes Seniores.Ex.: Plano operacional quinquenal.
Sistemas de Informação
Sistemas de Informação
1. Pós-graduação em segurança de SI.2. Pós-graduação em gestão da segurança da
informação.3. Pós-graduação em Tecnologia e sistemas de
informação.4. MBA em SI.5. Especialização em projetos e desenvolvimento
de sistemas em ambientes mainframe.6. Especialização em redes e segurança de
sistemas.
ALUNO:
JONATHAS SANTOS DA SILVALost171.blogspot.com
Linguagem de Programação e Processamento Gráfico
Linguagens de Programação
Uma linguagem de programação é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador
O conjunto de palavras compostos de acordo com essas regras, constituem o código fonte de um software. Esse código fonte é depois traduzido para código de máquina, que é executado pelo processador.
Linguagens de programação são ferramentas importantes para que programadores e engenheiros de software possam escrever programas mais organizados e com maior rapidez.
Processamento Gráfico
Esta cadeira possui duas áreas distintas: Processamento de Imagens e Computação Gráfica.
Na primeira área, são estudados os principais algoritmos para tratamento de imagens, ruídos e filtros, especialmente.
A segunda área ensina como é realizada a síntese de imagens: transformações espaciais (rotações, translações, escalas), algoritmos de rasterização, modelos de iluminação, tratamento de colisão, etc.. É analisado o pipeline gráfico 2D e 3D.
ALUNO:
DOMÊNICO MEDEIROS TRAVÁLIALost171.blogspot.com
Software Básico
Áreas de Software Básico
O que são Sistemas Operacionais? É um programa de computador, que após o
processo de boot da maquina, realiza 2 tarefas básicas:
O que são Sistemas Operacionais? 1.Gerencia os recursos de HW de forma que
sejam utilizados da melhor e mais simples forma possível.
2.Promovem as funções básicas para que programas passam ser escritos com maior facilidade, de modo que os programas não precisem conhecer detalhes do HW para poder funcionar.
Áreas de Software Básico
Áreas de Software Básico
Áreas de Software Básico
Então O que é Software Básico?É uma camada de software que trabalho em um nível intermediário de acesso com o Sistema Operacional.
Áreas de Software Básico
O que é Software Aplicativo?São as ferramentas desenvolvidas utilizando as funcionalidades disponíveis pelo SO operacional para executar tarefas a fim.
Áreas de Software Básico
ALUNO:
ÍCARO DA SILVA TÔRRESLost171.blogspot.com
Hardwares e Arquiteturas de Sistemas de Computação
Hardwares
Para quê estudar?: Estudamos Hardwares para conhecermos o funcionamento dos recursos físicos dos sistemas, suas funções, seus variados tipos de uso, controle e manutenção.
Conceito: Os Hardwares são dispositivos físicos que manipulam dados na forma digital, o que proporciona uma maneira confiável de representação e transmissão de dados
“Um sistema computacional é um conjunto de circuitos eletrônicos interligados, (os Hardwares)”.
São agrupados em três subsistemas básicos (Unidades funcionais). São elas:
CPU (processador): o cérebro de todo sistema computacional. É a unidade lógica e aritmética de processamento. Memórias: dispositivos removíveis ou rígidos responsáveis por armazenar temporariamente ou em definitivo os dados trabalhados pelo sistema.Dispositivos de entrada e saída: os meios de comunicação entre máquina e usuário, onde o mesmo entra com informações ou comandos e recebe as respostas por tais.
Hardwares
Conexão de hardware O computador precisa de conexões físicas que permitem seus
componentes de hardware se comunicar e se relacionar entre eles. O barramento constitui um sistema comum de interconexão, composto
por um conjunto de vias ou trilhas que coordenam e transportam as informações entre as partes internas e externas do computador.
Uma conexão para comunicação em série é feita através de um cabo ou grupo de cabos utilizados para transferir informações entre a CPU e um dispositivo externo como o mouse e o teclado, um modem, um digitalizador (scanner) e alguns tipos de impressora. Esse tipo de conexão transfere um bit de dado de cada vez, muitas vezes de forma lenta.
A vantagem da transmissão em série é que é mais eficaz a longas distâncias.
Vantagem: A vantagem de transmissão em série é que é mais eficaz a longas distâncias.
Arquiteturas de Computadores Definição: São os diferentes modos como os computadores são
produzidos e como são arquitetadas as interligações de seus componentes. Diz-se que são basicamente as divergências entre as fabricações dos computadores.
História: Com a crescente popularização dos computadores, surge a necessidade da interação de um equipamento com o outro, e com isso também a necessidade de se criar um padrão. Em meados de 1980, somente duas, das arquiteturas existentes até então, resistiram ao tempo e se tornaram populares. Foram: o PC (Personal Computer) em português Computador Pessoal, desenvolvido pela empresa IBM, e o Macintosh (ou apenas Mac como também é conhecido) desenvolvido pela Apple. Como o PC da IBM se tornou na época a arquitetura dominante, o padrão adotado para os computadores que conhecemos hoje se tornou o padrão da IBM.
Arquiteturas de Computadores
Arquitetura aberta: Foi Desenvolvida inicialmente pela IBM e é a mais aceita atualmente. Consiste em permitir que outras empresas fabriquem computadores com a mesma arquitetura.
Positivos ao usuário: Permite ao usuário maiores opções de configuração e o poder de montar seu próprio computador de acordo com necessidades e custos de cada usuário.
Negativos ao usuário : Os conflitos de hardware O computador funciona mais lento e com menor qualidade se comparado a computadores de arquitetura fechada.
Arquiteturas de Computadores Arquitetura fechada: Implica em, uma empresa fabricante de certa
arquitetura não permitir o uso da arquitetura por outras empresas, ou ter o controle sobre as empresas que fabricam computadores de sua arquitetura.
Positivos ao usuário : Os conflitos de hardware diminuem muito, faz o computador funcionar mais rápido e melhor.
Negativos ao usuário : O usuário fica restrito a produtos da empresa e não pode montar o seu próprio computador.
Nem uma nem outra: A Apple não pertence exatamente a uma arquitetura fechada, mas a ambas as arquiteturas, sendo a única empresa que produz computadores que podem correr o seu sistema operativo de forma legal, mas também fazendo parte do mercado de compatíveis IBM.
Arquiteturas de Sistemas
Conceito: O conjunto definido de instruções de máquina que fazem referências a detalhes como registores, modos de endereçamento e tipos de dados que caracterizam um processador e suas funcionalidades.
Para quê estudar? Estudamos Arquiteturas de Sistemas para conhecer melhor as disparidades entre as arquiteturas, suas características, seus problemas, qual arquitetura usar para fazer um programa, em qual arquitetura atuará um programa desejado e como fazer isso tudo.
Características: quantidade de instruções, Modo de endereçamento, tipos de dados, funcionalidades.
Cada processador possui uma arquitetura, definida pelo seu fabricante.
Compatibilidade: Um programa não pode ser executado em outra máquina de arquitetura diferente da que foi programado para atuar, pois instruções de um processador é característica específica de cada arquitetura e os comandos funções e resultados não seriam compatíveis entre elas.
Arquitetura RISC
A sigla RISC vem da expressão em inglês (Reduced Instrution Set Computer) e significa Conjunto Computacional de Instruções Reduzidas.
Características: Possui poucas instruções de máquina, bastante simples, executadas diretamente pelo hardware. Maioria não acessa a memória principal, trabalha principalmente com registradores, que se apresentam em grande número neste tipo de processador.
Facilidades: permitem que as instruções sejam executadas rapidamente, facilitam a implementação da técnica de pipelining*.
Pipelining refere-se à técnica que permite ao processador executar várias instruções em diferentes etapas.
Arquitetura CISC
A sigla CISC vem da expressão em inglês (Complex Instrution Set Computer) e é traduzida como Conjunto Computacional de Instruções Complexas.
Características: possuem instruções complexas que são interpretadas por microprogramas. O número de registradores é pequeno e qualquer instrução pode referenciar a memória principal.
Complicações: as instruções demoram mais para serem executadas e a implementação da técnica de pipelining* é mais difícil.
Pipelining refere-se à técnica que permite ao processador executar várias instruções em diferentes etapas.
ALUNO:
JOÃO GERALDO DE SANTANA OLIVEIRALost171.blogspot.com
Teleinformática
Teleinformática
O que é a Teleinformática? Dados Analógicos. Dados Digitais.
Teleinformática
Teleinformática
Objetivo do estudo da teleinformática: Dar a teoria e prática necessária p/ lidar com
transmissão de dados, softwares operacionais, placas de rede, swiches, modens, sistemas de rádio e TV, satélites, fibras ópticas.
Desenvolve projetos e análise de sistemas em empresas da área de teleinformática.
Habilidade de gerenciamento em redes de computadores
ALUNO:
DOMÊNICO MEDEIROS TRAVÁLIALost171.blogspot.com
Evolução Acadêmica e Pós-Graduações
Evolução Acadêmica
Graduação Bacharelado Licenciatura
Pós-Graduação Lato Sensu
Especialização Stricto Sensu
Mestrado Doutorado
Especialização
O que é Lato Sensu? O que é Especialização?
Mestrado
O que é Stricto Sensu? O que é Mestrado? Para que serve? O que é Mestrado Acadêmico? O que é Mestrado Profissionalizante? Qual a diferença entre o Mestrado Acadêmico e o
Mestrado Profissionalizante? Há possibilidade de Migração entre o Mestrado
Acadêmico e o Mestrado Profissionalizante?
Mestrado
Como é o processo de admissão? Qual é a documentação necessária? Qual é a função do orientador de programa? Qual é função do orientador de dissertação? Qual é o tempo mínimo e máximo para terminar o
Mestrado?
Doutorado
Qual a diferença entre um Mestrado e um Doutorado?
Qual é o tempo mínimo e máximo para terminar o Doutorado?
O que é Doutorado Direto? O que é Doutorado Sanduíche?
That’s All!!
Lost171.blogspot.comLOST171
top related