DI/FCT/UNL 1º Semestre 2004/2005

Slides:



Advertisements
Apresentações semelhantes
UNIDADE 1: INTRODUÇÃO ÀS TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO
Advertisements

INTRODUÇÃO À COMPUTAÇÃO
A Informática.
INTRODUÇÃO A INFORMÁTICA
Tecnologias da Informação e da Comunicação
Arquitetura de Computadores
3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004.
Ciclos, Vectores e Gráficos Simulação da Queda de Corpos II
15 de Setembro de 2006 Introdução aos Sistemas de Computadores 1 Jorge Cruz DI/FCT/UNL Introdução aos Computadores e à Programação 1º Semestre 2006/2007.
21 de Fevereiro de 2006 Programação para as Ciências Experimentais 1 Pedro Barahona DI/FCT/UNL Fevereiro 2006.
Introdução aos Computadores e Programação
Introdução à Informática
Maria Aparecida Castro Livi
Introdução à Informática
Sistemas Operacionais
Esquema básico do hardware
Introdução à Informática
Como Funciona o Computador
Organização da Memória Principal
Componentes do Computador e noções de Arquitetura de Computadores
INTRODUÇÃO AO PROCESSAMENTO DE DADOS
Introdução à estrutura e funcionamento de um sistema informático
Estrutura do computador

Conceitos Introdutórios
Unidade I Noções básicas de Tecnologias da Informação e Comunicação.
Profª Amita Muralikrishna
Sistemas Operacionais
Introdução à Programação
Introdução à estrutura e funcionamento de um sistema informático
Tecnologias Especificas Informática
Estrutura e Funcionamento de um Sistema Informático
Introdução aos Sistemas Operativos
9º ANO INTRODUÇÃO ÀS TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO
Sistemas Operacionais
PCI- Introdução à Computação
INICIAÇÃO À INFORMÁTICA. O que são as Tecnologias de Informação ?... As Tecnologias de Informação dizem respeito a processos de tratamento, controlo e.
Sistemas Operacionais I
História dos computadores e da programação
Estrutura e funcionamento de um computador
Agenda - Aula 2 Introdução (Computador Digital) Processadores
Processamento de dados na UCP e memória UCP
O que são, para que servem e onde podem ser utilizadas?

Introdução às Tecnologias de Informação e Comunicação
Organização de Computadores
© 2004 by Pearson Education Computadores: Ferramentas para a Era da Informação Tema 0 PARTE A.
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Introdução à INFORMÁTICA
i TIC 7/8 Funcionamento de um computador Informação 7
Trabalho de T.I.C. AnaSofia.
E SCOLA B ÁSICA E S ECUNDÁRIA DE F AJÕES Aplicações Informáticas e Sistemas de Exploração 2010/11.
Conceitos Básicos de Informática
Introdução à Informática
INFORMÀTICA E COMUNICAÇÃO Memórias e Dispositivos de Entrada e Saída
(Sistema de Processamento de Dados)
DSC/CEEI/UFCG Introdução à Computação. DSC/CEEI/UFCG 2 Hardware – Memória  Componente de um sistema de computação cuja função é armazenar informações.
Arquitetura básica de um Computador
São dispositivos onde os dados e programas são armazenados.
Introdução às TIC Prof. Carlos Freire Copyright, Carlos Freire.
Processador 2014/2015 Comunicação de Dados Ricardo Bento 12ºL.
Computação Eletrônica 2
TIC Tecnologias de Informação e Comunicação
Introdução à Informática
Tecnologias de Informação e Comunicação Ano lectivo 2012/201 Profª. Alexandra Nogueira
SISTEMAS DE INFORMAÇÃO
Tecnologias da Informação e Comunicação
Sistemas computacionais
Introdução à Computação
Origem da palavra Informática
Transcrição da apresentação:

DI/FCT/UNL 1º Semestre 2004/2005 Introdução aos Computadores e Programação (ICP) Programação para as Ciências Experimentais (PCE) DI/FCT/UNL 1º Semestre 2004/2005

Teóricas: Práticas: Objectivos Jorge Cruz (jc@di.fct.unl.pt / http://ssdi.di.fct.unl.pt/~jc) Práticas: Miguel Maurício (mlm@di.fct.unl.pt) Joaquim Ferreira da Silva (jfs@di.fct.unl.pt / http://ssdi.di.fct.unl.pt/~jfs) Alexandre Pinto (amp@di.fct.unl.pt / http://centria.di.fct.unl.pt/~amp/) Objectivos Introdução aos Computadores Introdução à Algoritmia Familiarização com uma linguagem imperativa (Octave/MATLAB) Aplicação a problemas de engenharia

Avaliação Avaliação das Práticas: Nota Final: Mini-teste de Octave Trabalho de Octave (1) Trabalho de Octave (2) Mini-teste de Excel Nota Final: 25% - Nota Prática 75% - Exame http://ssdi.di.fct.unl.pt/cursos/icp/ http://ssdi.di.fct.unl.pt/cursos/pce/

Introdução aos Computadores Um computador é uma máquina capaz de executar determinadas tarefas. Para uma máquina poder executar uma determinada tarefa é necessário: Um algoritmo adequado para executar essa tarefa Uma representação do algoritmo compreensível pela máquina Um algoritmo é um conjunto ordenado de passos que definem como uma tarefa deve ser executada. Um programa é a materialização para uma dada máquina (computador e linguagem de programação) de um algoritmo.

Calcular o maior divisor comum de dois inteiros positivos x e y Exemplo Tarefa: Calcular o maior divisor comum de dois inteiros positivos x e y Algoritmo: 1º Passo: atribuir a M o maior valor entre x e y; 2º Passo: atribuir a N o menor valor entre x e y; 3º Passo: chamar R ao resto da divisão inteira de M por N; 4º Passo: se R=0 então o maior divisor comum é N; senão atribuir a M o valor de N; atribuir a N o valor de R; voltar ao 3º Passo;

Calcular o maior divisor comum de dois inteiros positivos x e y Exemplo Tarefa: Calcular o maior divisor comum de dois inteiros positivos x e y Programa (Octave): x=input(“Qual o valor de x?”); y=input(“Qual o valor de y?”); M = max(x,y); N = min(x,y); do R = mod(M,N); if (R <> 0) M = N; N = R; endif; until (R == 0); disp(“O maior divisor comum é:”); disp(N);

Introdução aos Computadores Os programas e os algoritmos que eles representam são genéricamente denominados por software. A máquina e os seus componentes físicos são genéricamente denominados por hardware.

Representação da Informação Toda a informação necessária ao funcionamento de um computador é representada por conjuntos de bits. Um bit (binary digit) é um valor simbólico (0/1) que fisicamente é armazenado em componentes (circuitos) que podem estar num de dois estados (ex: ligado → 1; desligado → 0).

Armazenamento de Dados Memória Principal Memória Secundária Disco Rígido Disquetes CDs DVDs ... Memória Principal A memória principal é organizada numa sequência de células (palavras), cada uma com um tamanho típico de 8 bits (byte) e que pode ser acedida individualmente especificando o seu endereço (RAM → random access memory)

Armazenamento de Dados Memória Principal endereço células 0: 01101101 1: 10101110 2: 00001111 3: 01011100 4: 10110011 ... ... ??: 00110011 O número de células da memória principal é geralmente grande, variando de computador para computador, e expressa-se normalmente em potências de 2: 210 bytes = 1024 bytes = 1 Kilobyte = 1 KB 220 bytes = 1024 KB = 1 Megabyte = 1 MB 230 bytes = 1024 MB = 1 Gigabyte = 1 GB

Armazenamento de Dados Memória Principal endereço células 0: 01101101 1: 10101110 0 0 0 0 1 1 1 1 bit mais significativo bit menos significativo 2: 00001111 3: 01011100 4: 10110011 ... ... ??: 00110011 Em cada célula os bits são ordenados. A memória principal pode ser considerada uma longa sequência de bits, permitindo representações com um tamanho arbitrário de bits. (ex: uma sequência de 16 bits pode ser representada por 2 células consecutivas)

Armazenamento de Dados Memória Secundária A memória secundária (discos rígidos, disquetes, CDs, DVDs, ...) complementa a memória principal, proporcionando num meio menos volátil (não se apaga quando se desliga o computador): mais espaço de armazenamento; possibilidade de separação física da máquina. A maior desvantagem destes sistemas relativamente à memória principal é a velocidade de acesso (usa meios mecânicos muito mais lentos).

Representação da Informação como Sequência de bits Representação de Texto Cada símbolo é normalmente representado por 1 byte de acordo com o código ASCII (American Standard Code for Information Interchange). 01000010 01101111 01101101 00100000 01100100 01100001 ... 01101001 B o m d a i memória principal 01000010011011110110110100100000011001000110100101100001 B o m d i a

Representação da Informação como Sequência de bits Representação de Valores Numéricos Sistema Decimal Sistema Binário 239 9×100 = 9 3×101 = 30 2×102 = 200 11101111 1×20 = 1 1×21 = 2 1×22 = 4 239 1×23 = 8 0×24 = 0 1×25 = 32 1×26 = 64 1×27 = 128 Sequência de números binários: 0, 1, 10, 11, 100, 101, 110, 111, 1000, ...

Representação da Informação como Sequência de bits Representação de Imagens Mapas de bits Uma imagem é um conjunto de pontos (pixel – picture element) representado por uma longa sequência de bits: imagens a preto e branco (pixel→1 bit): 1→preto ; 0→branco imagens a cores (pixel→3 bytes): vermelho+verde+azul (RGB) Os mapas de bits ocupam muito espaço pelo que se usam frequentemente técnicas de compressão (ex: GIF e JPEG). Uma desvantagem adicional é a dificuldade de aumentar ou diminuir as imagens.

Representação da Informação como Sequência de bits Representação de Imagens Técnicas de Vectores As técnicas de vectores representam uma imagem como um conjunto de linhas e curvas deixando os detalhes do seu desenho para a componente que produz a imagem (monitor, impressora). Uma característica destas técnicas é a facilidade de aumentar ou diminuir as imagens. As técnicas de vectores são usadas frequentemente para representar tipos de letra (escaláveis) e em aplicações de desenho (ex: CAD – Computer-Aided Design).

Manipulação da Informação O computador, além de ser capaz de armazenar os dados, tem também que os saber manipular para poder executar os algoritmos. A manipulação dos dados requer um mecanismo para executar operações sobre os dados e coordenar a sequência dessas operações. Num computador típico este mecanismo é denominado unidade central de processamento (CPU – Central Processing Unit).

Manipulação da Informação Unidade Central de Processamento (CPU) A unidade central de processamento é constituida por: Uma unidade lógica/aritmética que contém os circuitos que executam a manipulação de dados; Uma unidade de controle que contém os circuitos para a coordenação da actividade da máquina; Um conjunto de registos gerais que servem para armazenar temporariamente os dados que são manipulados na CPU; Dois registos especiais: Um contador (program counter) que contém o endereço da próxima instrução a ser executada; Um registo de instrução (instruction register) que contém a instrução que está a ser correntemente executada.

Manipulação da Informação Unidade Central de Processamento (CPU) A CPU está ligada com a memória principal (RAM) por um circuito (BUS) através do qual é capaz de transferir dados entre a RAM e os seus registos. RAM 0: 1: 2: 3: 4: 01101101 10101110 00001111 01011100 10110011 ... BUS CPU 0: 1: 2: 10100100 00000000 ... registos 00000010 0110110110101110 contador registo de instrução Unidade de Controle Unidade Lógica/Aritmética Actualmente quase todos os CPUs contêm uma memória de alta velocidade (semelhante à dos registos) denominada Memória Cache. Nestes casos, a máquina tenta manter na Memória Cache uma cópia da parte da RAM que esteja correntemente a ser utilizada.

Manipulação da Informação Execução de Programas Um programa para poder ser executado tem que ser codificado e armazenado na memória principal. A unidade de controle é responsável pela extração do programa da memória principal, descodificação das suas instruções e sua execução. A unidade de controle repete continuamente o seguinte ciclo (machine cycle): Fetch Decode Execute Descodificar o conteúdo do registo de instrução, identificando a operação requerida e os respectivos operandos. Transferir da RAM a instrução indicada pelo contador para o registo de instrução e incrementar o contador. Executar a operação requerida pela instrução activando os circuitos apropriados.

Manipulação da Informação Comunicação com os Periféricos A memória principal (RAM) conjuntamente com a unidade de processamento central (CPU) constituem o núcleo do computador que comunica com os periféricos através de dispositivos intermediários denominados controladores. CPU Controlador BUS RAM Monitor Disco Rígido Nos PCs os controladores correspondem às placas que se podem inserir na placa principal (motherboard) e às quais se ligam os periféricos. Cada controlador trata da comunicação com determinado tipo de periférico. O controlador está electronicamente ligado ao BUS que liga a CPU à RAM. A comunicação entre a CPU e um controlador é feita de um modo idêntico à comunicação da CPU com a RAM (o endereço identifica o controlador).

O Sistema Operativo A coordenação entre as diferentes actividades que podem ser executadas num computador é realizada por um conjunto de software globalmente denominado Sistema Operativo (ex: Microsoft Windows XP, UNIX, Linux, ...). Um sistema operativo é constituido por duas camadas: o interpretador de comandos (Shell) e o núcleo (Kernel): Shell Kernel

O Sistema Operativo Shell A Shell é a parte do sistema operativo responsável pela interface com os utilizadores. Normalmente disponibiliza uma interface gráfica (GUI – Graphical User Interface) cujos objectos (ficheiros, programas...), são representados e manipulados graficamente no monitor como icones. Uma componente importante das interfaces gráficas é o gestor de janelas, responsável pela divisão do ecrã em espaços denominados janelas e pela sua associação com as respectivas aplicações. Gestor de Janelas

O Sistema Operativo Kernel A Kernel do sistema operativo contém o software capaz de executar as funções mais básicas. As suas componentes principais são: o gestor de ficheiros (file manager); os gestores dos periféricos (device drivers); o gestor de memória (memory manager); os gestores dos processos (scheduler e dispatcher).

O Sistema Operativo Kernel Gestor de Ficheiros A função do gestor de ficheiros é a coordenação das capacidades de armazenamento da máquina. A informação é armazenada em ficheiros que normalmente são agrupados em directorias organizadas hierarquicamente: A:\ Ficheiro_1 Ficheiro_2 Directoria Ficheiro_3 C:\ Program Files Programa_1.exe ... C:\Program Files\Programa_1.exe A:\Directoria\Ficheiro_3

O Sistema Operativo Kernel Gestores de Periféricos Os gestores de periféricos (device drivers) são as unidades de software que comunicam com os controladores dos periféricos. Cada device driver é especializado num determinado periférico (uma impressora, um disco rígido, um monitor, ...). Assim, temos um sistema operativo genérico que pode ser configurado para um conjunto particular de periféricos com a instalação dos respectivos device drivers.

O Sistema Operativo Kernel Gestor de Memória O gestor de memória é responsável pela coordenação da utilização da memória principal (RAM). Vários programas e blocos de dados podem estar simultaneamente na memoria principal. É necessário coordenar a utilização do espaço disponível, e eventualmente, criar a ilusão de um espaço de memória maior (memória virtual) usando por exemplo espaço do disco rígido.

O Sistema Operativo Kernel Gestores dos Processos Um processo é um programa em execução. Os computadores actuais possibilitam a execução de vários processos concurrentemente, isto é, o tempo de CPU é partilhado (time-sharing) pelos respectivos processos. Os gestores dos processos são componentes do sistema operativo responsáveis pela manutenção de uma lista dos processos em execução e dos respectivos estados, e pela atribuição de tempo de CPU a cada processo.

O Sistema Operativo O Arranque do Sistema Operativo Quando o computador é ligado um pequeno programa de inicialização é executado automaticamente. Este programa está armazenado permanentemente numa parte não volátil da memória principal (ROM – Read Only Memory). O objectivo do programa de inicialização é fazer a transferência para a memória principal do sistema operativo que se encontra armazenado numa zona prédeterminada do disco rígido (ou outro periférico) e iniciar a sua execução. Uma vez iniciada a sua execução, o sistema operativo passa a controlar todas as actividades da máquina.