O COMPUTADOR. Introdução à Computação



Documentos relacionados
Algoritmo e Técnica de Programação - Linguagem C

Programação Estruturada I

Linguagem C. TGSI Lógica de Programação / Linguagem C Prof. Marcos Roberto

Algoritmos e Programação

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação

ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Variáveis e Comandos de Atribuição

Linguagens de Programação

MC102 Algoritmos e programação de computadores Aula 3: Variáveis

Programando em C++ Histórico da Linguagem C

Algoritmos e Programação Estruturada

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

Convertendo Algoritmos para a Linguagem C

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO

5 Apresentando a linguagem C

LTP-IV. Prof. Dr. Silvio do Lago Pereira. Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo

Tipo de Dados em Linguagem C

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Estrutura de Dados. Prof. Gustavo Willam Pereira. Créditos: Profa. Juliana Pinheiro Campos

Programação: Tipos, Variáveis e Expressões

Linguagem C Tipos de Dados. void; escalares; sizeof Vectores; strings em C Estruturas Introdução ao pré-processador

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Introdução a C Tipos de Dados Variáveis Operadores

2. Constantes e Variáveis

LINGUAGEM C. Estrutura básica de um programa

Conceitos básicos da linguagem C

Introdução à Programação

Definição de Programas de Computadores e Linguagem de Programação de Comutadores

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

Trabalho de Formatura: Curso de Linguagem C. Autor: Jair Gustavo de Mello Torres Orientador: Carlos Antônio Alves

Curso de Linguagem C

Algoritmos DCC 119. Introdução e Conceitos Básicos

Programação de Computadores - I. Profª Beatriz Profº Israel

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00

Introdução a Computação

Módulo 1 Apresentação do Histórico e das Características Básicas da Linguagem C

Algoritmos e Programação Aula 01 Introdução a Computação

Apresentação. Rio de Janeiro, 19 de fevereiro de 2002 Waldemar Celes

Estrutura de Dados Básica

Linguagem de Programação

Problema: Solução: Vantagens da estruturação em Níveis: Introdução INTRODUÇÃO À ARQUITETURA DE COMPUTADORES. Introdução

Universidade Federal de Uberlândia Faculdade de Computação. A Linguagem C

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Linguagem de Programação. Thiago Leite Francisco Barretto

10/02/2015. Introdução. Podemos classificar os tipos de dados a serem processados em dados e instruções Dados: Algoritmos e Lógica de Programação

Linguagem C Princípios Básicos (parte 1)

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO

Hardware Básico. - Conceitos Básicos - Números Binários - Principais Componentes. Professor: Wanderson Dantas

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa

Algoritmos e Técnicas de

Descrição e análise da implementação em Assembly MIPS da função itoa

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética

Introdução à Linguagem C

Introdução à Linguagem C

Linguagem de Programação I. Aula 05 Linguagem C

cast poderia ser usado também para transformar um real (float) em inteiro. A sintaxe C (float)i pode ser substituída em C++ por float(i).

A declaração de uma variável vel define o seu tipo. O tipo do dado define como ele será: Armazenado na memória. Manipulado pela ULA.

Tecnologia - Conjunto de instrumentos, métodos e processos específicos de qualquer arte, ofício ou técnica.

Introdução a Linguagem C

Programação de Computadores. Turma CI-180-B. Josiney de Souza.

Linguagem de Programação I

Conceitos de Linguagens de Programação

Programação Estruturada

Programação em C++: Introdução

ENIAC. Introdução aos Computadores e à Programação (Noções Básicas)

Sobre C. Linguagem de Programação C

Linguagens de Programação. Introdução. Carlos Bazilio

INF 1005 Programação I

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica

Apostila de Linguagem C (Conceitos Básicos)

Programação em Linguagem C 1 CONCEITOS PRELIMINARES

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

INTRODUÇÃO À LINGUAGEM C++

Introdução à Linguagem C

Roteiro. MC-102 Aula 01. Hardware e dispositivos. O que é um computador? Primeiro Semestre de A linguagem C

3. Linguagem de Programação C

Linguagens de Programação I

Unidades de medida Prof a. Sediane Carmem Lunardi Hernandes

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

INFORmação. O que é um Computador?

Organização de Computadores 1

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

Técnicas de Programação: ESTRUTURAS, UNIÕES E TIPOS DEE UFPB

Conceitos Básicos de C

Prefácio. Profº Callé 10

Programação. MEAer. Bertinho Andrade da Costa. Instituto Superior Técnico. Introdução ao Pré-Processador. 2011/2012 1º Semestre

1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO

armazenamento (escrita ou gravação (write)) recuperação (leitura (read))

Transcrição:

O COMPUTADOR Introdução à Computação

Sumário O Hardware O Software Linguagens de Programação Histórico da Linguagem C

Componentes Básicos do Computador O HARDWARE: O equipamento propriamente dito. Inclui: periféricos de entrada e saída; a máquina e seus elementos físicos: torre, placas, fios, componentes em geral O SOFTWARE: Constituído pelos programas (e documentações) que permitem atender às necessidades do usuário

O HARDWARE UNIDADES FUNCIONAIS BÁSICAS MEMÓRIA MEMÓRIA AUXILIAR MEMÓRIA PRINCIPAL UNIDADE DE ENTRADA UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA CPU UNIDADE DE SAÍDA

A MEMÓRIA DO COMPUTADOR UNIDADES FUNCIONAIS BÁSICAS MEMÓRIA MEMÓRIA AUXILIAR MEMÓRIA PRINCIPAL UNIDADE DE ENTRADA UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA CPU UNIDADE DE SAÍDA

A MEMÓRIA DO COMPUTADOR A memória do computador é dividida em unidades pequenas e de mesmo tamanho, chamadas PALAVRAS, sendo que cada uma tem um único endereço. Os endereços são permanentes (vêm da fábrica) e não podem ser modificados pelo programador endereço endereço PALAVRA 00 PALAVRA 08 PALAVRA 04 PALAVRA 12

A MEMÓRIA DO COMPUTADOR A PALAVRA é formada por um grupo de 2, 4, 6 e até 8 BYTES (depende da arquitetura do computador). Exemplo: Palavra de 4 bytes endereço endereço PALAVRA PALAVRA byte byte byte byte byte byte byte byte 00 01 02 03 04 05 06 07 00 04

A MEMÓRIA DO COMPUTADOR BYTE (binary term) : Unidade básica da informação. O byte é composto por 8 BITS BIT (binary digit) - dígitos binários BYTE bit bit bit bit bit bit bit bit

A MEMÓRIA DO COMPUTADOR Código ASCII (7 bits) Cada byte armazena um caractere: algarismo, letra, símbolo ou caractere de controle. CARACTERE ZONA PARTE NUMÉRICA 0 0 1 1 0 0 0 0 9 0 1 1 1 0 0 1 A zona 1 0 0 parte 0 numérica 0 0 1 a zona 1 1 0 parte 0 numérica 0 0 1 P 1 0 1 parte 0 numérica 0 0 0 + zona 0 1 0 parte 1 numérica 0 1 1 BYTE 48 57 65 97 80 43

Tipos de Dados

A MEMÓRIA DO COMPUTADOR Código ASCII (7 bits) Possibilidade de 2 7 representações diversas (128 caracteres) - alfabeto inglês em letras minúsculas e maiúsculas (52) - caracteres decimais numéricos (10) - caracteres especiais e de operação (33) - caracteres de controle (33)

A MEMÓRIA DO COMPUTADOR O PORTE UNIDADES do computador DE depende MEDIDA de: Kbyte = 1024 (2 10 ) bytes componentes (essência da memória e do processador) arquitetura, periféricos e kilobyte (Kbyte ou KB) ~= 10 3 bytes software básico. megabyte(mbyte ou MB) ~= 10 6 bytes O tamanho da memória principal é um dos indicadores gigabyte(gbyte do porte ou GB) do computador ~= 10 9 bytes Unidade terabyte(tbyte de medida: ou TB) byte ~= 10 12 bytes

UNIDADES DE ENTRADA E SAÍDA UNIDADES FUNCIONAIS BÁSICAS MEMÓRIA MEMÓRIA AUXILIAR MEMÓRIA PRINCIPAL UNIDADE DE ENTRADA UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA CPU UNIDADE DE SAÍDA

UNIDADE CENTRAL DE PROCESSAMENTO MEMÓRIA MEMÓRIA AUXILIAR MEMÓRIA PRINCIPAL UNIDADES FUNCIONAIS BÁSICAS UNIDADE DE ENTRADA UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA CPU UNIDADE DE SAÍDA

UNIDADE CENTRAL DE PROCESSAMENTO VELOCIDADE DE PROCESSAMENTO: costuma ser expressa através de: - MIPS (milhões de instruções por segundo) Ex: Pentium de 166 MIPS - MFLOPS ou MEGAFLOPS (milhões de operações de ponto flutuante por segundo) Utilizada em sistemas onde há maior interesse em aplicações numéricas (sistemas científicos e sistemas de computação gráfica) - Comparar com MHz e GHz

O SOFTWARE O Software envolve um conjunto de: 1- INSTRUÇÕES que quando executadas produzem a função e o desempenho desejados 2- ESTRUTURAS DE DADOS que possibilitam que os programas manipulem adequadamente a informação 3- DOCUMENTOS que descrevem a operação e o uso dos programas

Programação e Níveis de Linguagem MEMÓRIA Programa Fonte escrito em Linguagem de Alto ou Baixo Nível MEMÓRIA PRINCIPAL Programa Fonte escrito em Linguagem de Máquina CPU

Programação e Níveis de Linguagem MEMÓRIA Programa Fonte escrito em LINGUAGEM Linguagem DE MÁQUINAMEMÓRIA PRINCIPAL de Alto ou - Uma Baixo CPU Nível somente pode compreender instruções que sejam expressas em termos de sua LINGUAGEM DE MÁQUINA - Um programa escrito em linguagem de máquina consiste de uma série de números binários e é muito difícil de ser entendido pelas pessoas. Programa Fonte escrito em Linguagem Exemplo: Cada instrução é constituída de Máquina de 2 partes: código da operação operando 001 01010 CPU

Programação e Níveis de Linguagem LINGUAGEM DE BAIXO NÍVEL (Assembly) MEMÓRIA São linguagens de programação nas quais os programas são escritos Programa em uma Fonte notação que está próxima da linguagem de escrito máquina em Linguagem MEMÓRIA PRINCIPAL de Exemplo: Alto ou Baixo Nível código da operação operando significado LD A load A MPI 5 multiplica 5 Programa Fonte escrito em Linguagem de Máquina CPU

Linguagens de Programação Linguagem de Máquina (código binário) inicialmente, programadores trabalhavam diretamente com 1 s e 0 s: 000110011 = load,... Assembler (simbólico) uso de mnemônicos para as instruções: LD = load labels e variáveis Fortran (engenharia, aritmética) linguagem não estruturada ótimos compiladores para aritmética

1950 --------------------------------------------------------------- Fortran Lisp 1960 ---------------------------------------------------------------- Cobol Algol-60 Simula PL/I Algol-68 1970 --------------------------------------------------------------- Smalltalk Pascal 1980 -------------------------------------------------------------- Ada C++ 1990 ------------------------------------------------------------- C ML Miranda Prolog

Histórico - A Linguagem C Origem de C está associada ao sistema Unix BCPL: desenvolvida por Martin Richards 1970: Ken Thompson desenvolve B, baseada em BCPL, para o primeiro Unix no DEC PDP-7 1972: Dennis Ritchie projeta a linguagem C, baseado em B. O sistema operacional Unix, o Compilador C e quase todos os aplicativos Unix são escritos em C!!! 1988: o American National Standard Institute (ANSI) define o padrão ANSI C

Características Gerais linguagem de nível médio não é uma linguagem fortemente tipada uso intensivo de ponteiros definição de blocos { } pré-processador não define operações de entrada e saída funções retornam valor e podem ser chamadas recursivamente

Fluxo do Compilador C Fonte C headers do sistema Pré-processador headers do usuário Compilador Montador Arquivos objeto do usuário Bibliotecas do sistema Arquivo Objeto Ligador Executável

Arquivo-FONTE /*******************************/ /* Primeiro exemplo arq exemplo1.c */ /*******************************/ #include <stdio.h> /* C padrão de Entrada/Saída */ /************************/ main () /* Comentários em C */ { printf ("exemplo nro %d em C!", 1); printf ( depois o %d! \n", 2); printf ("criatividade em baixa \n ); } source-file Compilador Outros Arquivos 0101001010000000 1111000101010010 0101100010010100 1110001100010000 1100010100000000 Arquivo-OBJETO 1111000101010010 0101100010010100 1110001100010000 1110000000010000 OBJETO/Bibliotecas libraries object-file Link-editor 1111000101010010 0101100010010100 1110001100010000 1110000000010000 0000000010001010 1100010100000000 0011000100000010 1110000100000011 Arquivo-EXECUTÁVEL

Estrutura de um Programa C Programa C Diretivas ao Pré-Processador - Includes - Macros Declarações Globais - Funções - Variáveis Definição das Funções main () { /* begin */ } /* end */

Exemplo #include <stdio.h> #include <stdlib.h> #include <conio.h> #define FALSE 0 /* define F igual 0 */ #define TRUE 1 /* define T igual 1 */ int i = 0; void mostra_msg( void ); void main( ) { int resposta; printf( Quer ver a mensagem?\n" ); scanf( "%d", &resposta ); if( resposta == TRUE ) mostra_msg( ); else puts( "Goodbye for now." ); } void mostra_msg( void ) { clrscr( ); for( i = 0; i <=10; i++ ) printf( "Teste # %d.\n", i ); }

Uma lista de palavras-chave de C ANSI (repare, são 32 somente!!!) auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typeof union unsigned void volatile while