Sistemas de Numeração.

Slides:



Advertisements
Apresentações semelhantes
IFTO ESTRUTURA DE DADOS AULA 05 Prof. Manoel Campos da Silva Filho
Advertisements

Contadores e Registradores
Parte 1: Organização de Computadores
Representação de Ponto Flutuante
Representação de Números
Arquitetura de Computadores
Aritmética Computacional
Arquitetura de Computadores
INTRODUÇÃO À LÓGICA DIGITAL
Material pedagógico Multiplicar x 5 Clica!
Sistemas de Numeração O número é um conceito abstrato que representa a idéia de quantidade. Sistema de numeração é o conjunto de símbolos utilizados para.
Nome : Resolve estas operações começando no centro de cada espiral. Nos rectângulos põe o resultado de cada operação. Comprova se no final.
Copyright (c) 2003 by Valery Sklyarov and Iouliia Skliarova: DETUA, IEETA, Aveiro University, Portugal.
1 INQUÉRITOS PEDAGÓGICOS 2º Semestre 2003/2004 ANÁLISE GERAL DOS RESULTADOS OBTIDOS 1.Nº de RESPOSTAS ao inquérito 2003/2004 = (42,8%) 2.Comparação.
Ludwig Krippahl, 2007 Programação para as Ciências Experimentais 2006/7 Teórica 4.
VISÃO GERAL Profa. Fernanda Denardin Walker
Representação de Dados e Sistemas de Numeração Aula 4
William Stallings Arquitetura e Organização de Computadores 8a Edição
Algoritmos e Programação Linguagens de Programação Teoria Aula 5 (05/05) Universidade Federal do Vale do São.
ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
MC542 Organização de Computadores Teoria e Prática
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
EXPRESSÕES ARITMÉTICAS
EXPRESSÕES ARITMÉTICAS
6. Estruturas p/ Sistemas Discretos
Sistemas de Numeração Prof. Thober Detofeno, Ms.
Polinômios Prof. Marlon.
FUNÇÃO MODULAR.
Conversão de bases binário decimal – decimal binário
Aula 4 Nomes, Vinculações, Tipos e Escopos
As aulas não cobrem toda a matéria! Há que ler as folhas teóricas!
Faculdade Pitágoras Prof. Edwar Saliba Júnior Setembro de 2008
Provas de Concursos Anteriores
UNIDADE II.
INTRODUÇÃO À ENGENHARIA
Sistemas de Numeração e Conversão de Base
PROGRAMAÇÃO I UNIDADE 1.
Oferta e Demanda A Curva de Oferta
Prof.: Sergio Wagner.
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Qualificadores.
Coordenação Geral de Ensino da Faculdade
Medidas de posição  Estudando as distribuições de  frequência,  percebe-se que existe uma  posição de  concentração dos valores, que podem estar mais concentrados no início, no meio ou no 
Coordenação Geral de Ensino da Faculdade
Representação Digital da Informação
PROGRAMAÇÃO I UNIDADE 2.
Modelagem Estatística
ICC – 4.2. Aritmética Binária
Numeração.
Aula de apoio aos feras: Arquitetura de Computadores e
Tópicos em Arquitetura de Computadores João Angelo Martini Universidade Estadual de Maringá Departamento de Informática Mestrado em Ciência.
Campus de Caraguatatuba Aula 8: Noções Básicas sobre Erros (2)
Representação de dados
Pet computação UFPE Aula de apoio aos feras: Sistemas de Numeração.
Sistemas Numéricos SISTEMA DECIMAL
Olhe fixamente para a Bruxa Nariguda
Campus de Caraguatatuba Aula 2: Somatório e Produtório
Sistemas de Numeração.
Máquina de Turing Universal
POTENCIAÇÃO E FUNÇÃO EXPONENCIAL
Representação de Números Inteiros
Representação de Dados
Introdução a Sistemas de Informação
Planilha Eletrônica - Excel
Operações Aritméticas no Sistema binário
Campus de Caraguatatuba Aula 9: Noções Básicas sobre Erros (3)
FUNDAMENTOS DE COMPUTAÇÃO
Métodos Numéricos Computacionais
ORGANIZAÇÃO DE COMPUTADORES
Tipos de Dados Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem.
SISTEMAS DE NUMERAÇÃO 1. SISTEMAS DE NUMERAÇÃO 2. ARITMÉTICA BINÁRIA
Transcrição da apresentação:

Sistemas de Numeração

A Informação e sua Representação Os computadores manipulam dados (sinais brutos e sem significado individual) para produzir informações. A conversão de dados em informações, e estas novamente em dados, é uma parte tão fundamental em relação ao que os computadores fazem que é preciso saber como a conversão ocorre para compreender como o computador funciona. Infelizmente os computadores não usam nosso sistema de numeração.

A Informação e sua Representação Sistema de Numeração Conjunto de símbolos utilizados para representação de quantidades e de regras que definem a forma de representação. Cada sistema de numeração é apenas um método diferente de representar quantidades. As quantidades em si não mudam; mudam apenas os símbolos usados para representá-las. A quantidade de algarismos disponíveis em um dado sistema de numeração é chamada de base. Representação numérica mais empregada: notação posicional.

A Informação e sua Representação Notação Posicional Valor atribuído a um símbolo dependente da posição em que ele se encontra no conjunto de símbolos que representa uma quantidade. O valor total do número é a soma dos valores relativos de cada algarismo (decimal). Sistema de numeração decimal 735 573 700 30 5 500 70 3

Sistemas de Numeração Bases Binária Octal Decimal Hexadecimal 0, 1 0, 1, 2, 3, 4, 5, 6, 7 Decimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Hexadecimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Sistemas de Numeração Representação nas bases – Base decimal 7484 7484 = 7 x 1000 + 4 x 100 + 8 x 10 + 4 7484 = 7 X 103 + 4 X 102 + 8 X 101 + 4 X 100 Representação em polinômio genérico Número = dn10n + dn-110n-1 + ... d1101 + d0100

Sistemas de Numeração Mudança da base binária para decimal (10) 10110010102 0 x 20 = 0 1 x 21 = 2 0 x 22 = 0 1 x 23 = 8 0 x 24 = 0 0 x 25 = 0 1 x 26 = 64 1 x 27 = 128 0 x 28 = 0 1 x 29 = 512 = 0+2+0+8+0+0+64+128+0+512 = 714

Sistemas de Numeração Representação de hexadecimal na base 10 3974116 3974116 = 3 x 164 + 9 x 163 + 7 x 162 + 4 x 161 + 1 x 160 3974116 = 196608 + 36864 + 1792 + 64 + 1 3974116 = 23532910 Representação em polinômio genérico Número = hn16n + hn-116n-1 + ... h1161 + h0160

Sistemas de Numeração Mudança da base hexadecimal para decimal 2CA16 A x 160 = 10 x 160 = 10 C x 161 = 12 x 161 = 192 2 x 162 = 512 = 10+192+512 = 714

Sistemas de Numeração Representação de octal na base 10 546218 546218 = 5 x 84 + 4 x 83 + 6 x 82 + 2 x 81 + 1 x 80 546218 = 20480 + 2048 + 384 + 16 + 1 546218 = 2292910 Representação em polinômio genérico Número = on8n + on-18n-1 + ... o181 + o080

Sistemas de Numeração Mudança da base octal para decimal (10) 13128 2 x 80 = 2 1 x 81 = 8 3 x 82 = 192 1 x 83 = 512 = 2+8+192+512 = 714

Sistemas de Numeração Mudança da base 10 para binário 714 |_2_ 0 357 |_2_ 1 178 |_2_ 0 89 |_2_ 1 44 |_2_ 0 22 |_2_ 0 11 |_2_ 1 5 |_2_ 1 2 |_2_ 0 1

Sistemas de Numeração Mudança da base 10 para binário 714 |_2_ 0 357 |_2_ 1 178 |_2_ 0 89 |_2_ 1 44 |_2_ 0 22 |_2_ 0 11 |_2_ 1 5 |_2_ 1 2 |_2_ 0 1 714 = 10110010102

Sistemas de Numeração 714 |_8_ 2 89 |_8_ 1 11 |_8_ 3 1 Mudança da base 10 para octal 714 714 |_8_ 2 89 |_8_ 1 11 |_8_ 3 1 714 = 13128

Sistemas de Numeração 714 |_16_ 10 44 |_16_ 12 2 Mudança da base 10 para hexadecimal 714 714 |_16_ 10 44 |_16_ 12 2 714 = 2CA16 Hexadecimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F A=10 , B=11 , C=12 , D=13 , E=14 , F=15

Sistemas de Numeração Bit – menor partícula de informação no computador, pode representar 0 ou 1. Esses dois símbolos são opostos e mutuamente exclusivos. Byte – conjunto de 8 bits. Base Binária.

Conversões de números fracionários Do mesmo modo que os números inteiros podem ser convertidos de diferentes bases, os números fracionários também podem ser convertidos usando notação posicional. Exemplo - 10,510 10,510 = 1 x 101 + 0 x 100 + 5 x 10-1

Conversões de números fracionários Podemos utilizar a mesma regra para converter números binários fracionários para decimal. Exemplo: 101,1012 101,1012 = 1 x 22 + 0 x 21 + 1 x 20 + 1 x 2-1 + 0 x 2-2 + 1 x 2-3 = 4 + 0 + 1 + 0,5 + 0 + 0,125 = 5,625 10

Conversões de números fracionários Podemos também converter números decimais fracionários para binários através da regra prática a seguir. Exemplo: converter 8,375 10 = ? 2 1°- Converter a parte inteira do número para binário: Resultado: 8 10 = 1000 2 8 2 0 4 2 0 2 2 0 1

Conversões de números fracionários 2°- Multiplicar a parte fracionária do número por 2, separando a parte inteira e repetindo o processo até que seja ZERO, ou seja: 8,375 10 → parte fracionária → 0,375 10 0,375 x 2 = 0,750 0,750 x 2 = 1,500 0,500 x 2 = 1,000 0,000 →ZERO Resultado: 0,375 10 = 011 2

Conversões de números fracionários 3°- Juntar a parte inteira e fracionária num único número binário: Resultado final: 8,375 10 = 1000,011 2

Representações Bits podem representar qualquer coisa! 26 letras => 5 bits maisc./minusc. + pontuação 7 bits (em 8) (“ascii”) Código padrão para atender todas as linguagens do mundo 16 bits (unicode) Valores lógicos 0 -> Falso, 1 => Verdadeiro

Tabela Ascii

Representação de Números Um programa (a seqüência de instruções) deverá manipular diferentes tipos de dados: Inteiros (ponto fixo) Reais (ponto flutuante) O tipo de dado que está sendo fornecido ao programa deverá ser informado pelo programador, através de declarações, fazendo com que o programa interprete o dado fornecido de acordo com a declaração. Por exemplo, na linguagem C, declarações tipo int num; ou float sal; indicam que a variável num é um número inteiro (int) e a variável sal é um número real (float), representação científica, isto é, representado na forma [(Sinal) Valor x Base (elevada a Expoente)].

Representação de Números Forma intuitiva - conversão do número decimal para seu correspondente em binário. Problema - os números podem ser positivos ou negativos - definir como representar o sinal. Representação - utilização de mais um bit na representação (o bit mais representativo), representando o sinal, com a seguinte convenção: bit 0 ==> sinal positivo bit 1 ==> sinal negativo.

Bit de Sinal Uma forma de representar números binários positivos e negativos é feita através de um bit de sinal, que fica mais a esquerda do número (MSB – bit mais significativo). Como já dito, se o bit de sinal for “0”, o número binário é positivo (+) e o bit de sinal for “1”, o número binário é negativo. Resto dos bits podem ser valores significativos do número.

Números Negativos Como representá-los? Destinar metade dos padrões binários para nº negativos e a outra para os positivos. Teremos 2 metades iguais: ... / +2, -2 / +1, -1 / +0, -0 2 binários deferentes para representar o nº 0.

Representação em sinal e magnitude Valor decimal Valor binário com 8 bits (7 + bit de sinal) +9 00001001 (bit inicial 0 significa positivo) -9 10001001 (bit inicial 1 significa negativo) +127 01111111 (bit inicial 0 significa positivo) -127 11111111 (bit inicial 1 significa negativo) Assim, uma representação em binário com n bits teria disponíveis para a representação do número n-1 bits (o bit mais significativo representa o sinal). Essa representação tem o nome de representação em sinal e magnitude.

Representação em sinal e magnitude A magnitude (isto é, o valor absoluto, que independe de sinal) de um número é representada em binário. O sinal é representado por um bit (o bit mais significativo, isto é, o bit mais à esquerda na representação). O valor dos bits usados para representar a magnitude independe do sinal, isto é, sendo o número positivo ou negativo, a representação binária da magnitude será a mesma, o que varia é apenas o bit de sinal. Ex.: 0011 = +3 1011 = -3 (011 equivale ao valor absoluto 3)

Representação em sinal e magnitude ARITMÉTICA EM SINAL E MAGNITUDE Algoritmo da soma: a) verificar o sinal das parcelas b) se os sinais forem iguais: repetir o sinal somar as magnitudes c) se os sinais forem diferentes verificar qual parcela tem maior magnitude repetir o sinal da maior magnitude subtrair a menor magnitude da maior magnitude

Representação em sinal e magnitude ARITMÉTICA EM SINAL E MAGNITUDE Algoritmo da subtração: O algoritmo da subtração é o mesmo da soma, sendo feita como se fosse uma soma de dois números que tem os sinais diferentes.

Representação em sinal e magnitude A representação em sinal e magnitude apresenta uma grande desvantagem: ela exige um grande número de testes para se realizar uma simples soma de dois números inteiros. O algoritmo é complicado de ser realizado no computador, o que resulta em baixa eficiência (execução lenta). Um outro ponto negativo é termos duas representações para o zero.

Representação em sinal e magnitude Devido à complexidade dos algoritmos para os computadores operarem com NÚMEROS NEGATIVOS quando se usa a representação em sinal e, são comumente adotadas outras formas que facilitam e tornam mais eficiente a manipulação de operações aritméticas em computadores: as representações em complemento.

Representação em Complemento A grande vantagem da utilização da representação em complemento é que a subtração entre dois números pode ser substituída pela sua soma em complemento.

Complemento a 2 Por questões de convenção e eficiência aritmética, utiliza-se a notação de complemento a 2 para se trabalhar com números binários no computador Utilizando esta notação, a subtração é uma soma. Por exemplo: 7 – 5 seria 7 + (-5) Embora seja uma alteração sutil, faz uma enorme diferença para o computador

Complemento a 2 Complemento a 2: forma de representação Garante que a soma de um número com seu complemento seja sempre 0 Método: Inverter cada 0 para 1 e cada 1 para 0 somar 1 ao resultado Exemplos: 2 para -2 2 = 0000 0000 0000 0010 1111 1111 1111 1101 (invertido) 0000 0000 0000 0001 (+1) 1111 1111 1111 1110 (-2)

Ponto Flutuante É preciso também representar números fracionários (reais), que muitas vezes são maiores que aqueles que são possíveis representar como inteiros. 0,0000000001 = 1,0 x 10-9 3.155.760.000 = 3,15576 x 109

Ponto flutuante Número de ponto flutuante: padrão IEEE (a) Precisão simples (b) Precisão dupla

Ponto flutuante Representação Ponto Flutuante - Normalizado Um nº em notação científica que não tem 0s na parte inteira é dito normalizado. 1,0 x 10-9 está normalizado 0,1 x 10-8 ou 10,0 x 10-10 não está normalizado Na base 2, a mesma representação é possível. 1,xxxxxxxxx x 2yyyy

Ponto flutuante Números em pf simples têm o formato abaixo: s expoent significat Onde: s: campo de sinal com 1 bit; expoent: campo para o expoente (E), com 8 bits (incluindo seu sinal); significat: campo para a parte fracionária (F), com 23 bits. Tendo E 8 bits e F 23 bits, é possível representar frações (na base 10) tão pequenas como 2,0 * 10-38 e nº tão grandes como (na base 10) 2,0 x 1038. Ainda assim pode ocorrer overflow na aritmética em pf.

Ponto flutuante Se uma fração é pequena demais para ser representada, significa que um expoente negativo não pode ser representado em 8 bits. Essa situação denomina-se underflow. Para reduzir a possibilidade de ocorrer underflow ou overflow, existe a representação em pf de dupla precisão, que permite representar números de 2,0 x 10-308 até 2,0 x 10308.

Ponto flutuante Números normalizados nunca tem 0 antes da vírgula; Binários representam somente 0 e 1; Logo, binários normalizados teriam somente 1 antes da vírgula. Portanto, se binários normalizados tem sempre 1 antes da vírgula, o hardware considera-o implícito e não o representa. A representação busca facilitar operação realizadas pelo hardware. Sinal no campo mais significativo: permite testes rápidos para maior que, menor que e igual a zero. Expoent antes do significant: permite uma ordenação simples, pois números com expoentes maiores são maiores que números que tem expoente menor (números de mesmo sinal). Expoentes em pf não utilizam complemento a dois. Como determinar, então, expoentes negativos?

Ponto flutuante Expoentes negativos Chamada Notação Desviada, onde o desvio é um número subtraído para se ter o número real. IEEE 754 usa desvio de 127 (28/2, descontado o 0) para prec. simples. Subtrair 127 do campo Expoente para se ter o valor real do expoente. 1023 é o desvio para precisão dupla. Subtrair 1023 do campo Expoente para se ter o valor real do expoente.

Ponto flutuante Exemplo: O expoente -1 no padrão IEEE 754 seria representado como: -1 + 127 = 126 = 01111110. E o expoente +1: +1 +127 = 128 = 10000000.

Ponto flutuante Precisão simples: Bit 31 30 23 22 0 S Expoent Significat Nº de bits 1 8 23 (−1)S x (1 + Significando) x 2(Expoente −127)

Overflow Resultado muito grande para a word finita do computador E se o resultado de uma soma (ou subtração) for um número maior que o que é possível representar com os bits da word? No caso ocorre overflow. Por exemplo, somar dois números de n bits pode não produzir um número de n bits 1111 + 0001 10000 aqui um carry “transbordou”

Overflow Detectando overflow Overflow nunca ocorre quando somamos dois operandos de sinais diferentes. Overflow nunca ocorre quando subtraímos dois operandos de sinais iguais. Nos demais casos pode ocorrer overflow. O overflow ocorre quando o valor afeta o sinal: – overflow ao somar dois positivos produz um negativo – ou, somar dois negativos produz um positivo – ou, subtraia um negativo de um positivo e obtenha um negativo – ou, subtraia um positivo de um negativo e obtenha um positivo

Overflow Exemplo: - 2.147.483.647 - 2 (subtração de operandos com sinais diferentes) Complemento a dois para determinar o números -2: +2 = 0000 0000 0000 0000 0000 0000 0000 0010 1111 1111 1111 1111 1111 1111 1111 1101 +1 = 0000 0000 0000 0000 0000 0000 0000 0001 - 2 = 1111 1111 1111 1111 1111 1111 1111 1110 1000 0000 0000 0000 0000 0000 0000 0001 = -2.147.483.647 1111 1111 1111 1111 1111 1111 1111 1110 = -2 0111 1111 1111 1111 1111 1111 1111 1111 = +2.147.483.647

Overflow Portanto, em complemento de 2, a soma de dois números de mesmo sinal gera estouro se o resultado for de sinal diferente: Ex: Pos + Pos = Neg ou Neg + Neg = Pos