William Stallings Arquitetura e Organização de Computadores 8 a Edição

Documentos relacionados
Arquitetura de Computadores

Arquitetura e Organização de Computadores

Universidade Federal de Uberlândia Faculdade de Computação. Representação e aritmética binária

Aula 3 - Representação de Dados

PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

Arquitetura e Organização de Computadores

Notas de Aula Guilherme Sipahi Arquitetura de Computadores. Aritmética de Inteiros

Aritmética de Ponto Fixo

Organização e Arquitetura de Computadores I

Ponto Fixo e Ponto Flutuante

Arquitetura de Computadores

Sistemas Numéricos e Representação de Dados. Heitor S. Ramos

Cálculo Numérico Conceitos Básicos

Introdução à Computação

Dessa forma pode-se transformar qualquer número em qualquer base para a base 10.

Circuitos Lógicos. Capítulo 9 Aritmérica Digital: Operações e Circuitos

Números Binários. Apêndice A V1.0

Prof. Leonardo Augusto Casillo

Cálculo Numérico Noções básicas sobre erros

étodos uméricos Erros Visão Geral Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

Unidade III. Sistemas Numéricos e o Computador

Representações de Números Inteiros: Sinal e Magnitude e Representação em Excesso de k

Organização e Arquitetura de Computadores I

Capítulo 2. Representação de números em vírgula flutuante

Sistemas de Numeração. Exemplos de Sistemas de Numeração (1) Exemplos de Sistemas de Numeração (2) Sistemas de Numeração

Sistemas Digitais INE 5406

Lista de Exercícios 110 Bases numéricas (lista adaptada das listas do prof. Tiago Dezuo)

3/14/2012. Programação de Computadores O Computador. Memória Principal representação binária

Aula 7: Representações de Números Inteiros: Sinal e Magnitude e Representação em Excesso de k

Capítulo 04 : Sistemas Numéricos

Introdução à Computação

TP062-Métodos Numéricos para Engenharia de Produção Erros-Ponto Flutuante

Multiplicação Divisão

SISTEMA DE NUMERAÇÃO. Introdução a Informática. Vinícius Pádua

Circuitos Lógicos Aula 22

Sistemas de Computação. Representação em Ponto Flutuante

Introdução à Informática

Circuitos Digitais Primeira Lista de Exercícios

Operações Aritméticas Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 2h/60h

Sistemas de Computação. Seção Notas. Valores Interessantes. Notas. Ponto Flutuante. Haroldo Gambini Santos. 26 de abril de 2010.

Cálculo Numérico. Conceitos Básicos

Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos. Circuitos Aritméticos

Home Programa Exercícios Provas Professor Links. 2.1 Representação de um número na base dois. O número binário 101,101 significa, na base dois:

Arquitetura e Organização de Computadores. Sistemas Numéricos

Cálculo Numérico - Mat 215. Prof. Dirceu Melo. Prof. Dirceu Melo - MAT215

Aritmética de Ponto Fixo

Base: número de símbolos empregados no sistema numérico.

Sistemas de Numeração

Operações com números binários

ARQUITECTURA DE COMPUTADORES

Folha Prática - Representação de Números e Erros. 1. Representar os seguintes números decimais em binário com ponto fixo:

IF-UFRJ FIW 362 Laboratório de Física Moderna Eletrônica Curso de Licenciatura em Física Prof. Antonio Carlos

1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35.

Sistemas de Computação

CURSO PRF 2017 MATEMÁTICA

Unidade 3 Aritmética Computacional Uma breve introdução

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

Organização e Arquitetura de Computadores I

Representação de Dados

SISTEMAS DE NUMERAÇÃO CONVERSÕES ENTRE BASES. Prof. André Rabelo

Aula 9. Introdução à Computação. ADS IFBA

Organização e Arquitetura de computadores

Sistemas Numéricos e o Computador

Métodos Numéricos. Turma CI-202-D. Josiney de Souza.

Representação de Valores Números Binários Negativos

Objetivo. Sistemas de Numeração e Códigos. Apresentar técnicas de representação e converção de números em diversos sistemas de numeração.

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Computação e Programação

Eletrônica Digital. Conversão de base e operações aritméticas com números binários. Professor: Francisco Ary

CCI-22 CCI-22. Introdução e Motivação. Matemática Computacional. Conteúdo. Finalidade

Números Binários Operações Aritméticas. Prof. Patrícia G. P. Magalhães

Introdução aos processos de operação aritmética - Subtração

Curso destinado à preparação para Concursos Públicos e Aprimoramento Profissional via INTERNET RACIOCÍNIO LÓGICO AULA 05

Aula 8: Complemento a Um e Complemento a Dois

X. B Y Base do sistema de numeração Dígito do número em questão

Complemento a Um e Complemento a Dois

Aritmética Binária. Adição. Subtração. Aqui tudo nasce do cálculo.

Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Engenharia Lógica Computacional Aplicada. Prof. Dr. Fabian Vargas.

Lista de Exercícios Sistemas de Numeração

CÁLCULO NUMÉRICO (CN)

Aula de hoje. Códigos numéricos. Códigos binários. Armazenamento de dados. Armazenamento de dados. Armazenamento de dados

Aula 9. Aritmética Binária. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

Eletrônica Digital. Instituto Federal de Santa Catarina Campus São José. Área de Telecomunicações. Sistema de Numeração

Binários: Operações matemáticas

ELETRÔNICA DIGITAL Aula 1- Sistemas de Numeração. Prof.ª Msc. Patricia Pedroso Estevam Ribeiro

MANUTENÇÃO DE COMPUTADORES SISTEMAS NUMÉRICOS

Representação de números - Conversão de base b para base 10

Números são números, letras são números e sinais de pontuação, símbolos e até mesmo as instruções do próprio computador são números.

Eletrônica Digital Sistemas de Numeração. Prof. Wanderley

Sistemas de Computação

ARITMÉTICA BINÁRIA. São duas as operações executadas pelo computador:

Arquitetura de Computadores

Matemática Computacional. Edgard Jamhour

CCI-22 CCI-22. Introdução e Motivação. Matemática Computacional. Conteúdo. Finalidade. Carlos Henrique Q. Forster Conteúdo, Avaliação, Bibliografia

1 bases numéricas. capítulo

Modulo 13: para os que ainda tem dúvidas no assunto...

Aproximações e Erros

Estudo de erros Erros na fase de modelagem: 1.2. Erros na fase de resolução:

Representação Digital da Informação I

Prof. Leonardo Augusto Casillo

Transcrição:

William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 9 Aritmética do computador slide 1

Unidade aritmética e lógica Faz os cálculos. Tudo o mais no computador existe para atender a essa unidade. Trata de inteiros. Pode tratar de números de ponto flutuante (reais). Pode ser FPU separada (coprocessador matemático). Pode estar em chip de FPU separado (486DX +). slide 2

Entradas e saídas da ALU slide 3

Conversão de base Figura retirada do livro Structured Computer Organization, 5th ed. slide 4

Representação de inteiros Só tem 0 & 1 para representar tudo. Números positivos armazenados em binário. P.e., 41=00101001. Sem sinal de menos. Sem ponto. Sinal-magnitude. Complemento a dois. slide 5

Sinal-magnitude Bit mais à esquerda é bit de sinal. 0 significa positivo. 1 significa negativo. +18 = 00010010. -18 = 10010010. Problemas: Precisa considerar sinal e magnitude na aritmética. Duas representações de zero (+0 e -0). slide 6

Complemento a dois +3 = 00000011 +2 = 00000010 +1 = 00000001 +0 = 00000000-1 = 11111111-2 = 11111110-3 = 11111101 slide 7

Benefícios Uma representação de zero. Aritmética funciona com facilidade (ver mais adiante). Negação é muito fácil. 3 = 00000011 Complemento Booleano gera 11111100 Some 1 ao LSB 11111101 slide 8

Representação geométrica dos inteiros de complemento a dois slide 9

Negação especial caso 1 0 = 00000000 Not bit a bit 11111111 Some 1 ao LSB +1 Resultado 1 00000000 Estouro ignorado, portanto: - 0 = 0 slide 10

Negação especial caso 2-128 = 10000000 Not bit a bit 01111111 Some 1 ao LSB +1 Resultado 10000000 Portanto: -(-128) = -128 X Monitore MSB (bit de sinal). Ele deve mudar durante a negação. slide 11

Intervalo de números Complemento a 2 com 8 bits: +127 = 01111111 = 2 7-1 -128 = 10000000 = -2 7 Complemento a 2 com 16 bits: +32767 = 011111111 11111111 = 2 15-1 -32768 = 100000000 00000000 = -2 15 slide 12

Conversão entre tamanhos Pacote de número positivo com zeros iniciais. +18 = 00010010 +18 = 00000000 00010010 Pacote de números negativos com uns iniciais. -18 = 10010010-18 = 11111111 10010010 Ou seja, pacote com MSB (bit de sinal). slide 13

Adição e subtração Adição binária normal. Monitore estouro no bit de sinal. Pegue o complemento a dois do subtraendo e some ao minuendo. Ou seja, a - b = a + (-b). Assim, só precisamos de circuitos de adição e complemento. slide 14

Hardware para adição e subtração slide 15

Subtração Regra básica slide 16

Exercícios Faça as operações aritméticas abaixo utilizando números binários de 8 bits e complemento de 2: 1. +9 + 4 2. +9-4 3. -9 + 4 4. -9-4 slide 17

Multiplicação Complexa. Calcule produto parcial para cada dígito. Cuidado com o valor da casa (coluna). Some produtos parciais. slide 18

Exemplo de multiplicação 1011 Multiplicando (11 dec) x 1101 Multiplicador (13 dec) 1011 Produtos parciais 0000 Nota: Se bit multiplicador for 1, copia. 1011 1011 Multiplicando (valor da casa) Caso contrário, zero. 10001111 Produto (143 dec) Nota: precisa de resultado com tamanho duplo. slide 19

Multiplicação binária sem sinal slide 20

Fluxograma para a multiplicação binária sem sinal slide 21

Multiplicando números negativos Isso não funciona! Solução 1: Converta para positivo, se for preciso. Multiplique como antes. Se sinais diferentes, negue a resposta. Solução 2: Algoritmo de Booth. slide 22

Algoritmo de Booth slide 23

Exemplo do algoritmo de Booth Exemplo retirado: http://pt.wikipedia.org/wiki/algoritmo_de_multiplica%c3%a7%c3%a3o_de_booth slide 24

Exemplo do algoritmo de Booth -8 x 2 Exemplo retirado: http://pt.wikipedia.org/wiki/algoritmo_de_multiplica%c3%a7%c3%a3o_de_booth slide 25

Divisão Mais complexa que a multiplicação. Números negativos são realmente maus! Baseada na divisão longa. slide 26

Divisão de inteiros binários sem sinal Divisor Restos Parciais 1011 00001101 10010011 1011 001110 1011 001111 1011 100 Quociente Dividendo Resto slide 27

Fluxograma para divisão binária sem sinal slide 28

Números reais Números com frações. Poderia ser feito em binário puro. 1001.1010 = 2 4 + 2 0 +2-1 + 2-3 =9,625 Onde está o ponto binário? Fixo? Muito limitado. Móvel? Como você mostra onde ele está? slide 29

Ponto flutuante +/- significando x 2 exponente Nome impróprio Ponto é realmente fixo entre bit de sinal e corpo da mantissa Expoente indica valor da casa (posição do ponto) slide 30

Sinais para ponto flutuante Mantissa é armazenada em complemento a dois. Expoente está em notação de excesso ou viesado. P.e., excesso (viés) 128 significa campo de expoente com 8 bits. Intervalo de valor puro 0-255. Subtraia 128 para obter valor correto. Intervalo de -128 a +127. slide 31

Normalização Números de PF geralmente são normalizados, ou seja, expoente é ajustado de modo que bit inicial (MSB) da mantissa seja 1. Por ser sempre 1, não é preciso armazená-lo. (c.f. notação científica, onde os números são normalizados para um único dígito antes do ponto decimal, p.e., 3,123 x 10 3 ) slide 32

Intervalos de PF Para um número de 32 bits: Expoente de 8 bits. +/- 2 256 1,5 x 10 77 Precisão: O efeito de alterar LSB da mantissa. Mantissa de 23 bits 2-23 1,2 x 10-7. Cerca de 6 casas decimais. slide 33

Números representáveis slide 34

Representação de ponto flutuante em binário Vamos ao exemplo, representando, em binário, o número 0,625. 0,625 x 2 = 1,25, logo a primeira casa fracionária é 1. Resta representar o 0,25 que restou ao se retirar o 1 já representado. 0,25 x 2 = 0,5, logo a segunda casa é 0. Falta representar o 0,5. 0,5 x 2 = 1, logo a terceira casa é 1. 0,625 10 = 0,101 2 Quando o número tiver parte inteira e parte fracionária, podemos calcular, cada uma, separadamente. slide 35

Exemplo Representar o número -0,75 10 em ponto flutuante e precisão simples. 1 a fase: converter para binário: 0,75 x 2 = 1,5 1 0,5 x 2 = 1,0 1-0,75 10 = -0,11 2 = -0,11 x 2 0 = -1,1 x 2-1 Em precisão simples: N ( 1) S (1 Mantissa ) ( E Peso ) 2 Resultado: slide 36

IEEE 754 Padrão para armazenamento de ponto flutuante. Padrões de 32 e 64 bits. Expoente de 8 e 11 bits, respectivamente. Formatos estendidos (mantissa e expoente) para resultados intermediários. slide 37

Formatos IEEE 754 slide 38

Aritmética de ponto flutuante (+/-) Verifique zero. Alinhe significandos (ajustando expoentes). Soma ou subtraia significandos. Normalize resultado. slide 39

Fluxograma da adição e subtração de ponto flutuante slide 40

Aritmética de ponto flutuante (x/ ) Verifique zero. Soma/subtraia expoentes. Multiplique/divida significandos (observe sinal). Normalize. Arredonde. Todos os resultados intermediários devem ser em armazenamento de tamanho duplo. slide 41

Multiplicação de ponto flutuante slide 42

Divisão de ponto flutuante slide 43

Leitura recomendada Stallings, Capítulo 9. IEEE 754 no site do IEEE. slide 44