Arquitetura e Organização de Computadores

Documentos relacionados
Arquitetura e Organização de Computadores

Aula 3 - Representação de Dados

Arquitetura de Computadores

Organização e Arquitetura de Computadores I

2. E presse cada um dos seguintes números inteiros decimais na representação sinal e magnitude e complemento a 2, utilizando 8 bits Resposta:

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

Aula 11. A Informação e sua Representação Ponto-Flutuante. Prof. Dr. Dilermando Piva Jr.

Métodos Numéricos Erros Ponto Flutuante. Professor Volmir Eugênio Wilhelm Professora Mariana Kleina

Ponto Fixo e Ponto Flutuante

ARQUITETURA DE COMPUTADORES

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

Aritmética dos Computadores

Organização de Computadores I

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

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

Arquitectura de Computadores I

Introdução. à Ciência da. Representação de Números em Ponto Flutuante. Aula 21. Números Fracionários

ARQUITETURA DE COMPUTADORES

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

Sistemas Digitais INE 5406

Estouro e Representação em Ponto Flutuante

Notas de Aula Guilherme Sipahi Arquitetura de Computadores

Organização e Arquitetura de Computadores I

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

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

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

REPRESENTAÇÃO DE DADOS. Prof. Maicon A. Sartin

ELETRÔNICA DIGITAL I

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

Aula 9: Estouro e Representação em Ponto Flutuante

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

Aula 9: Estouro e Representação em Ponto Flutuante

Cálculo Numérico Conceitos Básicos

Disciplina: Introdução à Engenharia da Computação

Sistemas numéricos e a Representação Interna dos Dado no Computador

Representação de Números em Ponto Flutuante

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE. Prof. Dr. Daniel Caetano

Unidade III. Sistemas Numéricos e o Computador

MAT115 Introdução ao Processamento de Dados Professor: Ibirisol Fontes Ferreira DCC: Departamento de Ciência da Computação

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:

Introdução à Computação

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

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

Sistemas de Computação

SEPS REPRESENTAÇÃO DE Nºs DIGITAIS I

Introdução à Computação

ARQUITECTURA DE COMPUTADORES

Aproximações e Erros

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

Guilherme Martini Gustavo Schmid de Jesus Luís Armando Bianchin Márcio José Mello da Silva

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

Números binários e erros

CCI-22. Erros Erros de arredondamento, representação e de cálculo

Aritmética Binária e Caminho de Dados. Aritmética Binária Caminho de Dados

SME CÁLCULO NUMÉRICO I PROFESSORES MARCOS ARENALES MARISTELA SANTOS. Agosto 2011

Sistemas Digitais Módulo 3 Codificações BCD, Gray e ASCII e Números Fracionários

Binários: Operações matemáticas

Sistemas de Computação

Capítulo 6 Aritmética Digital: Operações e Circuitos

Aritmética Computacional (Ponto Flutuante) Capítulo 4

CCI-22. Matemática Computacional. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra

Prof. Leonardo Augusto Casillo

Arquitetura e Organização de computadores

Baseado nos slides de Anna Tostes SISTEMA NUMÉRICO

Circuitos Lógicos. Prof. Odilson Tadeu Valle

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

Cálculo Numérico. Conjunto de métodos utilizados para a obtenção de resultados de problemas matemáticos através de aproximações.

Circuitos Digitais. Conteúdo. Soma de Números Binários. Soma de Números Binários. Exemplos. Exemplos. Aritmética Binária

ELE 0316 / ELE 0937 Eletrônica Básica

Arquitetura de Computadores

Representação e erros numéricos

Cálculo Numérico. Conceitos Básicos

Infraestrutura de Hardware

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

Organização e Arquitetura de Computadores I

Cálculo Numérico. Erros em processamento Numéricos

Representação de Dados

Capítulo 2. Representação de dados em sistemas computacionais

Erros e Aritmética de ponto flutuante

Universidade Federal do Espírito Santo - UFES

Operações com números binários

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

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

Introdução à Computação

Métodos Numéricos - Notas de Aula

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

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Capacidade de Armazenamento. Bit. Binário para Decimal. Decimal para Binário. Operações Aritméticas no Sistema binário.

Circuitos Lógicos Aula 22

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

Aula Expositiva 2. DCC 001 Programação de Computadores. 2º Semestre de 2011 Prof. Osvaldo Carvalho UFMG DCC

Microprocessadores. Arquitecturas Aritméticas Controladores

Organização e Arquitetura de Computadores I

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

Informática I. Aula Aula 22-12/11/2007 1

Sistemas Numéricos e o Computador

Arquitetura de Computadores Sistema de Numeração. Apresentado por Prof. Fred Sauer Mat. Elaborado por Prof. Ricardo Quintão

Erros, Precisão Numérica e Ponto Flutuante

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

1/50. Conceitos Básicos. Programa Básico

Transcrição:

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Aritmética Computacional Prof. Helcio Wagner da Silva

Representação de Números Inteiros No sistema de numeração binária, é possível representar números inteiros negativos usando: Dígitos 0 e 1 Sinal de subtração Vírgula Exemplo: -1101,0101 2 = -13,3125 10 2

Representação de Números Inteiros Para armazenar e processar números inteiros negativos no computador, são usados apenas os dígitos 0 e 1 Como representar números negativos? Representação Sinal-Magnitude Representação em Complemento de Dois 3

Representação Sinal-Magnitude Em uma palavra de n bits O bit mais à esquerda representa o sinal do número inteiro Os n-1 bits mais à direita representam a magnitude do número inteiro Exemplo: +18 = 00010010-18 = 10010010 4

Representação Sinal-Magnitude Há duas representações para o zero +0 = 00000000-0 = 10000000 É mais difícil testar se um valor é igual a zero do que no caso em que há apenas uma representação para o zero Por isso, essa representação raramente é usada na implementação da parte inteira de uma ULA 5

Representação em Complemento de Dois A = -2 n-1 a n-1 + Σ n-2 i=02 i a i Para números inteiros positivos, a n-1 = 0 O número 0 é tratado como um número inteiro positivo Usada para representar números na faixa -2 n 2 n-1-1 Usada quase universalmente para representar números inteiros dentro do µp 6

Representação em Complemento de Dois Decimal S-M C-2 +8 - - +7 0111 0111 +6 0110 0110 +5 0101 0101 +4 0100 0100 +3 0011 0011 +2 0010 0010 +1 0001 0001 +0 0000 0000 Decimal S-M C-2-0 1000 - -1 1001 1111-2 1010 1110-3 1011 1101-4 1100 1100-5 1101 1011-6 1110 1010-7 1111 1001-8 - 1000 7

Representação em Complemento de Dois Conversão complemento de 2 decimal -128 64 32 16 8 4 2 1 1 0 0 0 0 0 1 1-128 +2 +1 = -125 Conversão decimal complemento de 2-120 = -128 64 32 16 8 4 2 1 1 0 0 0 1 0 0 0-128 +8 8

Representação em Complemento de Dois Às vezes é desejável converter a representação de um número inteiro com n bits para sua representação com m bits, onde m > n Na representação sinal-magnitude, isso pode ser feito facilmente Basta mover o bit de sinal para a posição mais à esquerda e preencher as demais posições novas com 0 9

Representação em Complemento de Dois Exemplos: +18 = 00010010 (s-m, 8 bits) +18 = 0000000000010010 (s-m, 16 bits) -18 = 10010010 (s-m, 8 bits) -18 = 1000000000010010 (s-m, 16 bits) Esse procedimento não funciona para números inteiros negativos representados em complemento de dois 10

Representação em Complemento de Dois Exemplos: +18 = 00010010 (c-2, 8 bits) +18 = 0000000000010010 (c-2, 16 bits) -18 = 11101110 (c-2, 8 bits) -32.658 = 1000000001101110 (c-2, 16 bits) A regra é mover o bit de sinal para a posição mais à esquerda e preencher as demais com valor igual ao bit de sinal 11

Representação em Complemento de Dois Exemplos: +18 = 00010010 (c-2, 8 bits) +18 = 0000000000010010 (c-2, 16 bits) -18 = 11101110 (c-2, 8 bits) -18 = 1111111111101110 (c-2, 16 bits) 12

Representação em Complemento de Dois Negação Para representação s-m, basta inverter o valor do bit de sinal Para a representação em complemento de dois: Toma-se o complemento booleano de cada bit do número Adiciona-se 1 ao resultado 13

Representação em Complemento de Dois Exemplos: +18 = 00010010 (c-2) Complemento booleano = 11101101 +1 11101110 = -18-18 = 11101110 (c-2) Complemento booleano = 00010001 +1 00010010 = +18 14

Representação em Complemento de Dois Casos especiais de negação 0 = 00000000 (c-2) Complemento booleano = 11111111 +1 100000000 = 0 Bit vai um (carry in) - é ignorado 15

Representação em Complemento de Dois Casos especiais de negação (cont.) -128 = 10000000 (c-2) Complemento booleano = 01111111 +1 10000000 = -128 Anomalia se deve ao fato que uma palavra de n bits pode conter 2 n representações distintas 2 n é um número par Sendo representados números positivos, negativos e o 0, a qtde de números positivos e negativos são 16 diferentes

Representação em Complemento de Dois Adição 1001 +0101 1110 (a) (-7) + (+5) = -2 0011 +0100 0111 (c) (+3) + (+4) = +7 0101 +0100 1001 (e) (+5) + (+4) = +9 (overflow) 1100 +0100 10000 (b) (-4) + (+4) = 0 1100 +1111 11011 (d) (-4) + (-1) = -5 1001 +1010 10011 (f) (-7) + (-6) = -13 (overflow) 17

Representação em Complemento de Dois Subtração 0010 +1001 1011 (a) M = 2 = 0010 S = 7 = 0111 -S = -7 = 1001 (+2) + (-7) = -5 1011 +1110 11001 (c) M = -5 = 1011 S = 2 = 0010 -S = -2 = 1110 (-5) + (-2) = -7 0111 +0111 1110 (e) M = 7 S = -7 = 1001 -S = 7 = 0111 (+7) + (+7) = 14 (overflow) 0101 +1110 10011 (b) M = 5 = 0101 S = 2 = 0010 -S = -2 = 1110 (+5) + (-2) = +3 0101 +0010 0111 (d) M = 5 = 0101 S = -2 = 1110 -S = 2 = 0010 (+5) + (+2) = +7 1010 +1100 10110 (f) M = -6 = 1010 S = 4 = 0100 -S = -4 = 1100 (-6) + (-4) = -10 (overflow) 18

Representação de Ponto Flutuante Usada para representar números muito grandes ou muito pequenos Para números decimais, usa-se a notação científica 976.000.000.000.000 = 9,76 x 10 14 0,0000000000000976 = 9,76 x 10-14 Para números binários, temos: M B E Expoente Sinal Mantissa 19

Representação de Ponto Flutuante Um mesmo número pode ser várias representações em ponto flutuante 24 = 0,110 x 2 5 = 110 x 2 2 = 0,0110 x 2 6 Para simplificar as operações, é requerido que os números sejam normalizados,1 b b b... 2 0 0 1 2 b n E implícito Dígitos binários 20

Representação de Ponto Flutuante Sinal da mantissa 8 bits Expoente polarizado 32 bits 23 bits Mantissa o sinal é armazenado no primeiro bit da palavra o primeiro bit da mantissa verdadeira é sempre 1 - por isso não precisa ser armazenado o valor 127 é adicionado ao expoente verdadeiro, sendo o resultado denominado Expoente Polarizado Exemplos: 856.064 = 0,11010001 x 2 10100 = 0 10010011 10100010000000000000000-856.064 = -0,11010001 x 2 10100 = 1 10010011 10100010000000000000000 209 x 2-28 = 0,11010001 x 2-10100 = 0 01101011 10100010000000000000000-209 x 2-28 = -0,11010001 x 2-10100 = 1 01101011 10100010000000000000000 21

Representação de Ponto Flutuante Intervalos de representação para 32 bits: Números negativos: [-(1-2 -24 ) x 2 128, -0,5 x 2-127 ] -(1-2 -24 ) x 2 128 = 1 11111111 11111111111111111111111-0,5 x 2-127 = 1 00000000 00000000000000000000000 Números positivos: [0,5 x 2-127, (1-2 -24 ) x 2 128 ] 0,5 x 2-127 = 0 00000000 00000000000000000000000 (1-2 -24 ) x 2 128 = 0 11111111 11111111111111111111111 22

Representação de Ponto Flutuante Overflow em Números Negativos Overflow em Números Positivos Números inteiros representáveis -2 31 0 2 31-1 Underflow em Números Negativos Underflow em Números Positivos Overflow em Números Negativos Overflow em Números Positivos Números negativos representáveis Números positivos representáveis -(1-2 -24 ) x 2 128-0,5 x 2-127 0-0,5 x 2-127 -(1-2 -24 ) x 2 128 23

Representação de Ponto Flutuante O underflow é menos crítico que o overflow, pois o valor pode ser aproximado para 0 Não há, à princípio, representação para 0 Na verdade, há um padrão de bits especial para representação do 0 O número máximo de valores distintos representáveis continua sendo 2 32 A representação em ponto flutuante apenas divide esses valores em duas faixas 24

Representação de Ponto Flutuante Há uma relação estreita entre os tamanhos dos campos reservados à mantissa e ao expoente Para um tamanho fixo de palavra: Se o número de bits reservados à mantissa aumentar, aumenta-se a precisão, mas diminui-se a faixa de valores representáveis Se o número de bits reservados ao expoente aumentar, aumenta-se a faixa de valores representáveis, mas diminui-se a precisão 25

Representação de Ponto Flutuante Padrão IEEE 754 8 bits 23 bits Formato Simples Expoente polarizado Mantissa Sinal da mantissa 11 bits 32 bits 52 bits Formato Duplo Expoente polarizado Mantissa Sinal da mantissa 64 bits 26

Representação de Ponto Flutuante Valores especiais definidos no IEEE 754 Sinal Expoente Polarizado Formato Simples Formato Duplo Mantissa 0 0 0 0 0 Valor 1 0 0 0-0 0 255 2047 0 1 255 2047 0-0 ou 1 255 2047 0 NaN 27

Representação de Ponto Flutuante Parâmetros do formato IEEE 754 Parâmetro Formato Simples Formato Duplo Tamanho da palavra 32 64 Tamanho do expoente 8 11 Polarização do expoente 127 1023 Expoente máximo 127 1023 Expoente mínimo -126-1022 Tamanho da mantissa 23 52 Número de expoentes 254 2046 Número de mantissas 2 23 2 52 Número de valores 1,98 x 2 31 1,99 x 2 63 28