75
Prof. Erwin Alexander Uhlmann 02/08/2010 Ciência da Computação COMPUTAÇÃO BÁSICA Ao término deste curso, espera-se que o aluno seja capaz de compreender o avanço da Informática desde o seu surgimento até os dias atuais, selecionar a melhor configuração de Hardware/software necessários a uma determinada demanda no meio profissional, utilizar adequadamente os recursos de software e hardware dos computadores, identificar e utilizar adequadamente os principais softwares aplicativos na resolução de problemas analisando seu funcionamento.

Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Embed Size (px)

Citation preview

Page 1: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Prof. Erwin Alexander Uhlmann

02/08/2010

Ciência da Computação COMPUTAÇÃO BÁSICA

Ao término deste curso, espera-se que o aluno seja capaz de

compreender o avanço da Informática desde o seu surgimento até

os dias atuais, selecionar a melhor configuração de

Hardware/software necessários a uma determinada demanda no

meio profissional, utilizar adequadamente os recursos de software

e hardware dos computadores, identificar e utilizar

adequadamente os principais softwares aplicativos na resolução de

problemas analisando seu funcionamento.

Page 2: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 1

Ciência da Computação SUMÁRIO Computação Básica ......................................................................................................... 0

Sumário ............................................................................................................................. 1

1. EMENTA: .................................................................................................................... 4

2. OBJETIVOS: ............................................................................................................... 4

3. COMPETÊNCIAS e HABILIDADES: .............................................................................5

4. CONTEÚDO PROGRAMÁTICO: ..............................................................................5

5. Conceitos básicos sobre o hardware ........................................................................5

6. Conceitos básicos sobre o peopleware................................................................5

7. Conceitos básicos sobre o software .........................................................................5

8. BIBLIOGRAFIA: .......................................................................................................5

BÁSICA: ..........................................................................................................................5

COMPLEMENTAR: ........................................................................................................ 6

SUPLEMENTAR: ............................................................................................................ 6

Aula 1 ................................................................................................................................. 7

O Computador ............................................................................................................... 7

Número e Numeral ........................................................................................................ 7

Método de multiplicação dos romanos. .................................................................. 8

Ábaco ......................................................................................................................... 8

Aula 2 ............................................................................................................................... 22

Sistemas de numeração .............................................................................................. 22

Números Decimais ................................................................................................... 22

Sistema binário ......................................................................................................... 22

Page 3: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 2

Sistema Hexadecimal ............................................................................................... 23

Sistema Octal .......................................................................................................... 24

Números negativos ..................................................................................................... 25

Complemento de 1 ................................................................................................... 25

Complemento de 2 ................................................................................................... 25

Aula 3 .............................................................................................................................. 26

Cálculos com binários................................................................................................. 26

Soma ........................................................................................................................ 26

Subtração ................................................................................................................ 26

Multiplicação ............................................................................................................ 27

Divisão ...................................................................................................................... 27

Aula 4 .............................................................................................................................. 29

Conversão de bases ................................................................................................... 29

Ponto Flutuante ......................................................................................................... 30

Conversão Octal para Decimal ................................................................................... 31

Decimal Hexadecimal .................................................................................................. 31

Aula 4 ............................................................................................................................... 33

Eletrica ... eletrônica – circuitos elétricos .................................................................. 33

Aula 5 .............................................................................................................................. 36

Portas lógicas ............................................................................................................. 36

Aula 6 .............................................................................................................................. 38

Circuitos ...................................................................................................................... 38

Circuito Somador .................................................................................................... 38

Circuito Somador Completo ...................................................................................... 39

Circuito Subtrator ................................................................................................... 40

Subtração Completa ............................................................................................... 40

Circuito Multiplicador ............................................................................................. 42

Page 4: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 3

Multiplicação completa .......................................................................................... 42

Circuito Divisor ........................................................................................................ 44

Divisão completa ..................................................................................................... 44

Esquema elétrico ........................................................................................................ 45

bit, Byte e a Palavra .................................................................................................... 47

Codificação EBCDIC ................................................................................................. 47

Codificação BCD ...................................................................................................... 47

Codificação Hexadecimal ....................................................................................... 48

Codificação ASCII .................................................................................................... 48

Aula 8 .............................................................................................................................. 50

Memória Principal ...................................................................................................... 54

Organização da Memória ........................................................................................... 54

Arquitetura de Computadores .................................................................................. 54

Aula 9 ............................................................................................................................... 57

Circuitos combinados .................................................................................................. 57

Somador ................................................................................................................... 57

Subtrador ................................................................................................................. 57

Multiplexadores .......................................................................................................... 57

Decodificadores.......................................................................................................... 58

Aula 10 ............................................................................................................................ 60

Flip-Flop....................................................................................................................... 60

ROM ............................................................................................................................ 60

ROM .......................................................................................................................... 61

PROM ........................................................................................................................ 61

EPROM ...................................................................................................................... 61

EEPROM .................................................................................................................. 62

Flash ......................................................................................................................... 62

Page 5: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 4

CD-ROM ................................................................................................................... 63

RAM............................................................................................................................. 63

Aula 11 ............................................................................................................................. 66

Processador de 8 bits ................................................................................................. 66

Aula 12 ............................................................................................................................. 67

Barramentos ............................................................................................................... 67

Barramento de endereços ...................................................................................... 67

Barramento de dados ............................................................................................. 67

Barramento de controle ......................................................................................... 67

Barramento local..................................................................................................... 68

Barramento de Sistema .......................................................................................... 68

Barramento de expansão ....................................................................................... 68

Aula 13 ............................................................................................................................. 71

Linguagem de Máquina .................................................................................................. 71

Padrões de Instrução .................................................................................................. 71

Instruções Aritméticas/Lógicas ............................................................................... 72

Controle .................................................................................................................... 72

Linguagem Assembly .................................................................................................. 73

Computação Básica

1. EMENTA: Ao aluno desta disciplina será apresentada uma visão ampla do papel e potencial da

informática para o futuro profissional em Ciência da Computação; conhecimentos

práticos do computador e seu funcionamento; noções de Internet, pesquisas e

criação de páginas bem como de aplicativos como Planilhas Eletrônicas e

Processadores de Texto.

2. OBJETIVOS: Ao término deste curso, espera-se que o aluno seja capaz de:

Page 6: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 5

Compreender o avanço da Informática desde o seu surgimento até os dias atuais.

Selecionar a melhor configuração de Hardware/software necessários a uma determinada demanda no meio profissional.

Utilizar adequadamente os recursos de software e hardware dos computa-dores.

Identificar e utilizar adequadamente os principais softwares aplicativos na resolução de problemas analisando seu funcionamento.

3. COMPETÊNCIAS E HABILIDADES: Capacitar o aluno a escolher entre as tecnologias, compreender plenamente seu

funcionamento seja de hardware ou de software, as interferências dele na

sociedade e suas potencialidades.

4. CONTEÚDO PROGRAMÁTICO: Informática - Evolução e Conceitos

Processamento de Dados: Componentes / Plataformas

Conceito e Evolução da Informática: Conhecimento x Informação

Componentes da Informática (Hardware, Peopleware e Software)

Onde e por que utilizar o computador

5. CONCEITOS BÁSICOS SOBRE O HARDWARE Arquitetura, componentes e periféricos

Memórias do Computador e CPU

Configurações e Padrões atuais

Principais opções de mercado

Tendências das evoluções

6. CONCEITOS BÁSICOS SOBRE O PEOPLEWARE Descrição de cargos dos profissionais de informática

A importância do usuário no contexto da Informática

7. CONCEITOS BÁSICOS SOBRE O SOFTWARE Tipos e níveis de Software

Sistema Operacional, Linguagens, Aplicativos e Utilitários

Estrutura de arquivos, documentação e Banco de dados

Prática no Pacote MS Office da Microsoft

8. BIBLIOGRAFIA:

BÁSICA: 1. MANZANO, Andre Luiz N. G; MANZANO,

Maria Izabel N. G. Estudo dirigido:

Page 7: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 6

2. informática básica. 4. ed. São Paulo: Erica, 2002.

3. PERSPECTION, Inc. Microsoft Word Versão 2002. São Paulo: Makron Books, 2002.

4. CAPRON, H. L.; JOHNSON, J. A. Introdução a Informática - 8ª Ed. São Paulo: Pearson Education, 2004.

COMPLEMENTAR: 1. MANZANO, Andre Luiz N. G; MANZANO,

Maria Izabel N. G. Estudo dirigido: 2. informática básica. 4. ed. São Paulo:

Erica, 2002.

SUPLEMENTAR: 1. PERSPECTION, Inc. Microsoft Word

Versão 2002. São Paulo: Makron Books, 2002. 2. CAPRON, H. L.; JOHNSON, J. A.

Introdução a Informática - 8ª Ed. São Paulo: Pearson Education, 2004.

Page 8: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 7

AULA 1

O Computador Stonehenge – auxílio no cálculo do solstício, equinócio, luas. - Menires de 3 a 6m de

altura feito em cerca de 2.600 a.C. - 1.700 a.C

Segundo o dicionário Priberam:

“adj. e s. m.,

que ou aquele que faz cômputos, que calcula;

s. m.,

Inform.,

aparelho concebido para desempenhar cálculos e operações lógicas com facilidade,

rapidez e fiabilidade, segundo instruções (programas) nele introduzidas, constituído,

de um modo geral, por unidade(s) de introdução (input), unidade de processamento

central (C.P.U. ), unidade de armazenamento principal permanente, memória

temporária e unidade(s) de saída (output);

- pessoal: tipo de computador concebido para ser usado por um utilizador de cada vez,

baseado num microprocessador (pequeno circuito integrado) que desempenha as

funções de unidade de processamento central;

microcomputador.”

Número e Numeral A diferença entre número e numeral é que erroneamente utilizamos a expressão

para dizer o “número 10”, quando na verdade deveríamos utilizar a expressão “ o

numeral 10” ou “numeral que expressa graficamente o número 10”.

Número é o valor absoluto e numeral é o grafismo utilizado para representar um

número.

O 1º grande passo rumo à ciência foi a concepção dos números. É na verdade a idéia

comum de comparação de quantidades entre dois conjuntos.

Exemplo:

Existem tantos cavalos quantas pedras.

Existe tanta água na moringa quanto no jarro.

Page 9: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 8

Passou-se tanto tempo quanto uma viajem de cavalo para a babilônia.

A evolução natural foi à criação de comparativos.

Exemplo:

A pedra grande equivale a 10 ovelhas e a pequena à uma.

Cada dedo equivale a uma ovelha e cada mão equivale a 5.

Primeiros métodos de cálculos

Método de multiplicação dos romanos. Os romanos decoravam a tabuada apenas até o 5, do 6 em diante, utilizavam-se as

mãos no auxílio aos cálculos.

Cada mão vale 5, para a diferença, levantam-se os dedos necessários, depois soma-

se os dedos levantados e multiplica-se os abaixados.

Exemplo:

7 x 8

Levante dois dedos de cada mão. Some os dedos levantados. Resultado 5.

Multiplique os abaixados. 2 x 3 = 6.

Ábaco Assim que o homem percebeu que utilizar pedaços de madeira com pó, barro e

outros meios de escrita também auxiliavam nos cálculos, a evolução foi o ábaco.

O funcionamento do ábaco era da seguinte forma:

Uma caixa quadrada, com uma divisão horizontal à cerca de 2/3 da base e 4, 5, 6 ou

mais hastes longitudinais com contas inseridas.

Na parte superior da caixa, da DIREITA para à ESQUERDA, as contas valem 5, 50,

500, 5000, e assim por diante.

Na parte inferior, também da DIREITA para à ESQUERDA, cada conta vale

1,10,100,1000 e assim por diante.

O número que se quisesse representar deveria conter as contas juntas à divisão.

Exemplo:

O número 5: Apenas a primeira conta da parte superior da DIREITA junto à divisão.

O Número 6: A 1ª conta superior da com a primeira conta inferior.

Page 10: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 9

O nº 236: A 1ª conta superior e uma inferior, a segunda haste com 3 contas da parte

inferior e a 3ª haste com 2 contas da parte inferior.

Monte os números:

436

506

508

2345

Auxílios manuais nos cálculos escritos.

Nosso método de multiplicação atual é uma evolução – ou derivação – do método

tabular árabe.

Mostrar exemplo.

x 2 1 7

1 2 1 7

4 8

4 2 8

3 0 3 8

Na 1ª linha é feito o produto de dígito do número 217 por 1.

Na 2ª de 217 por 4.

Observe que 4 por 7 exige o transporte do dígito 2 que é colocado na parte de cima

da diagonal.

O produto é conseguido pela soma dos dígitos nas diagonais:

8

4 + 2 + 7 = 3 (vai 1)

(1) + 8 + 1 = 0 (vai 1)

(1) + 2 = 3

Logo = 3.038

Exercícios.

Page 11: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 10

John Napier, nobre escocês, teólogo e matemático observou a seguinte sequência:

1 2 4 8 16 32 64 128 ...

0 1 2 3 4 5 6 7 …

Esta descoberta tornou mais simples os cálculos aritméticos, transformando

operações de multiplicação em operações de soma, e divisão em operações de

subtração.

A tábua de logaritmos consiste basicamente de duas colunas de números. A cada

número da esquerda corresponde um número à sua direita, chamado o seu

logaritmo.

Para multiplicar dois números, por exemplo, basta somar seus logaritmos.

Exemplo:

4 x 16 → Procure na coluna da ESQUERDA os números 4 e 16.

Some seus logaritmos. (direita).

Encontre o na coluna de ESQUERDA qual o nº correspondente à soma dos

logaritmos.

Nº Log

1 0

2 1

4 2

8 3

16 4

32 5

64 6

Page 12: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 11

128 7

256 8

512 9

1024 10

Exercícios:

64 x 8 = 6 + 3 = 9 = 512

128 x 4 = 7 + 2 = 9 = 512

128 : 16 = 7 – 4 = 3 = 8

512 : 32 = 9 – 5 = 5 = 32

Auxílios mecânicos para os Cálculos

Pesquise mais em:

http://www-03.ibm.com/ibm/history/exhibits/attic2/attic2_057.html

John Napier, generalizou o procedimento tabular dos árabes e em 1617 desenvolveu

um dispositivo simples e barato constituído de uma caixa de madeira com bastões

de ossos e cilindros com as tabelas, de 1 a 9.

Page 13: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 12

No século XVII foi inventada a régua de cálculo aplicando-se as idéias dos

logaritmos. As operações de multiplicação e divisão são executadas simplesmente

somando ou subtraindo a distância medida na régua externa, aquela marcada na

régua interna deslizante. A régua de cálculo é, na verdade, uma tábua compacta de

logaritmos.

Em 1642 o filósofo Blaise Pascal construiu uma calculadora (a primeira máquina de

somar) para auxiliar seu pai, coletor de impostos. Inventou uma máquina capaz de

registrar valores decimais baseada na rotação de rodas dentadas de 10 posições (0 a

9). Quando uma roda excedia 10 unidades, ou seja, uma volta, acionava a roda

seguinte (assim como um odômetro atual). Com tal máquina era possível somar e

subtrair.

Page 14: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 13

Em 1673, Gottfried Wilhelm von Leibnitz, filósofo e matemático alemão, utilizando o

fato de que uma multiplicação é a soma de uma mesma parcela um certo número

de vezes, mostrou como um multiplicador mecânico com dois contadores (um para

efetuar a adição e outro para determinar quando a adição deve parar) poderia ser

implementado. Esta máquina foi construída em 1694.

5 x 3 = 5 + 5 + 5

Então aqui se começa a observar que não só buscava-se um mecanismo que fizesse

contas automaticamente, mas que para além de se inventar um mecanismo, nada se

conseguiria se também não fosse inventada a programação deste mecanismo.

Cada mecanismo novo era como uma máquina industrial.

Page 15: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 14

Uma máquina de injetora atual pode possuir dois tipos de programação. Mecânica e

digital. A programação mecânica é elaborada com as peças, com o hardware.

Quando o produto passar pelo duto, um sensor ligará um braço mecânico que abrirá

um compartimento com um saco plástico e ao final do ciclo do braço que abriu o

compartimento, duas peças em formato de pinça, aquecidas, deverão fechar o saco

plástico para acondicionar o produto.

Na programação digital, o cilo mecânico foi substituído pelos cilos de um

processador, ou seja, pelo clock.

A grande questão é elaborar uma programação que seja lógica e “fale” com a

máquina.

Atualmente além dessa preocupação existe também a exigência de que o

programa, também “fale” a linguagem do usuário, a usabilidade.

Auxílio mecânicos automáticos

Leonardo Da Vinci começou se enveredar pelo mundo da informática por volta do

ano 1425-1519 com uma máquina de engrenagens que de forma exponencial

mostravam o resultado em voltas.

Page 16: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 15

Cada engrenagem era ligada ao eixo de outra e essa a outra e assim por diante.

Em 1728 o engenheiro francês Basile Bouchon construiu um tear, que podia tecer

desenhos de seda, de acordo com fichas perfuradas. As agulhas só passariam pelos

furos feitos nestas fichas. Conforme os ciclos da máquina as fichas mudavam de

posição e conseqüentemente mudavam o desenhos ou as cores.

Em 1801 Joseph Marie Jacquard conclui o tear com cartões e aperfeiçoou,

influenciando significativamente as idéias de como comandar, programar, as

máquinas.

Em 1812, Charles P. Babbage, matemático inglês, ao consultar tabelas de logaritmos

com erros, resolveu construir uma máquina de computar tabelas matemáticas que

resolvesse os erros encontrados. O principal era encontrar uma forma de resolver

problemas com uma metodologia única.

Exemplo:

B = A³

Page 17: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 16

Para calcular qualquer que fosse o valor atribuído à A, deveria-se utilizar a adição. Se

A = 8 de veríamos somar os números existentes na tabelas de Napier até chegar ao

resultado, ou seja:

SE B = A³ e A = 8, então B=8³.

Para calcular 8³ devemos fazer a multiplicação de 8 por ele mesmo 3 vezes, então:

8 x 8 x 8 = 512

Como o dispositivo de Babage não tinha como computar a multiplicação, então

deveria-se seguir por adição.

8 + 8 + 8 + 8 + 8 + 8 ... até chegar à 512.

Com o auxílio de Napier e a tabela de logs, vejamos:

0 1 2 3 4 5 6 7 8 9

1 2 4 8 16 32 64 128 512 1024

Tenha em mente, sempre é utilizada a base de log 2, a base binária.

Ele desenvolveu um sistema que possibilitasse então a utilização das variáveis.

A B(A=x³) D1 D2 D3

0 0 1

1 1

2 8 7 6

3 27 19 12 6

4 64 37 18 6

5 125 61 24 6

6 216 91 30 6

7 343 127 36 6

Ele percebeu que com contas de + e de – seria possível resolver de forma rápida e

mecanicamente reduzida, uma exponenciação, somando-se 343+127+36+6 = 512

Essa máquina era chamada de A máquina de Diferencial de Babage, pois calculava as

diferenças entre B, D1, D2 e D3.

Page 18: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 17

A evolução natural veio em 1820 com Charles Xavier Thomas, que projetou primeira

máquina de calcular de uso comercial. Mesmo não sendo ainda totalmente

automática, ela somava, subtraia, multiplicava e dividia a partir de pinos móveis.

Page 19: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 18

Em 1875, Frank Baldwin inventou uma máquina com as mesmas funções a partir de

pinos móveis.

Page 20: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 19

Dorr E. Felt criou o computômetro em 1887, a antecedente das caixas registradoras

atuais.

Foi então que Herman Hollerith inventou uma máquina que registrava os números e

valores em cartões perfurados e sua leitura se dava ao introduzir o cartão e os pinos

que passavam pelos furos “liam” os valores. Eram as máquinas tabuladoras.

A partir dessas máquinas Hollerith montou um sistema para apuração das eleições

americanas. O sucesso foi tamanho que ele fundou Tabulating Machine Company ou

a TMC, que virou Computing Tabulating Recording, CTR, e depois INTERNATIONAL

BUSINESS MACHINES, IBM.

Page 21: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 20

As válvulas passaram então a assumir o papel das engrenagens.

O cada dente da engrenagem e sua depressão passou a ser traduzido como 0 e 1, ou

seja, ligado e desligado.

Automatismo completo

A diferença entre o conceito de Babage e os computadores atuais é que antes se

utilizavam engrenagens e agora os relés e fazem esta função.

Mais de um século depois de Babage, em 1937, Howard G. Aiken construiu uma

máquina capaz de calcular diferenciais integrais com dispositivos eletromecânicos.

Era MARK I, que começou a funcionar em 1944.

Em 1946 o primeiro computador digital entrou em funcionamento, o ENIAC

(Eletronic Numerical Integrator And Calculator), com 19.000 válvulas, 1.500 relés,

diversos resistores, capacitores, indutores e um consumo de cerca de 200KW/h e

sua memória registrava até 20 números de 10 dígitos cada.

O ENIAC armazenava apenas os números, pois os programas eram construídos

interligando plugs em painéis como as antigas centrais telefônicas, o que era

demorado e inconveniente, além de ser propenso a erros.

J. Von Neumann, em 1946 apresentou um artigo que propunha o armazenamento

dos dados e dos programas, o que influenciou a arquitetura até hoje dos

computadores.

A máquina proposta era o EDVAC (Eletronic Dicrete Variable Automatic Computer).

Que foi de fato construída em 1948 e a partir deste, os computadores feitos em

escala comercial com o UNIVAC utilizado para o censo de 1951 nos EUA.

Evolução tecnológica

Como vimos, os primeiros computadores eram eletromecânicos, com a invenção do

transistor pela Bell, em 1948, a redução dos componentes era evidente e sua

capacidade ampliada, seu consumo reduzido, e a propensão aos erros minimizada,

pois as válvulas esquentavam e queimavam facilmente com o próprio calor ou por

fatores externos com o insetos.

Estes, aliás, foram os responsáveis por um termo até hoje conhecido. O Bug.

Page 22: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 21

Nos computadores da segunda geração – sendo o de Babage de primeira geração - ,

as válvulas atraiam insetos que queimavam as válvulas e os programas paravam de

funcionar, foi então que o problema conhecido se tornou expressão. Veja se não

temos um Bug na máquina. Isto se tornou sinônimo de erro, até o Bug do milênio.

Conectar todos os transistores era uma tarefa árdua, então surgiram os circuitos

impressos e os transistores vinham já previamente alocados nessas placas plásticas

e conectados por filamentos metálicos impressos nessa placa. Eram os

computadores de terceira geração.

A placa se tornou uma pastilha ou chip, com a redução dos transistores, essa

pastilha passou a se chamar LSI ou VLSI (Very Large Scale Integration), sendo os

computadores de quarta geração.

Page 23: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 22

AULA 2

Sistemas de numeração Números Decimais Os números que utilizamos procedem dos fenícios e posteriormente aperfeiçoados

pelos árabes. Os números arábicos obedecem a escala decimal, ou seja, de 0 à 9.

Depois da invenção do Zero, os números agregados ao Zero poderiam crescer

indefinidamente.

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21...

Assim o número 1967deve ser lido:

+ 1000 + 900 + 60 + 7

1 x 1000 + 9 x 100 + 6 x 10 + 7 x 1

1967 1967

ou 1 x 10³ + 9 x 10² + 6 x 10¹ + 7 x 10º = 1967

Sistema binário Para representar os números no sistema binário devemos seguir a mesma lógica

dos logs de base binária, ou seja, base 2.

Logo a tabela abaixo demonstra a evolução dos números.

Decimal Binário

0 1 2 3

00 01 10 11

Como a base é 2, o máximo de combinações será 4, por que 2² = 4. 0,1,2,3. Para o

numeral 4, 2² não basta, é preciso um número maior, então, 2³ = 8, de 0 à 7.

Decimal Binário

0 1 2 3 4 5 6 7

00 01 10 11 100 101 110 111

Elabore o número 8, 16, 32, 33, 34 e 35 em binário.

Page 24: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 23

O número 1968 seria representado desta forma:

111101100000

Por que:

10000000000 1000000000 100000000 10000000 0000000 100000 10000 0000 000 00 0

1 x 210

1 x 29

1 x 28

1 x 27

0 x 26

1 x 25

1 x 24

0 x 23

0 x 22

0 x 21

0 x 20

1024 512 256 128 0 32 16 0 0 0 0

11110110000 1968

Veja outro exemplo, com o número 1976:

10000000000 1000000000 100000000 10000000 0000000 100000 10000 1000 000 00 0

1 x 210

1 x 29

1 x 28

1 x 27

0 x 26

1 x 25

1 x 24

1 x 23

0 x 22

0 x 21

0 x 20

1024 512 256 128 0 32 16 8 0 0 0

11110111000 1976

Por fim, o número 2010:

10000000000 1000000000 100000000 10000000 1000000 000000 10000 1000 000 10 0

1 x 210

1 x 29

1 x 28

1 x 27

1 x 26

0 x 25

1 x 24

1 x 23

0 x 22

0 x 21

1 x 20

1024 512 256 128 64 32 16 8 4 2 1

11111011010 2010

Sistema Hexadecimal

Decimal Binário Hexadecimal

Page 25: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 24

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17...

0000 0001 0010 0011 0100 0100 0101 0110 0111 1000 1001 1010 1011 1100 1110 1111 10000 10001

0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11

Para se criar combinações possíveis para que se possibilite expressar os números de

0 a 9, são necessários 4 bits, no entanto por meio da análise combinatória, 4 dígitos

combinados entre si, permitem até 16 combinações diferentes. Como existem

apenas 10 dígitos unitários, os outros 6 foram expressos pelo sistema hexadecimal

como A, B, C, D, E e F.

Sistema Octal

Decimal Binário Octal

0 1 2 3 4 5 6 7 8 9 10

000 001 010 011 100 101 110 111 1000 1001 1010

0 1 2 3 4 5 6 7 10 11 12

Mas que curioso...

Em binário:

Decimal Binário

1 2 4 8 16 32

01 10 100 1000 10000 100000

Em Octal:

Decimal Octal

1 8 16 32 64 128

01 10 20 40 100 200

Em Hexadecimal:

Decimal Binário

1 8 16 32 64 128

01 08 10 20 40 80

Page 26: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 25

64 128

1000000 10000000

Por quê?

Números negativos O bit de menor relevância é o da esquerda e o de maior o da direita, este determina

o sinal.

Ex.: 1 em binário é 0001 e no negativo existem duas formas o complemento de 1 que

se invertem os valores e o complemento de 2 que soma-se 1 ao complemento de 2.

Esta é a forma utilizada pelos computadores.

Complemento de 1 2 = 0010

-2 = 1101

470 =

0 1 1 1 0 1 0 1 1 0

1 0 0 0 1 0 1 0 0 1

Complemento de 2 Escolha o padrão de bits e divida por 2. Ex.: padrão de bits 4 (0000 à 1111), ou seja,

de 0 à 15. Divida por 2, de -8 à 0 e depois à +7 (1000 – 0000 – 0111)

2 = 0010

-2 = 1101 + 1 = 1110

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

1000 1001 1010 1011 1100 1101 1110 1111 0000 0001 0010 0011 0100 0101 0110 0111

-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

Page 27: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 26

AULA 3

Cálculos com binários Soma A soma é simples.

Vamos pensar nos numerais do sistema decimal conhecido.

1+0=0 o inverso também se aplica 0+1=1

Para 1+1=2, o resultado 2, deve ser expresso em binário, tendo em vista que,

desculpe, digitei errado, fiz tudo em binário mesmo... SIM! São Iguais!!!

Binário

1+0=0, 0+1=1, 0+0=0 e 1+1=10

Então...

Decimal Binário Decimal Binário

1 +1 2

0001 0001+ 0010

8 +4 12

1000 0100+ 1100

23 +15 38

10111 1111+ 100110

321 +123 444

101000001 +1111011 110111100

Subtração A subtração já um pouco diferente.

1-1, ou seja, (+1) –(+1) = 0, 1-0 = 1, 0-1, apesar de não ser aplicável é contabilizável com

números de maior quantidade de bits.

Decimal Binário Decimal Binário

1 -1 0

0001 0001- 0000

8 -4 4

1000* 0100- 0100

23 -15 8

10111 1111- 1000

321 -123 198

101000001 -1111011 11000110

*Como foi feito?

Da esquerda para a direita: 0-0=0, 0-0=0, 0-1 – roube o 1 da casa à esquerda e passe à

0, então passa a ficar 1-1 na terceira casa da direita para a esquerda e a quarta casa,

que era 1-0, o 1 foi emprestado para a terceira casa, pois era 0-1 e agora é 1-1, então a

quarta ficou0-0=0.

Page 28: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 27

Multiplicação Também semelhante ao sistema decimal, porém a somatória segue o sistema

binário.

A tabela de multiplicação é: 0 x 0 = 0, 0 x 1 = 0, 1 x 0 = 0 e 1 x 1 = 1.

Decimal Binário Decimal Binário

1 x1 1

0001 0001x 0001

8 x4 4

1000* 0100x 100000

23 x15 345

10111 1111x 101011001

321 x123 39483

101000001 x1111011 1001101000111011

*Como assim???

1000 0100 x

0000 0000+ 1000 ++ 0000+++

0100000

Divisão Semelhante ao sistema decimal, mudando somente que as multiplicações e

subtrações internas à divisão sejam em binário.

Decimal Binário Decimal Binário

1 ÷1 1

0001 0001÷ 0001

8 ÷4 4

1000* 0100÷ 0010

23 ÷15 1

10111 1111÷ 0001

321 ÷123 2

101000001 ÷1111011 0010

*Vai explicar ou não???

1000|0100, ou seja, 1000|0100 0010 Ok, mas eu não entendi! 34÷6→100010|110 110 101 1010 110 100

Então vamos exercitar, vista seu colant, coloque uma faixa felpuda na cabeça e

mãos à obra!

Arme e efetue!

Page 29: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 28

Some todos os dígitos do seu R.A.

Multiplique pelo dia de hoje.

Subtraia pelo R.A. do seu colega do lado esquerdo.

Divida pelo número de alunos da sala, presentes.

Mas professor, e se for um número com vírgula?

Para os números fracionários é bem simples, multiplique por 2 e anote a parte

inteira, sendo 0 ou 1, veja:

Converta o número fracionário 0,549843 para binário.

0, 549843 x 2 = 1,099686 → Armazene o 1 e substitua-o por 0 → 1;

0,099686 x 2 = 0,199372 → 0;

0,199372 x 2 = 0,398744 → 0;

0,398744 x 2 = 0,797488 → 0;

0,797488 x 2 = 1,594976 → 1;

0,594976 x 2 = 1,189952 → 1;

0,189952 x 2 = 0,379904 → 0;

...

A representação deve adicionar o 0. antes do número, assim: 0.

10000110001111010011

Page 30: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 29

AULA 4

Conversão de bases Para converter um número de decimal para binário, basta encontrar o valor mais

próximo no correspondente na potência 2.Veja a tabela.

Potência de 2 Posição

... 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 0 1 0.5 0.25 0.125 0.0625 0.03125 0.015625 ...

... 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 ...

Para converter o número 1946, encontre a maior potência de 2 que permita a

subtração, neste caso, 1024, na posição 10, então:

1946 – 1024 = 922 (Escreva 1 na posição 10)

922 – 512 = 410 → 1 na posição 9

410 – 256 = 154 → 1 na 8

154 – 128 = 26 → 1 na 7

26 – 64 = Não é possível, então → 0 na 6

26 – 32 = 0 na 5

26 – 16 = 10 → 1 na 4

10 – 8 = 2 → 1 na 3

Page 31: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 30

2 – 4 = 0 na 2

2 – 2 = 0 → 1 na 1(Não confunda, foi possível subtrair, o resultado foi 0, marque 1)

0 – 0 = 0

Então

10 9 8 7 6 5 4 3 2 1 0

1 1 1 1 0 0 1 1 0 1 0

E se for com vírgula?

123,456

123.456 – 64 = 59.456 (1 na 6)

59.456 – 32 = 27.456 (1 na 5)

27.456 – 16 = 11.456 (1 na 4)

11.456 – 8 = 3.456 (1 na 3)

3.456 – 4 = (0 na 2)

3.456 – 2 = 1.456 (1 na 1)

1.456 – 1 = 0.456 (1 na 0)

0.456 – 0.5 = (0 na -1)

0.456 – 0.25 = 0.206 (1 na -2)

0.206 – 0.125 = 0.081 (1 na -3)

0.081 – 0.0625 = 0.0185 (1 na -4)

0.0185 – 0.03125 = (0 na -5)

0.0185 – 0.015625 = 0.002875 (1 na -6)

...

Ponto Flutuante Assim como os números inteiros seguem a progressão de Napier (2, 4, 8, 16, 32...) os

fracionários obedecem a mesma proporção se dividindo ao meio (0,5, 0,25, 0,125,

0,0625...).

Page 32: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 31

Para se realizar os cálculos deve-se seguir as mesmas condições dos números

inteiros, assim:

101,101

4 + 0 + 1, 0,5 + 0 + 0,125

5,675

Continua...

Conversão Octal para Decimal Basta dividir por 8 e armazenar o resto da divisão. Ex.:

174 : 8 = 21,75, ou seja, 21. 21 x 8 = 168. 174-168 = 6. 6 é o resto da divisão. Armazene o

6.

21 : 8 = 2. Resto 5.

2 : 8 -> impossível, logo é resto. Armazene o 2.

Leia do fim para o começo. 256 é o Octal do decimal 174.

A conversão inversa, do octal para o decimal basta adota a base 8 e a progressão do

logaritmo de Napier.

2

x

5

x

6

x

82 81 80

64 8 1

128 + 40 + 6

174

Entendendo:

Separe por valor nominal, 256, o 6 vale 6, o 5, 5 e o 2, 2. Multiplique pelo valor

posicional de base 8, conforme tabela. Some os resultados!

Converta: 189, 127 e 686 para octal.

Decimal Hexadecimal Assim como no octal, basta dividir por 16 e armazenar o resto da divisão. Ex.:

686 : 16 = 42. Resto 14. Converta para Hexadecimal -> E.

42 : 16 = 2. Resto 10, convertido A.

Page 33: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 32

2 : 16. Impossível, logo é o Resto 2.

2AE.

2AE para decimal.

2

x

A(10)

x

E(14)

x

162 161 160

256 16 1

512 + 160 + 14

686

Converta: A2F, B8C e ABC para decimal.

Page 34: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 33

AULA 4

Eletrica ... eletrônica – circuitos elétricos 0+0 = 00, ou seja, 0

Como funciona?

O interruptor simples na parte superior é o sinal de igual, ao ligar, permite a

passagem de energia para as lâmpadas no neutro, ou seja, como o 0 é a ausência de

sinal, não importa a posição dos interruptores, pois só depois do sinal de = é que o

sistema trabalha.

0+1 = 01, ou seja, 1

Note que o interruptor da esquerda está ligado na posição 1 e o interruptor da

direita na posição 0, ou seja, 1 + 0 em binário 01, a lâmpada da direita desligada e a

da esquerda ligada.

Page 35: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 34

1 + 0 = 01, ou seja, 1. Também.

A posição dos interruptores mudou, mas as lâmpadas não, isto por que 0+1 ou 1+0 o

resultado é 01.

Page 36: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 35

1+1 = 10, ou seja, 2.

Como o computador não entende o numeral 2, o resultado é em binário 10.

Veja.

0+0 = 00 = 0

0+1 = 01 = 1

1+0 = 01 = 1

1+1 = 10 = 2

Page 37: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 36

AULA 5

Portas lógicas

Partindo destas lógicas, para criar um somador simplificado ou semi-somador o

esquema seria:

Ou seja....

Page 38: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 37

Exercício:

Se para somar é preciso criar a porta acima, crie um somador, um circuito de

subtração, multiplicação e divisão, com uso das portas AND, OR, XOR e NOT.

http://www.forumpcs.com.br/comunidade/viewtopic.php?t=128671

Page 39: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 38

AULA 6

Circuitos Circuito Somador

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 0 e “vai 1″

A B S Cout

0 0 0 0

0 1 1 0

1 0 1 0

1 1 0 1

Circuito Meio Somador

Soma completa

A B Cin S Cout

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

Page 40: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 39

Circuito Somador Completo

Page 41: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 40

Circuito Subtrator

0-0=0

0-1=1 “empresta 1″

1-0=1

1-1=0

A B S Cout

0 0 0 0

0 1 1 1

1 0 1 0

1 1 0 0

Circuito Meio Subtrator

Subtração Completa

A B Cin S Cout

0 0 0 0 0

0 0 1 1 1

0 1 0 1 1

0 1 1 0 1

1 0 0 1 0

1 0 1 0 0

1 1 0 0 0

1 1 1 1 1

Page 42: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 41

Circuito Subtrator Completo

Page 43: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 42

Circuito Multiplicador

0 x 0 = 0

0 x 1 = 0

1 x 0 = 0

1 x 1 = 1

A B S Cout

0 0 0 0

0 1 0 0

1 0 0 0

1 1 1 0

Circuito Meio Multiplicador

Multiplicação completa

A B Cin S Cout

0 0 0 0 0

0 0 1 0 0

0 1 0 0 0

0 1 1 0 0

1 0 0 0 0

1 0 1 0 0

1 1 0 0 0

1 1 1 1 0

Page 44: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 43

Circuito Multiplicador Completo

Page 45: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 44

Circuito Divisor

0 / 0 = 0

0 / 1 = 0

1 / 0 = 0

1 / 1 = 1

A B S Cout

0 0 0 0

0 1 0 0

1 0 0 0

1 1 1 0

Circuito Meio Divisor

Divisão completa

A B Cin S Cout

0 0 0 0 0

0 0 1 0 0

0 1 0 0 0

0 1 1 0 0

1 0 0 0 0

1 0 1 0 0

1 1 0 0 0

1 1 1 1 0

Page 46: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 45

Circuito Divisor Completo

http://ozark.hendrix.edu/~burch/logisim/pt/index.html

http://ozark.hendrix.edu/~burch/logisim/pt/download.html

http://sourceforge.net/projects/circuit/

Esquema elétrico

Page 47: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 46

Para saber mais: www.waitingforfriday.com

Page 48: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 47

AULA 7

bit, Byte e a Palavra

O dígito é a menor parte de um dado e aqui chamado de bit (BInary digiT). O Byte é

o conjunto de bits e a palavra é o conjunto de Bytes.

0 – bit

0100111101011 – Byte

Para a compreensão da palavra vamos adotar uma palavra de 48 bits, abaixo.

47 43 39 35 31 27 23 19 15 11 7 3

46 42 38 34 30 26 22 18 14 10 6 2

45 41 37 33 29 25 21 17 13 9 5 1

44 40 36 32 28 24 20 16 12 8 4 0

Codificação EBCDIC A codificação EBCDIC (Extended, Binary Coded with Decimal Interchanged Code)

considera o Byte contendo 8 bits, neste caso, a palavra adotada de 48 bits, tem 6

Bytes, como cada Byte contém 8 bits, podemos arranjar 28=256 combinações

diferentes, sendo:

10 dígitos para o sistema decimal;

26 para as letras maiúsculas do alfabeto;

50 para os caracteres especiais.

Veja abaixo uma palavra de 6 Bytes neste sistema, a palavra “ERWIN .”.

E R W I N .

1 0 1 1 1 0 1 1 1 0 0 1

1 1 1 0 1 1 1 0 1 1 1 0

0 0 0 0 1 1 0 0 0 0 0 1

0 1 1 1 0 0 0 1 1 1 0 1

Ou 110001011101100111100110110010011101010111000011 = Erwin. = 48 bits

Observe que a letra A é representada por 11000001, o espaço é 01000000 e o ponto

é 11000011.

Codificação BCD Como vimos, na codificação EBCDIC, das 256 combinações possíveis, apenas 46 são

suficientes para todos os ditos e caracteres. Na codificação BCD (Binary Coded

Decimal) o Byte é formado por 6 bits, o que representa uma grande economia de

espaço. Na mesma palavra de 48 bits, adotada anteriormente, a codificação BCD

divide a palavra em 8 Bytes, diferentemente dos 6 Bytes da codificação EBCDIC.

Veja:

Page 49: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 48

7 5 3 1

47 43 39 35 31 27 23 19 15 11 7 3

46 42 38 34 30 26 22 18 14 10 6 2

45 41 37 33 29 25 21 17 13 9 5 1

44 40 36 32 28 24 20 16 12 8 4 0

6 4 2 0

A palavra então será:

U L A N

1 0 1 1 1 0 0 0 0 1 0 1

1 0 0 0 1 1 1 1 1 0 1 0

0 0 0 0 1 0 0 1 0 0 0 1

1 1 0 0 0 0 0 0 1 1 1 1

H M N .

Ou 110100011000100011100100010001100101100101011011 = Uhlmann. = 48 bits

Codificação Hexadecimal Utiliza apenas 4 bits, é o meio Byte EBCDIC, veja:

EBCDIC E R W I N .

1 0 1 1 1 0 1 1 1 0 0 1

1 1 1 0 1 1 1 0 1 1 1 0

0 0 0 0 1 1 0 0 0 0 0 1

0 1 1 1 0 0 0 1 1 1 0 1

HEXA. C 5 D 9 E 6 C 9 D 5 4 B

Ou C5D9E6C9D54B

Da mesma forma que o sistema Octal é meio Byte BCD.

Codificação ASCII A codificação ASCII (American Standard Coded for Information Interchange) utiliza

7 bits de um Byte de 8 bits., configurando a compactação do sistema BCD com a

amplitude do sistema EBCDIC.

9 7 5 3 1

47 43 39 35 31 27 23 19 15 11 7 3

46 42 38 34 30 26 22 18 14 10 6 2

45 41 37 33 29 25 21 17 13 9 5 1

44 40 36 32 28 24 20 16 12 8 4 0

8 6 4 2 0

Veja abaixo a tabela para as codificações BCD, EBCDIC e ASCII

Caráter BCD Octal EBCDIC Hexadecimal ASCIl

Espaço 110 000 60 0100 0000 40 000 0000

. 011 011 33 0100 1011 4B 010 1110

( 111 100 74 0100 1101 4D 010 1000

Page 50: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 49

+ 010 000 20 0100 1110 4E 010 1011

$ 101 011 53 0101 1011 5B 010 0100 * 101 100 54 0101 1100 5C 010 1010

) 011 100 34 0101 1101 5D 010 1001

— 100 000 40 0110 0000 60 010 1101

/ 110 001 61 0110 0001 61 010 1111

‘ 111 011 72 0110 1011 6B 010 0111

, 001 100 14 0111 1101 7D 010 1100

= 001 011 13 0111 1110 7E 011 1101

A 010 001 21 1100 0001 C1 100 0001

B 010 010 22 1100 0010 C2 100 0010

C 010 011 23 1100 0011 C3 100 0011

D 010 100 24 1100 0100 C4 100 0100

E 010 101 25 1100 0101 C5 100 0101

F 010 110 26 1100 0110 C6 100 0110

G 010 111 27 1100 0111 C7 100 0111

H 011 000 30 1100 1000 C8 100 1000

I 011 001 31 1100 1001 C9 100 1001

J 100 001 41 1101 0001 D1 100 1010

K 100 010 42 1101 0010 D2 100 1011

L 100 011 43 1101 0011 D3 100 1100

M 100 100 44 1101 0100 D4 100 1101

N 100 101 45 1101 0101 D5 100 1110

O 100 110 46 1101 0110 D6 100 1111

P 100 111 47 1101 0111 D7 101 0000

Q 101 000 50 1101 1000 D8 101 0001

R 101 001 51 1101 1001 D9 101 0010

S 110 010 62 1110 0010 E2 101 0011

T 110 011 63 1110 0011 E3 101 0100

U 110 100 64 1110 0100 E4 101 0101

V 110 101 65 1110 0101 E5 101 0110

W 110 110 66 1110 0110 E6 101 0111

X 110 111 67 1110 0111 E7 101 1000

Y 111 000 70 1110 1000 E8 101 1001

Z 111 001 71 1110 1001 E9 101 1010

0 000 000 00 1111 0000 F0 011 0000

1 000 001 01 1111 0001 F1 011 0001

2 000 010 02 1111 0010 F2 011 0010

3 000 011 03 1111 0011 F3 011 0011

4 000 100 04 1111 0100 F4 011 0100

5 000 101 05 1111 0101 F5 011 0101

6 000 110 06 1111 0110 F6 011 0110

7 000 111 07 1111 0111 F7 011 0111

8 001 000 10 1111 1000 F8 011 1000

9 001 001 11 1111 1001 F9 011 1001

Page 51: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 50

AULA 8

Armazenamento de Mídias Som Armazenar números é relativamente simples, letras, a partir de uma tabela de

conversões também se torna descomplicado, mas os sons são um pouco mais

complexos.

Primeiro é preciso entender o som, veja figura

Amostra

Imagens Para as imagens primeiro é preciso entender as cores. Elas seguem o padrão

Hexadecimal de codificação. O monitor possui 3 cores distintas, dispostas lado a

lado, sendo Vermelho, Verde e Azul, ou o padrão RGB, do acrônimo inglês.

Ao misturar as cores com INTENSIDADES diferentes, obtém-se novos padrões de

cores. As cores seguem a seguinte tabela.

Red Green Blue

Vermelho 255 0 0

Verde 0 255 0

Azul 0 0 255

Amarelo 255 255 0

Ciano 0 255 255

Magenta 255 0 255

Branco 255 255 255

Preto 0 0 0

Page 52: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 51

A codificação informa o padrão de bits a serem armazenados e o responsável pelas

cores, ou a saída delas é o monitor.

Uma imagem é na verdade a distribuição das cores dentro de um arquivo, veja:

Para entender melhor veja seguinte figura:

Extensões:

BMP

16milhoes de cores e alta definição. Arquivos grandes.

JPEG

16 milhões de cores e definição variável, com compressão. Arquivos compactos.

Page 53: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 52

GIF

256 cores, compressivo, alta qualidade de imagem baixa em cores. Tamanhos

compactos. Suporta fundo transparente e animações.

PNG

Livre, ideal para WEB, Alta qualidade, transparência, compressão e tamanhos

reduzidos. Fundo transparente, sem animação.

Page 54: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 53

Page 55: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 54

Aula 8

Memória Principal Com a finalidade de armazenar seus dados, um computador contém um conjunto

grande de circuitos, cada qual capaz de armazenar um bit. A este conjunto

denominamos memória principal da máquina.

Organização da Memória Se a memória é composta de circuitos, basta entender que um único circuito é

capaz de armazenar 1 bit, seja ele 0 ou 1, ou seja, ligado, energizado ou não.

Podemos então, organizar estes circuitos em 8 bits cada para a formação de uma

palavra, denominando assim de célula. Cada célula contém seu endereço,

especificado por um código Hexadecimal, e estabelece uma ordem, sendo assim a

célula anterior ou posterior à aquela.

Por fim, pelo fato de uma célula ser endereçada, os dados podem ser armazenados

em qualquer endereço, pois este sempre é conhecido e registrado, assim, por ter

endereço indeterminado, porém localizável, o acesso pode ser randômico, o que dá

o nome à esta memória de Random Access Memory (RAM).

Arquitetura de Computadores Os circuitos responsáveis pelas operações lógicas, como adição e multiplicação, são

isolados numa parte denominada UCP (Unidade Central de Processamento) ou

simplesmente Processador.

O Processador é dividido em duas partes, a Unidade Aritmética e Lógica (UAL), que

manipula os dados e a Unidade de Controle, que contém os circuitos de

coordenação, controle, das atividades da máquina.

Para armazenamento temporário o processador possui memórias de

funcionamento semelhante à memória principal. Esses registradores são

classificados como de Propósito Geral ou Propósito Específico.

Os registradores de Propósito Geral funcionam com posições temporárias para

realização dos cálculos matemáticos.

Ex.: (8+3) x 2 = O numeral 8 será armazenado no registrador específico, o numeral 3

será armazenado na posição 2 do registrador, então o 8 e o 3 são somados na UAL e

este resultado armazenado na posição 3 do registrador.

Quanto maior a quantidade de registradores maior a capacidade de processamento

de dados.

O passo seguinte é a multiplicação da soma (8+3) 11 por 2, sendo que o 2 já estava

armazenado na posição 4 do registrador. O fator resultante é armazenado na

posição 5.

Page 56: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 55

O resultado da expressão era então armazenado na memória principal.

A dificuldade era fazer com que os computadores fossem flexíveis com seus

resultados, trabalhando com variáveis.

O comparativo é a caixa de música, que é sempre a mesma música e um CD player.

O conteúdo é variável enquanto os modelos antigos trabalhavam com constantes.

von Neumann, que propôs a arquitetura das variáveis, que até hoje é utilizada. Se

não houvesse a unidade de controle os dados do programas seriam removidos da

memória principal e poderiam ser alterados. Dessa forma, a re-ligação dos fios da

memória para a CPU e então para a UAL.

Os circuitos de um computador que executam operações com dados (como adição

e multiplicação) não são diretamente conectados às células de armazenamento da

memória principal do computador, ficando isolados em uma parte conhecida como

Unidade Central de Processamento ou UCP (Central Processing Unit - CPU) ou

simplesmente, processador. Esta unidade consiste em duas partes: a unidade

aritmética e lógica, que contém os circuitos que manipulam os dados, e a unidade

de controle que contém os circuitos que coordenam as atividades da máquina.

Para armazenamento temporário de informação, a UCP contém células ou

registradores, que são semelhantes às posições da memória principal. Tais

registradores podem ser classificados como de propósito geral ou específico.

Os registradores de propósito geral funcionam como posições temporárias de

armazenamento para dados que estão sendo manipulados pela UCP. Esses

registradores guardam os dados de entrada da Unidade Aritmética Lógica (UAL) e

proporcionam um local de armazenamento para os seus resultados. Para executar

uma operação sobre dados guardados na memória principal, é responsabilidade da

Unidade Controle (UC) transferir os dados da memória para os registradores de

propósito geral, informar a UAL, cujos registradores armazenam os dados, ativar o

circuito apropriado contido nesta unidade e informá-la sobre qual registrador

receberá o resultado.

Para poder transferir padrões de bits entre o processador de um computador e a

memória pricipal, tais elementos são interconectados por um conjunto de fios

chamado VIA (bus). Através desta via, o processador pode extrair ou ler dados da

memória correspondente juntamente com um comando de leitura. Do mesmo

modo, o processador pode colocar ou escrever dados na memória, fornecendo,

para isso, o endereço da posição de destino e os dados a serem armazenados,

acompanhados de um sinal de gravação.

Page 57: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 56

Veja um roteiro para somar valores armazenados na memória, em pseudo código:

1. Obter da memória um dos valores a somar e guardá-lo em um registrador. 2. Obter da memória a outra parcela e armazená-la em outro registrador. 3. Acionar o circuito da adição, tendo os registradores utilizados noa passos 1 e

2 como entradas, e escolher outro registrador para armazenar o resultado. 4. Armazenar o resultado na memória. 5. Finalizar.

Unidade

Aritmética

Lógica (UAL)

Unidade de Controle

Registradores

Memória

Principal

Via

Processador

Dados

Read

Write

Endereços

Decodificador de

endereços

ROM 1

RAM 1

RAM 2

P 1

P 2...

W R

Barramento de dados

Barramento de endereços

IHM

Page 58: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 57

AULA 9

Circuitos combinados Denomina-se circuito combinado, ou combinatório, o conjunto de portas lógicas

que exerçam a função para que foram criadas, independente de estado, ou seja, o

resultado sempre será o mesmo, diferentemente dos circuitos sequenciais que

dependem do estado em que estão, ou seja, o resultado pode variar.

Somador Veja o semi-somador:

FIGURA 1 - SEMI-SOMADOR

FIGURA 2 - SOMADOR COMPLETO

FIGURA 3 - SOMADOR DE 4 BITS

Subtrador

FIGURA 4 - SUBTRADOR

Multiplexadores Os multiplexadores são responsáveis por transportar um sinal de 2, 4, 8, 16 ou mais

canais (base 2) por um única canal.

Page 59: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 58

São utilizados para transporte de sinais a longas distâncias, economizar vias e criar

lógicas de ordem para o transporte, em especial quando atuam em conjunto com os

desmultiplexadores.

Quando um circuito tiver que trabalhar (ou retrabalhar um sinal) e tiver duas

entradas, situação impossível, o multiplexador decide qual sinal deverá entrar

naquele momento, de forma matemática.

FIGURA 5 - MUX DE 2 BITS

FIGURA 6 - MUX DE 4 BITS

Decodificadores Os decodificadores são o oposto da criação dos códigos. Os decodificadores

permitem recuperar informações codificadas, como os números binários em

números decimais. Um decodificador com 4 entradas permite a criação de um

display que exiba de 0 à F, este display é composto de 7 saídas, codificadas de A à G.

Veja um exemplo de um decodificador de 2 entradas e um display.

FIGURA 7 – DECODIFICADOR DE 2 BITS

FIGURA 8 - DECODIFICADOR DE 4 BITS

E onde uso os decodificadores?

Page 60: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 59

FIGURA 9 – DISPLAY

FIGURA 10 - DISPLAY DE 4 BITS

FIGURA 11 - DISPLAY DE 8 BITS

Onde consigo simuladores digitais?

Digital Works - http://www.electronics-lab.com/downloads/cnt/fclick.php?fid=52

TK gate - http://www.tkgate.org/

Yenka - http://www.yenka.com/

DigiLab

logisim - http://www.awadallah.com/digilab.html

Page 61: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 60

AULA 10

Flip-Flop Flip-flops são circuitos que possuem a característica de manter os bits de saída

independente de energia, podem ser considerados os princípios das memórias. Um

dos circuitos sequenciais mais simples é o constituído por duas portas NOR

realimentadas, ou seja, uma das saídas de cada porta é direcionada para a entrada

da outra, veja:

R S Q

0 0 0

0 1 1

1 0 1

1 1 0

TABELA 1 - TABELA VERDADE FLIP-FLOP

R S Q

0 0 1

0 1 0

1 0 0

1 1 0

TABELA 2 - TABELA VERDADE NOR

FIGURA 12 - FLIP-FLOP

Este tipo de flip-flop é chamado de assíncrono, pois independe de qualquer

operação, aplicando seu resultado imediatamente ao estímulo. Isto faz com que

este circuito possa armazenar 0 ou 1 em nível lógico.

O flip-flop síncrono, por sua vez é utilizado quando há um conjunto deles

trabalhando e dependem que seus resultados ocorram ao mesmo tempo. Para que

haja tal sincronismo há a entrada chamada clock que permite que todos eles

mudem de estado ao mesmo tempo, veja:

TABELA 3 - FLIP-FLOP SÍNCRONO

ROM Read-Only Memory são memórias que servem apenas para leitura e não permitem a

alteração de estado como nos flip-flop. São programadas pelo fabricante de forma

física. Seu emprego é normalmente associados à dispositivos eletrônicos que

apenas manipulem dados de entrada e não necessitam armazenas dados. Quando

existe esta necessidade, então emprega-se as memórias PROM, EPROM, EEPROM e

Flash. De forma genérica, o nome de memória ROM também é empregado aos HDs,

Page 62: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 61

CD-ROMs e outras mídias de armazenamento estável, no entanto isto é feito de

forma incorreta, pois para se reprogramar uma memória ROM são necessários

artifícios que intervenham em sua arquitetura, como segue:

ROM – A memória é construída com um decodificador associado à portas lógicas e

suas conexões são soldadas pelo fabricante, o que impede sua alteração. O

funcionamento de uma ROM é o recebimento do endereço binário vindo do

decodificador e o transforma em uma palavra com capacidade do exponencial do

número de entradas, ou seja, se tiver 2 entradas de endereço, terá uma capacidade

de armazenamento de 4 bits, se forem 4 bits de endereço, serão 16 bits de

armazenamento e 8 para 64b;

FIGURA 13 – READ ONLY MEMORY

PROM – Programmable ROM são memória que permitem a alteração de seu estado

original apenas uma vez, ou seja, o fabricante cria as N possibilidades de

programação, como se fossem fusíveis, que ao serem queimados perdem a

conexão. Isto é conseguido com conexões realizadas de modo lógico. O simples

fato de se programa-la altera em definitivo seu estado;

FIGURA 14 - PROGRAMMABLE ROM

EPROM – Erasable PROM são memórias que tem um funcionamento diferente, pois

por meio de radiação ultra-violeta o conteúdo pode ser alterado, ou melhor,

apagado e assim, permite-se a programação de novo. São reconhecidas pela janela

na parte superior do chip. Normalmente o BIOS era construído com EPROMs e um

adesivo do fabricante para proteger do apagamento acidental. Podem armazenar

de 16.000bits (16Kb = 2KBytes) até mais de 4Mbits, ou 512KBytes. O processo de

apagar uma memória deve ser feito com ela for do sistema e leva cerca de 30

minutos.

Page 63: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 62

FIGURA 15 - ERASABLE PROM

EEPROM – Eletrically EPROM são memórias que podem ser escritas e apagadas por

meio de eletricidade, em uso no circuito. Para se gravar os dados, usa-se uma

voltagem elétrica alta, assim como na EPROM, no entanto essa voltagem superior

causa a deterioração dos componentes, assim como a memória flash, que utiliza o

mesmo recurso, as memórias EEPROM tem um limite de uso de cerca de 100.000 à

1.000.000 de vezes de gravação, isto significa que deve-se evitar o trabalho on-line

em que se grava constantemente os dados diretamente na EEPROM, devendo-se

fazê-lo somente após a conclusão do trabalho.

FIGURA 16 - ELETRICALLY EPROM

Flash – As memórias Flash são semelhantes às EEPROM, no entanto trabalham com

blocos de gravação, ou seja, com Bytes e as EEPROM trabalham bit a bit. São

memórias mais baratas e de maior velocidade de gravação, pois realizam a escrita

dos endereços em blocos, ou seja, vários de uma só vez e a arquitetura de escrita e

reescrita procura a utilização de endereços não utilizados, assim aumentando a vida

útil da memória, diferente dos HDs que procuram utilizar o mesmo endereço para

otimizar a velocidade de leitura e ganhar velocidade. Como a leitura é lógica, sua

velocidade é única.

Page 64: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 63

FIGURA 17 - MEMÓRIA FLASH

CD-ROM – Compact Disc ROM são memórias apenas de leitura, pois utilizam um

feixe de laser para gravar de forma irreversível os bits num superfície plástica

reflexiva, ao queimar não irá refletir, logo sendo atribuído o valor 0. Os CDs do tipo

Read and Write (RW) a camada é feita de material mais duro, ou seja, o processo de

apagamento dos dados rouba uma camada vizinha o que permite reflexão

novamente no mesmo ponto, porém a vida é curta de uma mídia doeste tipo, seja

para o número de gravações como para leitura, pois é um processo à laser, que

pode gastar a superfície do CD.

RAM Random Access Memory são memórias de acesso aleatório, este nome,

propriamente não se aplica somente às memórias RAM, mas muitos tipos de

memórias ROM também, isto significa a diferença entre as memórias ROM e RAM

está no fato de serem voláteis, ou seja, perderem seu estado quando desligadas. Há

algumas memórias RAM que também mantem seus dados mesmo com o

computador desligado, à exemplo do relógio, mas não há nada diferente, mas sim

uma bateria que mantém seus dados ativos.

Uma memória RAM possui as seguintes características:

Capacidade em células – Nº de células disponíveis na RAM. Sempre potência de 2.

Largura – Quantos bits/célula são possíveis de se armazenar por vez. Sempre múltiplos de 8 (8,16,32,64,128...) e sua largura é denominada PALAVRA, sempre em potência de 2 (1,2,4,8,16...).

Capacidade em Bytes – Produto da capacidade pela largura em Bytes. Se uma memória tiver 16 células (figura 19) e cada célula 16 bits (2 Bytes), então a capacidade da memória será de 32 Bytes. 16 x 2, ou (16 x 16) / 8.

Endereço – Número da célula. Para se endereçar uma memória é preciso de espaço para endereçamento. Esta memória auxiliar para o endereçamento deve ter a largura (em bits) dependendo da quantidade de células que tem a memória, ou seja, uma memória como da figura 19, com 16 células, precisará de 4 bits para armazenamento de endereços, de forma oposta, uma RAM com 4MBytes de capacidade deve ter 512 células com largura de 64bits resultando numa capacidade de 2048. Outro exemplo

Page 65: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 64

En

de

reço

(W

rite

)

Célula 0 Valo

r Escrito

(Re

ad)

Célula 1

Célula 2

Célula 3

Célula 4

Célula 5

Célula 6

Célula 7

Célula 8

Célula 9

Célula 10

Célula 11

Célula 12

Célula 13

Célula 14

Célula 15

FIGURA 18 - ESQUEMA DE UMA MEMÓRIA RAM COM 16 CÉLULAS

Veja alguns exemplos:

células largura (b) capacidade (B) Endereço (H) Total (B)

2 8 Cél. x larg. -> 2 x 8 = 16b ou 2B (1B = 8b) 2(0010) 2

células largura (b) capacidade (B) Endereço (H) Total (B)

2 8 2 2(0010) 2

células largura (b) capacidade (B) Endereço (H) Total (B)

16 16 32 A(1010) 32

celulas largura (b) capacidade (B) Endereço (H) Total (B)

16 64 128 A(1010) 128

celulas largura (b) capacidade (B) Endereço (H) Total (MB)

1024 64 8192 400 (10000000000) 8

celulas largura (b) capacidade (B) Endereço (H) Total (GB)

524.288 64 4.194.304 80000 4096

Ou seja, (Capacidade x Largura)/8(bits) = Capacidade total em Bytes

As memórias RAM são rápidas e voláteis, diferentemente das memórias ROM que

utilizam espaços específicos para gravação, estas memórias não se valem de

endereços para alocação ou recuperação dos dados, apenas indicando o endereço.

Page 66: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 65

As memórias podem ser divididas em SDR(Single Data Rate) e DDR(Double Data

Rate), sendo a primeira capaz de entregar 1 dado por pulso de clock, que possuía as

freqüências de 66MHZ, 100MHZ e 133MHZ e eram utilizadas até o Pentium III ou

AMD Athlon.

As memórias DDR, por sua vez, tem a capacidade de transmitir o dobro de dados

por pulso de clock, atingindo o dobro da velocidade que as memórias SDR sem a

necessidade de alterar a velocidade do barramento, ou seja, uma memória que

opere em 100MHZ tem a velocidade efetiva de 200MHZ. AS memórias DDR2,

passaram a trabalhar com 4 bits por pulso de clock e as DDR3, 8 bits, atingindo uma

velocidade máxima de 1600MHZ.

TABELA 4 - ESPECIFICAÇÕES TÉCNICAS DAS MEMÓRIAS

Nome padrão

Clock dos chips

Ciclo de tempo

Clock real

Dados por segundo

Nome do módulo

Taxa de transferência

DDR-200 100 MHz 10 ns 100 MHz 200 Milhões PC-1600 1600 MB/s

DDR-266 133 MHz 7.5 ns 133 MHz 266 Milhões PC-2100 2100 MB/s

DDR-300 150 MHz 6.67 ns 150 MHz 300 Milhões PC-2400 2400 MB/s

DDR-333 166 MHz 6 ns 166 MHz 333 Milhões PC-2700 2700 MB/s

DDR-400 200 MHz 5 ns 200 MHz 400 Milhões PC-3200 3200 MB/s

Page 67: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 66

AULA 11

Processador de 8 bits

Veja a animação do processamento.

Depois de compreender a animação é preciso entender o funcionamento do sinal de

operação aplicado à ALU.

TABELA 5 - SINAL DE OPERAÇÃO DA ALU

Sinal

da ALU Operação Multiplexador Obs.:

0 0 A + B Saída do somador XOR não altera o operando B

0 1

A – B

ou

A + (-B)

Saída do somador

(subtrador [simétrico de

B])

B é complemento de 2:

XOR troca todos os bits do

operando B

A entrada de transporte do

somador dica com 1, logo soma

mais 1

1 0 A ^ B Saída da porta AND Conjunção lógica (AND) bit a bit dos

dois operandos

1 1 A v B Saída da porta OR Disjunção lógica bit a bit (OR) dos

dois operandos

Processador

Un. De

CTRL

Un. De

Dados

Memória de

instruções

Memória de

dados

Periféricos I/O

FIGURA 19 - ARQUITETURA VON NEUMANN

Page 68: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 67

AULA 12

Barramentos O computador de 4ª geração é um composto de diversos tipos de memórias, RAMs

e ROMs, dispositivos simples ou complexos de Interface Homem Máquina, como

um simples botão de ligar ou desligar ou uma impressora e um ou mais

processadores.

Para permitir a comunicação entre todos os dispositivos, o meio físico para esta

interligação é o barramento que é o conjunto de ligações paralelas que permitem a

comunicação entre os dispositivos. O barramento pode ser dividido em:

Barramento de endereços – que permite a localização dos dispositivos e caso seja

um composto celular, quais devem ser acessadas.

Barramento de dados – é utilizado pelo processador para ler e escrever os dados

contidos nos dispositivos. Diferente dos outros barramentos, este é bidirecional,

pois permite a leitura e a escrita de dados.

Barramento de controle – é constituído pelos sinais de controle de acesso à

memória, do processador e dos periféricos.

FIGURA 20 – BARRAMENTOS

Como se pode observar na ilustração, a diferença entre um barramento e uma via

de ligação simples é a possibilidade de se conectar mais de um dispositivo ao

mesmo tempo.

Como o barramento é uma via de condutores elétricos, um dos fatores

determinantes do desempenho de um computador é a largura do barramento, que

Processador

Dados

Read

Write

Endereços

Decodificador de

endereços

ROM 1

RAM 1

RAM 2

P 1

P 2...

W R

Barramento de dados

Barramento de endereços

IHM

Page 69: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 68

é medida em bits, que pode ser um barramento de 8 vias ou 8 bits, 16, 32, 64 ou 128

bits. Para se medir o desempenho de um computador é preciso saber a largura do

barramento que, nos computadores modernos está de acordo com a capacidade do

processador, assim, um processador como o Pentium 4 de 32 bits (4 Bytes) e um

clock de 400MHz do barramento tem uma taxa de transferência de 1600MB/s, ou:

1. 32bits = 4Bytes => 4 x 400MHz = 1600MB/s;

2. 64bits = 8Bytes => 8 x 1066MHz = 8528MB/s, ou 8,5GB/s.

Os barramentos podem ser divididos em 3:

Barramento local – é o barramento mais rápido. Ele interliga o processador à

memória Cache;

Barramento de Sistema – é o barramento que permite a comunicação entre o

sistema de processamento (processador + memória cache) à memória principal por

meio de uma ponte, chamada de ponte norte;

Barramento de expansão – este barramento interliga o conjunto principal

(processador + memória principal) aos dispositivos I/O (in/out), como CD-ROMs,

placas de video, mouse e impressoras. Entre os dispositivos existe a ponte sul que

assim como a norte tem a função de sincronizar as diferentes velocidades de

barramentos internos dos dispositivos e permitir o melhor funcionamento do

sistema.

Page 70: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 69

FIGURA 21 – PLACA MÃE E SEUS COMPONENTES

Outro item importante é o protocolo de comunicação. O ISA (Industry Standart

Architecture) da IBM foi o padrão adotado, por atender o processador 8088 deste

fabricante. Possuía 32 linhas de sinal, sendo 20 para a memória, que são suficientes

para endereçar 1MB, 8 linhas de dados, mais 4 linhas individuais para leitura e escrita

na memória e nos dispositivos de I/O. Este protocolo permite a transferência de 2

Bytes por clock, ou seja, 2 x 8MHz = 16MB/s.

EISA (Extended Industry Standart Architecture) foi proposto pela Compaq e era

basicamente uma evolução do ISA de 16 bits, passando à capacidade de 32 bits, o

que elevou sua taxa de transferência para 32MB/s, isto é, 4b x 8MHz.

VESA (Vídeo Eletronic Standart Association) é o principal componente do

barramento VLB (VESA Local Bus) que é a proposta para o aperfeiçoamento do

processamento de imagens. Como seu barramento era de 32 bits, de frequência

idêntica ao do processador, seu salto de taxa de transferência poderia ser de

132MB/s até 400MB/s, exemplo (32b, ou 4B x 33MHz[processador] = 132MB/s), pois

os processadores poderia atingir velocidades de até 66MHz.

PCI (Peripheral Component Interconnect) foi desenvolvido pela Intel® e tem como

principal qualidade a interconexão entre barramentos, por efetivamente utilizar as

pontes norte e sul. Com transferência de dados de 32 a 64 bits por clock à uma

velocidade de 33 à 66MHz, resultando numa taxa de 132MB/s. É a primeira a possuir

dispositivo plug-n-play.

Page 71: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 70

FIGURA 22 – PCI

Os barramentos PCI-X (extended) e PCI e Express são evoluções que permitem

velocidades maiores por conta de taxas de transferências e de clock, sendo que na

segunda, ela pode utilizar caminhos alternativos de comunicação.

Page 72: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 71

AULA 13

LINGUAGEM DE MÁQUINA Os processadores identificam padrões de bits (0 e 1), com eles se fazem os cálculos

para processamento dos dados. Para se processar esses bits, é preciso estabelecer

um padrão, uma codificação, como ASCII e EBCDIC. Para este conjunto é

denominado linguagem de máquina ou instruções de máquina.

Padrões de Instrução Ao comparar o poder atual das máquinas, como a interatividade, gráficos, jogos e a

Internet, é incrível que todo esse poder provenha de um pequeno número de

instruções básicas. Estas instruções mínimas são chamadas de RISC (Reduced

Instruction Set Computer) ou computador com conjunto mínimo de instruções. A

favor das arquiteturas RISC (Principalmente servidores) é a velocidade e eficiência

de processamento ou o reduzido conjunto para realização de tarefas complexas. De

outro lado as arquiteturas CISC (Complex Instructions Set Computer) ou

Computador com conjunto complexo de instruções, são mais fáceis e rápidas de

programar, pois já possuem diversas rotinas predeterminadas que na RISC devem

ser elaboradas.

Os processadores Pentium são um exemplo de arquitetura CISC, enquanto os

PowerPC da IBM/Apple são processadores de arquitetura RISC.

Como podemos notar nos passos 1, 2 e 4, o termo “Obter” deve ser entendido

como Copiar, o que em termos técnicos, deve ser expresso como carga, ou LOAD.

A instrução CISC informa ao processador para

Obter/Transferir/Mover/Copiar/Carregar um dado da memória, Calcular/Processar e

armazenar num registrador e armazená-lo na memória, ou tecnicamente STORE.

Veja um roteiro para somar valores armazenados na memória, em pseudo

código:

1. Obter da memória um dos valores a somar e guardá-lo em um registrador.

2. Obter da memória a outra parcela e armazená-la em outro registrador. 3. Acionar o circuito da adição, tendo os registradores utilizados nos

passos 1 e 2 como entradas, e escolher outro registrador para armazenar o resultado.

4. Armazenar o resultado na memória. 5. Finalizar.

Page 73: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 72

Instruções Aritméticas/Lógicas No passo 3, podemos notar uma instrução aritmética/lógica. A UAL executa

também operações como AND, OR e XOR.

V(1) AND V(1) = V(1), V(1) OR F(0) = V(1), V(1) XOR F(0) = V(1) OR F(0),

mas não ambos.

Controle O grupo de controle consistem em instruções que tratam da execução do

programa, por exemplo, Se o resultado for 1, pule (JUMP) para o passo 5 ou desvie

(BRANCH) para o circuito B.

Veja outro caso:

Neste caso, o processador possui 16 (0-F) registradores de propósito geral e 256

(00-FF) células na memória principal, cada uma com capacidade de 8 bits.

Utilizando o padrão Hexadecimal a instrução 35A7 (0011 – 0101 – 1010 – 0111) é lida

da seguinte forma, o 3 (0011) significa guarde o conteúdo de um registrador na

memória, o 5 (0101) é o endereço do registrador que receberá os dados o A7 (1010

Veja um roteiro para somar valores armazenados na memória, em pseudo

código:

1. Carregue (LOAD) um registrador com um valor da memória. 2. LOAD outro registrador com outro valor da memória. 3. Se o segundo valor for 0, desvie (BRANCH) para o passo 6. 4. Divida o conteúdo do primeiro pelo segundo e guarde (SHIFT) o

resultado em um terceiro registrador. 5. SHIFT na memória o conteúdo do terceiro registrador. 6. Pare.

Unidade

Aritmética

Lógica (UAL)

Unidade de Controle Memória

Principal

Via

Contador de

Instruções

Registrador

de instruções

0

1

2

3

...

F

00

01

02

03

04

...

FE

FF

Page 74: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 73

0111) indica a célula da memória, então, armazene na célulaA7 da memória o

conteúdo do registrador 5.

Linguagem Assembly Instrução codificada Tradução

156C Carregue o registrador 5 com o padrão de bits encontrado na célula de memória no endereço 6C

166D Carregue o registrador 6 com o padrão de bits encontrado na célula de memória no endereço 6D

5056 Some o conteúdo dos registradores 5 e 6 considerando que representam números na notação de complemento de dois e deixe o resultado no registrador 0.

306E Armazene o conteúdo do registrador 0 na célula de memória de endereço 6E.

C000 Pare.

Exercícios:

Em um computador com memória e registradores de 8bits, escreva a codificação

em Assembly e em binários par as seguintes operações:

1+2=3

Solução:

Célula 01 = 000000001

Célula 02 = 000000010

1. 1001 (Carregue o registrador 0 com o conteúdo da memória 01);

2. 1102 (Carregue o registrador 1 com o conteúdo da memória 02);

3. 5201 (Some o conteúdo dos registradores 0 e 1 e grave no registrador 2);

4. 3203 (Armazene o conteúdo do registrador 2 na célula 03);

Page 75: Ciência da Computação - institutosiegen.com.brinstitutosiegen.com.br/documentos/euhl.13509485521175.pdf · de vezes, mostrou como um multiplicador mecânico com dois contadores

Universidade Guarulhos – Guarulhos - 10/02/2011

Prof. Erwin Alexander Uhlmann – Instituto Siegen - 74

5. C000 (pare).

Como é possível observar pela sequencia, são necessários 5 passos para se realizar

uma simples soma.

3-2+5 = 6

Célula 00 = 00000011

Célula 01 = 11111110

Célula 02 = 00000101

1. 1000 (); -> 1

2. 1101 (); -> 1

3. 1202 (); -> 1

4. 5301 (); -> 2

5. 5423 (); -> 2

6. 3403 (); -> 1

7. C000 (); -> 3

Agora identifique quais itens são de transferência de dados, de aritmética/lógica e

de controle, além de preencher o significado das instruções.