MAB-353 Computadores e Programação (DCC/UFRJ)
|
|
- Margarida Lacerda Madeira
- 8 Há anos
- Visualizações:
Transcrição
1 MAB-353 Computadores e Programação (DCC/UFRJ) Aula 1:
2 1 Objetivos e ementa Metodologia Material bibliográfico 2 Motivação para a disciplina A linguagem dos computadores 3 Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores 4
3 Objetivos e página da disciplina Objetivos e ementa Metodologia Material bibliográfico Objetivos Apresentar uma visão concisa dos sistemas de computação sob a perspectiva de programação; Compreender como programas escritos em linguagens de alto-nível são traduzidos em linguagem de máquina e como o computador executa esses programas; Compreender o processo de montagem, ligação e carga de programas de computador; Aprender técnicas que permitam melhorar o desempenho e robustez dos programas de computador. Página da disciplina
4 Ementa da disciplina Objetivos e ementa Metodologia Material bibliográfico Estrutura dos computadores: principais elementos de hardware e software; Representação e manipulação da informação: técnicas de endereçamento, e representação de inteiros e reais; Codificação simbólica e montadores; Linguagem de montagem para a arquitetura IA32 Compilação de código de montagem com linguagem C Medidas contra vulnerabilidades de estouro de memória Controle de fluxo e sinais entre programas e sistema operacional Segmentação e ligação de programas; X86-64: estendo a arquitetura IA32 para 64 bits (caso haja tempo)
5 Objetivos e ementa Metodologia Material bibliográfico Metodologia de trabalho e atendimento extra-classe Método de ensino e atividades discentes Explanação dos tópicos de estudo, resolução de exercícios, laboratórios As atividades discentes incluirão: Participação nas aulas e estudo de material suplementar Resolução de exercícios propostos (teóricos e práticos) Atendimento professor Terças e Quintas, de 15:00h às 17:00h (sala E-2208 NCE)(ou agendando) Lista da disciplina para esclarecimento de dúvidas e recebimento de informações mab @googlegroups.com
6 Objetivos e ementa Metodologia Material bibliográfico Instrumentos de acompanhamento e avaliação P 1, P 2, P s, L (média das listas) Falta em prova por motivo justo (com atestado médico ou justificativa no prazo de 5 dias após a prova), a nota da P s poderá ser usada para substituir quaisquer destas duas provas, sabendo que esta prova substitutiva cobrirá toda a matéria Critério para aprovação: N f = [P 1 + P 2 + P s minimo(p 1, P 2, P s)]/2 0, 75 + L 0, 25 5, 0 Será passada a lista de presença em sala para controle apenas, mas durante a aula poderão ser dados bônus ou exercícios de avaliação sem aviso prévio Freq. mínima de 75% será necessária para aprovação, seguindo a norma da UFRJ Quem já tiver passado direto sem P s poderá tentar melhorar a média fazendo a P s, sem risco de dimininuição de nota final já alcançada. A nota final será dada pelo cálculo que melhor beneficiar o aluno.
7 Bibliografia Sumário Objetivos e ementa Metodologia Material bibliográfico 1 Computer Systems - A Programmer s Perspective, R. E. Bryant e D. R. O Hallaron, 2ed, Prentice Hall, (livro base) 2 The C Programming Language, B. Kernighan e D. Ritchie, 2ed, Prentice Hall, 1988.
8 Ponteiros na Web Objetivos e ementa Metodologia Material bibliográfico Livro base - csapp.cs.cmu.edu Lista de discussão:
9 Motivação para a disciplina A linguagem dos computadores Motivação para a área de Computação A Terceira Revolução A Computação permitiu a terceira revolução da civilização revolução da agricultura revolução industrial revolução da informação Novos caminhos de investigação científica: cientistas da computação em conjunto com cientistas teóricos e experimentais na exploração de novas fronteiras em astronomia, biologia, medicina, física, etc; Computadores onipresentes: em automóveis, em celulares, nas organizações, nas construções civis, no corpo humano, etc.
10 Motivação para a disciplina Motivação para a disciplina A linguagem dos computadores Conhecer os princípios básicos da computação O aprendizado em Ciência da Computação deve introduzir os princípios que são os alicerces da computação ( o que é computável? ), e refletir o estado atual da área Compreender a relação entre hardware e software As tecnologias de computação modernas requerem profissionais que compreendam a relação entre hardware e software Compreender o impacto do hardware no desempenho dos sistemas O desempenho dos sistemas de software são afetados pela maneira como os projetistas de software compreendem as técnicas de hardware básicas
11 Motivação para a disciplina A linguagem dos computadores Passos para rodar um programa de computador Aplicações usuais (como um processador de texto ou um banco de dados) contêm milhões de linhas de código...mas o hardware do computador é capaz de executar apenas um conjunto simples e limitado de instruções Traduzir instruções complexas em instruções que a máquina entende requer várias camadas de software
12 Conhecer os passos envolvidos ajuda Motivação para a disciplina A linguagem dos computadores Otimizar o desempenho de um programa Comando SWITCH (ou CASE) mais eficiente do que uma sequência de comandos IF-ELSE? Qual o overhead de uma chamada de rotina? Um loop WHILE seria mais eficiente do que um loop FOR? Com uma função pode rodar mais rápido pela alteração de parênteses em exp. aritmética? Compreender os erros em link edição Listar bibliotecas em ordem diferente na linha de comando é crítico? Por que erros de link edição só aparecem durante a execução?
13 Conhecer os passos envolvidos ajuda Motivação para a disciplina A linguagem dos computadores Evitar falhas de segurança Conhecer como a informação é armazenada previne vulnerabilidades devidas a overflow e estouro de pilha, entre outras.
14 Falando com o computador Motivação para a disciplina A linguagem dos computadores Código binário Computadores executam instruções e entendem apenas dois sinais (bits): 0 e 1 (ligado ou desligado) Instruções para o computador são sequências de bits, ex., é uma instrução para adicionar dois números Os primeiros programadores comunicavam-se com os computadores em linguagem de números binários Como era uma tarefa muito tediosa, rapidamente inventaram uma nova notação (mais próxima da linguagem humana) que era traduzida para o código binário
15 Falando com o computador Motivação para a disciplina A linguagem dos computadores Linguagem de montagem O primeiro programa projetado com a finalidade de traduzir notações (símbolos) para código binário foi chamado montador (assembler) ex., adda, B > O nome dado a essa linguagem simbólica foi linguagem de montagem (assembly)...em contraste, a linguagem que a máquina entende é chamada linguagem de máquina
16 Falando com o computador Motivação para a disciplina A linguagem dos computadores Linguagens de alto nível A linguagem de montagem ainda está longe de ser uma notação simples e fácil de se expressar Cada instrução de máquina requer uma linha de código de montagem (força o programador a pensar como o computador) Essa dificuldade impulsionou a criação das linguagens de programação de alto nível (ex., Fortran, C, Java, Pascal, Python, Lua) e de compiladores que traduzem programas nessas linguagens para instruções que a máquina entende
17 Motivação para a disciplina A linguagem dos computadores Exemplo de programa em C e sua tradução em Assembly
18 Falando com o computador Motivação para a disciplina A linguagem dos computadores Vantagens das linguagens de alto nível 1 Independência dos programas em relação às instruções de um máquina específica (compiladores e montadores fazem a tradução) 2 Aumento da produtividade do programador (instruções mais compactas e complexas) 3 Possibilidade de projetar linguagens para uso específico (ex., Fortran, para computação científica; Lisp, para manipulação de símbolos)
19 Falando com o computador Motivação para a disciplina A linguagem dos computadores Hardware por trás dos programas Para oferecer abstrações de nível mais alto (demanda sempre crescente), é preciso profissionais aptos a transformar essas abstrações em funções básicas que o hardware é capaz de executar: entrada, armazenamento, processamento e saída de dados ( máquina de Turing )
20 Formas de representar grandezas físicas Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Representação analógica versus representação digital As grandezas físicas são representadas na forma analógica (quantidade proporcional ao valor em questão) ou na forma digital (conjunto de dígitos representando faixas de valores) A representação analógica varia de forma contínua, enquanto a representacao digital varia de forma discreta
21 Representação digital Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Vantagens da representação digital Sistemas digitais são mais simples pois consideram valores exatos mas faixas de valores distintos Operar e manusear valores digitais é MUITO mais simples do que valores analógicos Permite maior confiabilidade pois os valores digitais não são facilmente corrompidos por flutuações aleatórias (ruídos) no circuito eletrônico (o oposto do circuito analógico) Desvantagens da representação digital A principal limitação da representação e das técnicas digitais é que o mundo real é analógico em grande parte!
22 O computador é um sistema digital Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Um sistema digital é constituído de circuitos eletrônicos que processam informação usando apenas dígitos (binários) para implementar as suas operações e cálculos Um equipamento digital deve executar as seguintes tarefas: 1 codificar a informação do nosso cotidiano para a linguagem binária que será compreendida pelo sistema digital (conversor analógico-digital) 2 executar as operações e cálculos necessários usando a numeração binária 3 retornar a resposta do processamento no formato compreensível pelo usuário (conversor digital-analógico)
23 O que é um computador digital? Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Uma combinação de dispositivos e circuitos digitais que podem realizar uma sequência programada de operações com mínima intervenção humana O que é um programa? Conjunto de instruções codificadas e armazenadas na memória do computador juntamente com os dados necessário para a sua execução Como um computador executa um programa de instruções? Executando as instruções através de uma arquitetura específica
24 Como os computadores pensam? Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Os computadores não pensam! O programador do computador fornece um programa com instruções e dados que especificam cada detalhe sobre o que fazer e quando fazer O computador é simplesmente uma máquina muito rápida que processa as instruções de um programa
25 Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Como um sistema computacional básico é organizado? A partir de unidades lógicas: 1 dispositivos de armazenamento (memória, registradores) 2 unidade processadora capaz de executar operações básicas (operações matemáticas, de armazenamento, de transferência de dados) 3 circuito lógico de controle capaz de decodificar um comando e acionar os sinais binários que controlarão a operação dos demais elementos do sistema
26 O que um computador pode fazer? Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Os modos de operação internos são surpreendentemente simples (e limitados): Movimentação de dados Execução de operações binárias Cada comando de um programa pode envolver uma ou mais operações básicas O grupo de instruções básicas de um computador é chamado conjunto de instruções de máquina As instruções de máquinas variam em número de bytes e os dados manipulados variam dependendo do tipo (integer, float, double, etc) Para cada instrução de máquina existe uma sequência de sinais de controle capaz de executá-la em um ou mais ciclos do relógio da máquina Abstração entre a arquitetura e o conjunto de instruções Arquiteturas de computadores implementadas de forma diferente podem suportar um mesmo conjunto de instruções de máquina
27 Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Quais são os componentes centrais de um computador? 1 Circuitos de entrada e de saída (I/O) (interface com o mundo externo) 2 Memória (armazenamento de instruções e dados, organizada como um conjunto linear de bytes) 3 Via de dados ou barramentos (caminhos percorridos pela informação durante o processamento) 4 Unidade Lógica e Aritmética (ALU ou ULA) 5 Unidade de controle (contém circuitos lógicos e de temporização que geram sinais apropriados e necessários para executar cada instrução do programa) 6 Contador de programa ou PC (Program Counter) (contém o endereço da instrução corrente em linguagem de máquina (aponta para o primeiro byte da instrução em memória)
28 Arquitetura de um microprocessador Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores 1 Fonte: 1
29 Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores A Unidade Central de Processamento (CPU ou UCP) Em geral um microprocessador contendo: vias de dados, ULA, registradores e unidade de controle Operações de uma CPU básica 1 operações registrador/registrador Lê conteúdo de registradores como entrada para a ULA e o resultado é armazenado em outro registrador 2 operações de carga Transfere dados da memória para registradores 3 operações de armazenamento Transfere dados de registradores para a memória
30 Como usamos o computador? Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Inicialmente, rodamos o Sistema Operacional (SO) que é a interface entre o usuário e o hardware A ação de iniciar um programa/aplicativo começa com o carregamento do programa, do disco para a memória do computador via DMA e a especificação do endereço da primeira instrução Direct Memory Access DMA Permite I/O direto entre disco e memória sem uso da CPU Carrega na interface endereço de carga na memória e especifica bloco de informação a ser transferido do disco Barramentos de I/O ficam ocupados durante operação de DMA, mas a CPU fica livre para continuar o processamento
31 Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Exemplo de transferência entre disco e memória via DMA 2 Fonte: 2
32 Ciclo básico de operação Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Processador lê da memória a instrução apontada pelo PC Executa as operações básicas ditadas pela instrução Atualiza o PC para apontar para a próxima instrução (que pode não ser contígua à instrução que acabou de ser executada Registradores Alguns registradores são específicos do sistema como o PC e outros são de uso geral e podem ser acessados via programação
33 Execução de uma instrução Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores Requer um ou mais ciclos de máquina Passos da execução Endereçar a memória apontada pelo PC Carregar (LOAD) registradores com instrução e operandos buscados da memória Operar sobre os registradores Armazenar resultado (STORE) na memória Incrementar PC para apontar para a próxima instrução (incremento pode depender da execução da instrução
34 Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores O que torna o computador uma ferramenta tão versátil? O fato da sua lógica interna não ser acessível externamente...em vez disso é possível controlar o que acontece dentro do microprocessador pelo programa de instruções colocado na memória Altera-se o programa e não os circuitos eletrônicos!
35 Sistemas digitais Perguntas para começarmos o nosso estudo Arquitetura e organização dos computadores O que torna essa disciplina tão interessante? Apresenta os sistemas de computação de uma perspectiva de programação, permitindo que os programadores usem o conhecimento adquirido para escrever programas melhores e mais robustos Oferece uma base importante de conhecimento para outros conteúdos: Compiladores, Sistemas Operacionais, Arquitetura de computadores, Sistemas Embutidos..e ainda é muito divertida!!!.. 0
36 Computer Systems - A Programmer s Perspective, R. E. Bryant e D. R. O Hallaron, 2ed, Prentice Hall, (Capítulo 1) Outras fontes para consulta: 1 Sistemas Digitais: uma abordagem integrada, John P. Uyemura, Thomson-Pioneira, Sistemas Digitais: princípios e aplicações, Ronald J. Tocci and Neal S. Widmer, Prentice-Hall, 8ed., Computer Organization and Design The Hardware/Software Interface, D. Patterson and J. Hennessy, Morgan Kaufmann, 2009
Organização e Arquitetura de Computadores I. Introdução. Ivan Saraiva Silva Leonardo Casillo
Organização e Arquitetura de Computadores I Introdução Ivan Saraiva Silva Leonardo Casillo Sumário Introdução Bibliografia Recomendada O que é um computador Organização de um Computador Modelo de Von Neumann
Leia maisFigura 1 - O computador
Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...
Leia maisComponentes do Computador e. aula 3. Profa. Débora Matos
Componentes do Computador e modelo de Von Neumann aula 3 Profa. Débora Matos O que difere nos componentes que constituem um computador? Princípios básicos Cada computador tem um conjunto de operações e
Leia maisIntrodução à Arquitetura de Computadores
1 Introdução à Arquitetura de Computadores Hardware e software Organização de um computador: Processador: registradores, ALU, unidade de controle Memórias Dispositivos de E/S Barramentos Linguagens de
Leia maisARQUITETURA DE COMPUTADORES - 1866
7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um
Leia maisSoftware Básico (INF1018)
Software Básico (INF1018) http://www.inf.puc-rio.br/~inf1018 Noemi Rodriguez (noemi@inf.puc-rio.br) Ana Lúcia de Moura (amoura@inf.puc-rio.br) 1 Objetivo do curso Entender como funciona um computador típico,
Leia maisArquitetura de Computadores. Ivan Saraiva Silva
Arquitetura de Computadores Introdução Ivan Saraiva Silva Sumário Introdução Bibliografia Recomendada O que é um computador Organização de um Computador Modelo de Von Neumann IAS Máquina de Von Neuman
Leia mais1.1. Organização de um Sistema Computacional
1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes
Leia maisTais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.
Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:
Leia maisIntrodução. Introdução. Introdução. Organização Estruturada de Computadores. Introdução. Máquinas Multiníveis
Ciência da Computação Arq. e Org. de Computadores Máquinas Multiníveis Prof. Sergio Ribeiro Computador digital máquina que resolve problemas executando uma série de instruções. Programa conjunto de instruções
Leia maisComputadores de Programação (MAB353)
Computadores de Programação (MAB353) Aula 19: Visão geral sobre otimização de programas 06 de julho de 2010 1 2 3 Características esperadas dos programas O primeiro objetivo ao escrever programas de computador
Leia maisOrganização e Arquitetura de Computadores I. de Computadores
Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização Básica B de Computadores
Leia maisARQUITETURA DE COMPUTADORES. Rogério Spindula Rosa
ARQUITETURA DE COMPUTADORES 1 Rogério Spindula Rosa 2 EXECUÇÃO DE PROGRAMAS PROGRAMA 3 4 INTRODUÇÃO Hoje é raro escrever um programa diretamente em linguagem de computador em virtude da enorme dificuldade
Leia maisUnidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01
Unidade Central de Processamento (CPU) Processador Renan Manola Introdução ao Computador 2010/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória Principal
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Fernando Fonseca Ramos Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros 1 Metodologia da Disciplina 1-Objetivo 2-Competências
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 3 Software Prof.: Edilberto M. Silva http://www.edilms.eti.br SO - Prof. Edilberto Silva Barramento Sistemas Operacionais Interliga os dispositivos de E/S (I/O), memória principal
Leia maisCAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM
CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM 71 Introdução Difere dos níveis inferiores por ser implementado por tradução A tradução é usada quando um processador está disponível para uma mensagem fonte mas
Leia maisEdeyson Andrade Gomes
Sistemas Operacionais Conceitos de Arquitetura Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Máquinas de Níveis Revisão de Conceitos de Arquitetura 2 Máquina de Níveis Máquina de níveis Computador
Leia maisOrganização de Computadores Hardware
Organização de Computadores Hardware Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Computador Ferramenta
Leia maisIntrodução à Organização e Arquitetura de Computadores. Prof. Leonardo Barreto Campos 1
Introdução à Organização e Arquitetura de Computadores Prof. Leonardo Barreto Campos 1 Sumário Introdução; Evolução dos Computadores; Considerações da Arquitetura de von Neumann; Execução de uma instrução
Leia maisINTRODUÇÃO À PROGRAMAÇÃO BCC 201 TURMAS 31, 32 E 33 2015-2 AULA TEÓRICA 2 PROF. MARCELO LUIZ SILVA (R E D)
Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM INTRODUÇÃO À PROGRAMAÇÃO BCC 201 TURMAS 31, 32 E 33 2015-2 1 AULA TEÓRICA 2
Leia maisBARRAMENTO DO SISTEMA
BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade
Leia mais1. NÍVEL CONVENCIONAL DE MÁQUINA
1. NÍVEL CONVENCIONAL DE MÁQUINA Relembrando a nossa matéria de Arquitetura de Computadores, a arquitetura de Computadores se divide em vários níveis como já estudamos anteriormente. Ou seja: o Nível 0
Leia maisArquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados
Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Organização de um Computador Típico Memória: Armazena dados e programas. Processador (CPU - Central Processing
Leia maisCampus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com /
Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: ICO Aula N : 09 Tema: Unidade Central de
Leia maisALP Algoritmos e Programação. . Linguagens para Computadores
ALP Algoritmos e Programação Iniciação aos computadores. Linguagens para Computadores. Compiladores, Interpretadores. Ambientes de Programação 1 Linguagens para Computadores. Linguagem binária: Dispositivos
Leia maisCapítulo I : Noções Gerais
Capítulo I : Noções Gerais 1 Capítulo I : Noções Gerais Informática (Teoria da Informação): Ciência do tratamento e transmissão da informação. Computador: Sistema que permite armazenar grandes quantidades
Leia mais28/9/2010. Unidade de Controle Funcionamento e Implementação
Arquitetura de Computadores Unidade de Controle Funcionamento e Implementação Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Operação da Unidade de Controle Unidade de controle: parte do
Leia maisUnidade Central de Processamento Organização da UCP Execução de instruções em paralelo ("pipeline") Execução de programas
http://www.ic.uff.br/~debora/fac! Dar noções iniciais dos componentes básicos de um sistema de computador, assim também como conceitos fundamentais necessários para a manipulação de informação dentro do
Leia maisCapítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)
Capítulo 4 João Lourenço Joao.Lourenco@di.fct.unl.pt Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2007-2008 MARIE (Machine Architecture Really Intuitive and Easy) Adaptado dos transparentes
Leia maisIntrodução aos Computadores
Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas
Leia maisComponentes de um Computador: Modelo Von Neumann
Componentes de um Computador: Modelo Von Neumann Modelo de Von Neumann O nome refere-se ao matemático John Von Neumann que foi considerado o criador dos computadores da forma que são projetados até hoje.
Leia maisSistema de Computação
Sistema de Computação Máquinas multinível Nível 0 verdadeiro hardware da máquina, executando os programas em linguagem de máquina de nível 1 (portas lógicas); Nível 1 Composto por registrados e pela ALU
Leia maisLÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES
LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos
Leia maisVisão Geral de Sistemas Operacionais
Visão Geral de Sistemas Operacionais Sumário Um sistema operacional é um intermediário entre usuários e o hardware do computador. Desta forma, o usuário pode executar programas de forma conveniente e eficiente.
Leia maisINTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO
Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele
Leia maisDisciplina: Organização de computadores
Disciplina: Organização de computadores Professora: Carolina D. G. dos Santos E-mail: profcarolinadgs@gmail.com Página: profcarolinadgs.webnode.com.br Unip / Prof. a Carolina 1 à Computador Conceitos Básicos
Leia maisULA Sinais de Controle enviados pela UC
Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento
Leia maisARQUITETURA DE COMPUTADORES
ARQUITETURA DE COMPUTADORES Aula 08: UCP Características dos elementos internos da UCP: registradores, unidade de controle, decodificador de instruções, relógio do sistema. Funções do processador: controle
Leia maisMC102 Algoritmos e Programação de Computadores 2ª Aula Programa, entrada e saída de dados
MC102 Algoritmos e Programação de Computadores 2ª Aula Programa, entrada e saída de dados 1. Objetivos Falar sobre programa de computador, diferenciando programa em linguagem de máquina, de programa em
Leia maisIntrodução. INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br
Introdução INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br introdução Tópicos conceitos básicos o que é um programa um programa na memória decifrando um código referência Capítulo
Leia maisO que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador.
O que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador. Linguagem de Programação Uma linguagem de programação é um método padronizado para expressar
Leia maisEstrutura de um Computador
SEL-0415 Introdução à Organização de Computadores Estrutura de um Computador Aula 7 Prof. Dr. Marcelo Andrade da Costa Vieira MODELO DE VON NEUMANN PRINCÍPIOS A arquitetura de um computador consiste de
Leia maisHardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)
Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,
Leia maisArquitetura de Computadores - Revisão -
Arquitetura de Computadores - Revisão - Principais funções de um Sistema Operacional Componentes básicos da Arquitetura Barramentos Registradores da CPU Ciclo de Instruções Interrupções Técnicas de E/S
Leia maisInformática I. Aula 4. http://www.ic.uff.br/~bianca/informatica1/ Aula 4-11/09/2006 1
Informática I Aula 4 http://www.ic.uff.br/~bianca/informatica1/ Aula 4-11/09/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisCapacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB
Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha
Leia mais3. Arquitetura Básica do Computador
3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,
Leia maisA Unidade Central de Processamento é a responsável pelo processamento e execução de programas armazenados na MP.
A ARQUITETURA DE UM COMPUTADOR A arquitetura básica de um computador moderno segue ainda de forma geral os conceitos estabelecidos pelo Professor da Universidade de Princeton, John Von Neumann (1903-1957),
Leia maisComponentes básicos de um sistema computacional. Cap. 1 (Stallings)
Componentes básicos de um sistema computacional Cap. 1 (Stallings) 1 Sistema de Operação Explora recursos de hardware de um ou mais processadores Provê um conjunto de serviços aos utilizadores Gerencia
Leia maisLinguagem de Montagem Funcionamento de CPU e Assembly Rudimentar
Componentes de um Computador (5) Linguagem de Montagem Funcionamento de CPU e Assembly Rudimentar Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) 2007/01 - INF02597 Com slides de Roberta Lima Gomes
Leia maisDispositivos de Entrada e Saída
SEL-0415 Introdução à Organização de Computadores Dispositivos de Entrada e Saída Aula 9 Prof. Dr. Marcelo Andrade da Costa Vieira ENTRADA e SAÍDA (E/S) (I/O - Input/Output) n Inserção dos dados (programa)
Leia mais3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:
Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de
Leia maisArquitetura de Computadores 1
Prof. João Marcelo M Fernandes TANENBAUM, Andrew S. Organização Estruturada de computadores 4a Edição. Rio de Janeiro: Printice-Hall do Brasil, 2001 Agenda do Curso Organização estruturada de computadores
Leia maisArquitetura de Computadores. Tipos de Instruções
Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada
Leia maisIntrodução à Engenharia de Computação
Introdução à Engenharia de Computação Tópico: Organização Básica de um Computador Digital Introdução à Engenharia de Computação 2 Componentes de um Computador Computador Eletrônico Digital É um sistema
Leia maisProgramação de Computadores III
Programação de Computadores III Introdução a Linguagens de Programação Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157
Leia maisIntrodução à Programação 2006/07. Computadores e Programação
Introdução à Programação 2006/07 Computadores e Programação Objectivos da Aula Noção de computador. Organização Interna de um Computador Noção de Sistema Operativo. Representação digital de informação
Leia maisIntrodução à Informática
Introdução à Informática Aula 1 http://www.ic.uff.br/~bianca/introinfo/ Aula 1-31/08/2007 1 Objetivo da disciplina O objetivo dessa disciplina é dar ao aluno noções básicas de computação. Serão apresentados
Leia maisENIAC. Introdução aos Computadores e à Programação (Noções Básicas)
ENIAC Introdução aos Computadores e à ção (Noções Básicas) Introdução aos Computadores e à ção (Noções Básicas) 1 Introdução aos Computadores e à ção (Noções Básicas) 2 O transistor foi inventado em 1947
Leia mais1 - Processamento de dados
Conceitos básicos sobre organização de computadores 2 1 - Processamento de dados O que é processamento? O que é dado? Dado é informação? Processamento é a manipulação das informações coletadas (dados).
Leia mais1. CAPÍTULO COMPUTADORES
1. CAPÍTULO COMPUTADORES 1.1. Computadores Denomina-se computador uma máquina capaz de executar variados tipos de tratamento automático de informações ou processamento de dados. Os primeiros eram capazes
Leia maisNOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann
Universidade Federal de Santa Maria NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann O modelo (ou arquitetura) de von
Leia maisISL - Introdução. Sistema. Binário. Introdução. Tipos de Computador. Sub title text goes here. Unused Section Space 2. Unused Section Space 1
ISL - Introdução Sub title text goes here Introdução Tipos de Computador Sistema Computacional Processamento de Dados Arquitetura Sistema Binário Software Unused Section Space 1 Exercício Unused Section
Leia maisARQUITETURA DE COMPUTADORES
01001111 01110010 01100111 01100001 01101110 01101001 01111010 01100001 11100111 11100011 01101111 00100000 01100100 01100101 00100000 01000011 01101111 01101101 01110000 01110101 01110100 01100001 01100100
Leia mais3. O NIVEL DA LINGUAGEM DE MONTAGEM
3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também
Leia maisIntrodução à Arquitetura de Computadores IFES Campus Serra
Os computadores atuais possuem seis ou mais níveis de máquinas conforme podemos observar no quadro abaixo Nível de linguagem orientada para problemas Nível de linguagem de montagem Nível de sistema operacional
Leia maisSoftware. Professora Milene Selbach Silveira Prof. Celso Maciel da Costa Faculdade de Informática - PUCRS
Software Professora Milene Selbach Silveira Prof. Celso Maciel da Costa Faculdade de Informática - PUCRS ESQUEMA DE UM SISTEMA DE COMPUTADOR Unidades de Entrada - Teclado - Scanner - Caneta Ótica - Leitora
Leia maisCAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA
8 CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA A porta paralela, também conhecida por printer port ou Centronics e a porta serial (RS-232) são interfaces bastante comuns que, apesar de estarem praticamente
Leia maisAlgoritmos. Cláudio Barbosa contato@claudiobarbosa.pro.br
Algoritmos Partes básicas de um sistema computacional: Hardware, Software e Peopleware Hardware - Componentes físicos de um sistema de computação, incluindo o processador, memória, dispositivos de entrada,
Leia maisEntrada e Saída. Prof. Leonardo Barreto Campos 1
Entrada e Saída Prof. Leonardo Barreto Campos 1 Sumário Introdução; Dispositivos Externos; E/S Programada; E/S Dirigida por Interrupção; Acesso Direto à Memória; Bibliografia. Prof. Leonardo Barreto Campos
Leia maisSIS17-Arquitetura de Computadores
Sistema de Computação SIS17-Arquitetura de Computadores Apresentação da Disciplina Peopleware Hardware Software Carga Horária: 40 horas 2 Computadores atuais Unidade Central de Processamento Entrada Computadores
Leia maisArquitetura de Computadores Moderna
Arquitetura de Computadores Moderna Eduardo Barrére (eduardo.barrere@ice.ufjf.br) DCC/UFJF Baseado no material do prof. Marcelo Lobosco Agenda Visão Geral Objetivos do Curso Ementa Bibliografia Avaliações
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 5 - O NÍVEL DA LINGUAGEM DE MONTAGEM 1. INTRODUÇÃO É relativamente fácil compreender os fundamentos da programação de computadores, sob o ponto de vista da inteligibilidade dos comandos de alto
Leia maisRISC - Reduced Instruction Set Computer
Arquietura MAC 412- Organizãção de Computadores - Siang W. Song Baseado no livro de Tanenbaum - Structured Computer Organization Arquietura Índice 1 Avaliação da arquitetura CISC (microprogramada) Críticas
Leia maisInformática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1
Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisUNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Curso de Introdução à Informática Prof: Anilton Joaquim da Silva / Ezequiel Roberto Zorzal
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Curso de Introdução à Informática Prof: Anilton Joaquim da Silva / Ezequiel Roberto Zorzal AULA Informática: Aplicações e Benefícios Advocacia
Leia maisLP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br
LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de
Leia maisControladores Lógicos Programáveis CLP (parte-3)
Controladores Lógicos Programáveis CLP (parte-3) Mapeamento de memória Na CPU (Unidade Central de Processamento) de um CLP, todas a informações do processo são armazenadas na memória. Essas informações
Leia maisParte II Introdução a Linguagens de Programação
Programação de Computadores III Aula 1 Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2011.1/tcc-03.063 Roteiro da Aula
Leia maisSistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 03 Conceitos de Hardware e Software parte 01. Cursos de Computação
Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 03 Conceitos de Hardware e Software parte 01 Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed.
Leia maisMáquina Multinível. Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa.
Máquina Multinível Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa. Uma instrução pode ser definida como um comando para o processador.
Leia maisADMINISTRAÇÃO DOS RECURSOS DE HARDWARE E SOFTWARE
ADMINISTRAÇÃO DOS RECURSOS DE HARDWARE E SOFTWARE 1 OBJETIVOS 1. Qual é a capacidade de processamento e armazenagem que sua organização precisa para administrar suas informações e transações empresariais?
Leia mais1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos
1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos Já estudamos anteriormente que os processadores funcionam (ou melhor, o seu hardware funciona) através de ordens simples e básicas,
Leia mais3 Revisão de Software
1 3 Revisão de Software O software é indispensável para a utilização do hardware. Sem o software para utilizar o computador precisaríamos ter um profundo conhecimento do hardware. Alguns softwares são
Leia maisArquiteturas RISC. (Reduced Instructions Set Computers)
Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina
Leia maisOrganização Básica do Computador
Organização Básica do Computador Modelo de Von Neumann MEMÓRIA ENTRADA ARITMÉTICA LÓGICA SAÍDA CONTROLE Modelo de Von Neumann Introduziu o conceito do computador controlado por programa armazenado. Todo
Leia maisARQUITETURA DE COMPUTADORES
ARQUITETURA DE COMPUTADORES Aula 02: Conceitos Básicos Conceitos Básicos Conceitos fundamentais: dado, informação e processamento de dados Conceitos de algoritmo, algoritmo ótimo, hardware. Software e
Leia maisOrganização de Computadores
Organização de Computadores SUMÁRIO Arquitetura e organização de computadores Hardware Software SUMÁRIO Arquitetura e organização de computadores Terminologia básica Hardware Software Arquitetura e organização
Leia maisANHANGUERA EDUCACIONAL. Capítulo 2. Conceitos de Hardware e Software
ANHANGUERA EDUCACIONAL Capítulo 2 Conceitos de Hardware e Software Hardware Um sistema computacional é um conjunto de de circuitos eletronicos. Unidade funcionais: processador, memória principal, dispositivo
Leia maisWeb site. Objetivos gerais. Introdução. http://www.inf.ufes.br/~pdcosta/ensino/2009-1-estruturas-de-dados. Profa. Patrícia Dockhorn Costa
Web site http://www.inf.ufes.br/~pdcosta/ensino/2009-1-estruturas-de-dados Estruturas de Dados Aula 1: Introdução e conceitos básicos Profa. Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br 01/03/2010
Leia maisComputador Digital Circuitos de um computador (Hardware)
Computador Digital SIS17 - Arquitetura de Computadores (Parte I) Máquina que pode resolver problemas executando uma série de instruções que lhe são fornecidas. Executa Programas conjunto de instruções
Leia maisLinguagem de Montagem
Linguagem de Montagem Uma introdução à Programação Assembly do PC Slides baseados em material associado ao livro Introduction to Assembly Language Programming, Sivarama Dandamudi 1 A Visão do Usuário sobre
Leia maisIntrodução à Arquitetura de Computadores. Prof.ª Ms. Elaine Cecília Gatto
Introdução à Arquitetura de Computadores Prof.ª Ms. Elaine Cecília Gatto 1 O nome refere-se ao matemático John Von Neumann, que foi considerado o criador dos computadores da forma como são projetados até
Leia maisOrganização de Computadores I
Departamento de Ciência da Computação - UFF Objetivos Organização de Computadores I Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br http://www.ic.uff.br/~debora/orgcomp Dar noções iniciais
Leia maisO modelo do computador
O modelo do computador Objetivos: Mostrar como é o funcionamento dos computadores modernos Mostrar as limitações a que estamos sujeitos quando programamos Histórico Os primeiros computadores são da década
Leia maisIntrodução às Linguagens de Programação
Introdução às Linguagens de Programação Histórico de Linguagens de Programação O computador não faz nada sozinho Precisamos informar, de forma clara, como ele deve executar as tarefas Ou seja, o computador
Leia maisComputadores de Programação (MAB353)
Computadores de Programação (MAB353) Aula 6: 27 de abril de 2010 1 Recaptulando operações já estudadas Operações lógicas 2 3 Exercícios Referências bibliográficas Recaptulando operações já estudadas Operações
Leia maisIntrodução à Programação de Computadores
1. Objetivos Introdução à Programação de Computadores Nesta seção, vamos discutir os componentes básicos de um computador, tanto em relação a hardware como a software. Também veremos uma pequena introdução
Leia mais