Sistemas de Numeração. » WHAT WOULD LIFE BE WITHOUT ARITHMETIC, BUT A SCENE OF HORRORS? «Sydney Smith, 1835. Sistemas Posicionais



Documentos relacionados
Sistemas Posicionais. Sistemas de Numeração. Sistemas Posicionais (2) Representação Digital Informação

Representação de Dados

ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM. Conceitos Básicos ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM

Universidade do Minho Departamento de Electrónica Industrial. Sistemas Digitais. Exercícios de Apoio - I. Sistemas de Numeração

Escola Secundária c/3º CEB José Macedo Fragateiro. Curso Profissional de Nível Secundário. Componente Técnica. Disciplina de

Sistemas de Numeração (Aula Extra)

Sistemas Posicionais. Nos sistemas informáticos

Introdução à Engenharia de

Arquitetura de Computadores

Sistemas de Numeração. Introdução ao Computador 2010/1 Renan Manola

Exemplo de Subtração Binária

Introdução. A Informação e sua Representação (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação

2. Sistemas de Numeração, Operações e Códigos. 2. Sistemas de Numeração, Operações e Códigos 1. Números Decimais. Objetivos.

Codificação 1. Introdução. C 2 R r {! + codificação

Sistemas de Numeração

Organização e Arquitetura de Computadores I

Aula 5. Simplificação de funções lógicas (cont.) Sistemas de numeração

Trabalho compilado da Internet Prof. Claudio Passos. Sistemas Numéricos

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

Aula 3 - Sistemas de Numeração

Programação ao nível da máquina. Operações lógicas e aritméticas

Notas de aula #1 SISTEMAS NUMÉRICOS

Aula 6 Aritmética Computacional

Representação de Dados

Álgebra de Boole. Sistema de Numeração e Códigos. Prof. Ubiratan Ramos

Representação de Dados e Sistemas de Numeração

Organização de Computadores. Cálculos Binários e Conversão entre Bases Aritmética Binária

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária

SISTEMAS DIGITAIS Prof. Ricardo Rodrigues Barcelar

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

Representação Binária de Números

Eletrônica Digital 1 Módulo1 Capítulo 1 Sistemas Numéricos. Prof. Nilton Costa Junior

Sistemas de Numeração

Fabio Bento

Sistemas de Numeração

Sistemas de Numerações.

Deste modo, por razões tecnológicas e conceituais, os números binários e a álgebra boole-ana formam a base de operação dos computadores atuais.

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

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

Aula 6. Sistemas de Numeração. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

Sistemas Numéricos e a Representação Interna dos Dados no Computador

ICC - Aula 6. Ivan da Silva Sendin. November 17, Bits, portas logicas, flip-flops,... Numeros e Simbolos Exercicios

REPRESENTAÇÃO DE DADOS E SISTEMAS DE NUMERAÇÃO

Sistemas de Numeração

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade

Hardware de Computadores

Operações aritméticas

Genericamente qualquer sistema de numeração pode ser caracterizado por:

Organização e Arquitetura de Computadores. Aula 10 Ponto Flutuante Parte I Juliana F. Camapum Wanderley

Sistemas de numeração

Sistemas de Numeração

ARQUITETURA DE COMPUTADORES

Introdução. INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br

SISTEMAS DE NUMERAÇÃO

Circuitos Digitais. Conteúdo. Sistema de Numeração e Códigos :: Conversões de Binário para Decimal SISTEMA DE NUMERAÇÃO E CÓDIGOS

Aritmética Binária e. Bernardo Nunes Gonçalves

Aula 2 Sistemas de Numeração (Revisão)

Circuitos Digitais Cap. 5

Números base 2, 8, 10, 16. Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007

Capítulo I : Noções Gerais

Sistemas de Numeração. Bases Numéricas e Conversão entre bases

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação

2. Representação Numérica

3 Sistemas de Numeração:

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Capítulo SETE Números em Ponto Fixo e Ponto Flutuante

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Unidade 3: Sistemas de Numeração Conversões Entre Quaisquer Bases e Aritmética em Bases Alternativas Prof. Daniel Caetano

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 13

Informática e informação 2

1. Sistemas de numeração

Conversão de Bases Numéricas

ARQUITETURA DE COMPUTADORES. Sistemas de Numeração. 1 Arquitetura de Computadores

Lista de Exercícios Sistemas de Numeração

CAPÍTULO 6 ARITMÉTICA DIGITAL

Sistemas numéricos. Prof. Leandro Tonietto Introdução a computação e suas aplicações Curso de Segurança da Informação UNISINOS ago-09

Sistemas de Numeração. 1 Introdução aos sistemas numeração

Projeto e Desenvolvimento de Algoritmos

FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO REPRESENTAÇÃO DE DADOS E SISTEMAS DE NUMERAÇÃO LUÍS PAULO REIS

Principais códigos utilizados. Codificação. Código binário puro. Codificação binária. Codificação Binária. Código Binário puro e suas variantes

SISTEMAS DIGITAIS SISTEMAS DE NUMERAÇÃO E CÓDIGOS

Representação de Dados

Matemática Aplicada à Informática

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

Aritmética de Ponto Fixo

Unidade 5: Sistemas de Representação

Computador. Algumas definições

Computador. 1982: os computadores são ferramentas que nos permitem fazer cálculos rápida e comodamente

Introdução à Informática

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Capítulo 2. Numéricos e Códigos Pearson Prentice Hall. Todos os direitos reservados.

Representando Instruções no Computador

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

Lógica Combinacional Aula 01 Sistema de Numeração. Felipe S. L. G. Duarte

Prof. Luís Caldas Sistemas de Numeração e Transformação de Base NUMERAÇÃO, BASE NUMÉRICA E TRANSFORMAÇÃO DE UMA BASE

Sistemas de Numeração. Professor: Rogério R. de Vargas INFORMÁTICA 2014/2

Índice de conteúdos. Índice de conteúdos. Capítulo 2. Representação de Números e Erros Representação de números em diferentes bases...

Disciplina: : ELETRÔNICA DIGITAL

Métodos Numéricos e Estatísticos Parte I-Métodos Numéricos Teoria de Erros

Transcrição:

Sistemas de Numeração» WHAT WOULD LIFE BE WITHOUT ARITHMETIC, BUT A SCENE OF HORRORS? «Sydney Smith, 835 Os valores existem no mundo, independentemente da sua representação São representações igualmente válidas Sistemas Posicionais Sistemas de Numeração O sistema posicional é utilizado devido à facilidade com a qual é possível fazer calculos Tente encontrar um algoritmo para multiplicar, em numeração romana, XVIII por XIXIII! Paulo Marques pmarques@dei.uc.pt http://www.dei.uc.pt/~pmarques Tecnologia dos Computadores 24/25 3 2 9 2 6 926 = x 3 + 9x 2 + 2x + 6x

Sistemas Posicionais (2) Sistema de numeração de base : Existem algarismos diferentes (,, 2, 3, 4, 5, 6, 7, 8, 9) O valor de cada posição i é dado pelo valor nessa posição vezes um factor de escala base i Para calcular o valor de um número representado numa base radix: (A n- A n-2 A n-3... A ) radix quatre-vingt, quatre-vingt-dix, quatre-vingt-dix-neuf 8, 9, 99 em Françês Faz-se: A n- radix n- + A n-2 radix n-2 + A n-3 radix n-3 +... + A radix Nos sistemas informáticos Internamente, tudo é feito em base 2, i.e. BINÁRIO Existem dois símbolos: e (ligado/desligado, verdadeiro/falso) Cada símbolo é um bit (binary digit) No entanto, em termos de representações, tipicamente utiliza-se: Binário (base 2) Hexadecimal (base 6),, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F... e algumas vezes Octal (base 8) Contar em binário => () => () => (2) => (3) => (4) => (5) => (6) => (7) => (8) => (9) => () => () => (2) => (3) => (4) => (5)

Contar em hexadecimal Nota => () => () 2 => (2) 3 => (3) 4 => (4) 5 => (5) 6 => (6) 7 => (7) 8 => (8) 9 => (9) A => () B => () C => (2) D => (3) E => (4) F => (5) => (6) => (7) Virtualmente todos os informáticos sabem as potências de dois de cabeça 2 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 2 24 52 256 28 64 32 6 8 4 2 2 2 4 3 8 4 6 5 32 6 64 7 28 8 256 9 52 24 Quiz: Conversão para decimal Converta para decimal os seguintes números: Pista: lembre-se do que é que sistema posicional e base querem dizer... Resposta ao Quiz () 2 = 2 + 2 + 2 2 + 2 3 + 2 4 + 2 5 + 2 6 = 6 (na base ) () 2 (CB3) 6 (CB3) 6 = 3 6 + 6 + 6 2 + 2 6 3 = 49587 (na base )

Conversão de decimal para outras bases Divide-se sucessivamente o número pela base O resto da divisão vai constituindo os sucessivos digitos do número Exemplo: Converter 42 em binário Conversão binário-hexadecimal e vice-versa Como 6 é 2 4, isso quer dizer que cada digito em hexadecimal corresponde a 4 dígitos em binário, directamente! Exemplo: () 2 42 2 = 2 e resto 2 2 = e resto 2 = 5 e resto 5 2 = 25 e resto 25 2 = 2 e resto 2 2 = 6 e resto 6 2 = 3 e resto 3 2 = e resto 2 = e resto (42) = () 2 Conversão decimal-hexadecimal Exactamente o mesmo processo! Converter 42 em hexadecimal Converter 673 em hexadecimal 42 6 = 25 e resto 2 25 6 = e resto 9 6 = e resto (42) = (92) 6 Nota sobre o sistema hexadecimal Nos computadores (e livros), é comum utilizar as seguintes notações para representar números hexadecimais: xd92 ou xd92 D92h ou d92h 673 6 = 42 e resto 42 6 = 2 e resto (A) 2 6 = e resto 2 (673) = (2A) 6

BCD: Binary-Coded-Decimal Nos sistemas electrónicos e muitas vezes nos informáticos, utiliza-se também o sistema BCD: Binary Coded Decimal Cada conjunto de quatro bits representa um valor decimal. Só são válidos os valores de a (i.e. a 9) BCD Decimal Grandezas de armazenamento de informação bit: binary digit, unidade básica de informação byte: 8 bits Kbyte: 2 byte, i.e. 24 bytes Mbyte: 2 Kbyte, i.e. 24 Kbytes Gbyte: 2 Mbyte, i.e. 24 Mbytes Tbyte: 2 Gbyte, i.e. 24 Gbytes Quiz: Se eu quiser armazenar 2.. números inteiros, cada número de 32 bits, quantos MByte preciso? Armazenamento de dados Grandeza para transmição de informação Quantos bits são necessários para representar N números? Exemplo: quantos bits necessito para representar objectos, ou para representar números diferentes? (..99) Sistema binário é um sistema posicional. Com K bits, tenho 2 K números diferentes Para representar N elementos diferentes, são necessários log 2 (N) bits. Para representar objectos, são necessários 7 bits! Largura-de-banda: Mbps Mbps = ** bits/s = =.9 Mbyte/s Note-se que no caso de bps, K, M, G e T representam factores de, não de 24!

Palavras do computador Os registos do processador têm um certo tamanho em bits. Ao tamanho dos registos do processador chamase word ou palavra. Quando se diz que o Pentium 4 é um processador de 32 bits, quer dizer que este manipula internamente dados de 32 bits. Tipicamente também quer dizer que é capaz de gerar endereços de 32 bits. Quiz : Sabendo que o Pentium 4 endereça a memória usando 32 bits, qual é a memória máxima que um PC comum pode ter? 4 Gbytes! (2 32 /24/24/24) Quiz 2: Sabendo que os registos de dados do Pentium 4 são de 32 bits, qual é o número máximo (sem sinal), que se pode representar? 4294967295 (2 32 -) Máquinas big-endian & little-endian Imaginemos que um computador tem uma palavra de 6 bits. De que forma é que esta deverá ser armazenada em memória? MOV [], xff ff Little-endian (e.g. PC) ff Big-endian (e.g. Sun-Sparc, Network-byte-order) Bit mais significativo e menos significativo MSB (Most Significant Bit) LSB (Least Significant Bit)

» Numbers written on restaurant bills within the confines of restaurants do not follow the same mathematical laws as numbers written on any other pieces of paper in any other parts of the Universe «Douglas Adams, The Hitchhiker's Guide to the Galaxy» Every passing minute is another chance to turn it all around. «Sofia, in Vanilla Sky Leitura... The Ultimate Hitchhiker's Guide to the Galaxy by Douglas Adams ISBN 345453743, Del Rey Publisher Representação de Números Negativos & Racionais Operações Aritméticas The Hitchhiker s Guide to the Galaxy The Restaurant at the End of the Universe Life, the Universe and Everything So Long, and Thanks for All the Fish Mostly Harmless Paulo Marques pmarques@dei.uc.pt http://www.dei.uc.pt/~pmarques Tecnologia dos Computadores 24/25

Números negativos: Sinal e Magnitude Complementos para O número negativo é obtido negando todos os bits do correspondente positivo Vantagens: muito fácil fazer cálculos e não é necessário processar o bit de sinal separadamente Quando se coloca um símbolo extra (+-) que representa o sinal de um número, chama-se a essa representação: Representação em sinal e magnitude () = () 2 Bit Sinal Magnitude + - +7 +6 +5 +4 +3 +2 + - -2-3 -4-5 -6-7 Exemplo: Somar 2 com -5 Subtrair a 2, o número 5 (+2) + (-5) (-3) Números Negativos: Sistema de Complementos Problemas do sistema de sinal e magnitude Para fazer cálculos, as regras são confusas e complicadas de implementar (e.g. se ambos os sinais são positivos, o sinal é o mesmo, se um é positivo e outro negativo, subtrai-se e o sinal é o do maior em valor absoluto, etc.) Existem duas representações para Complementos para Na verdade, fazer a adição é um pouco mais complicado Carry-out (+5) + (-2) Sistemas de complemento: A ideia é simplificar as regras e os cálculos. Por exemplo, subtrair deve de ser a mesma coisa do que adicionar, e.g. 3-2 = 3 + (-2) (+3) Note-se que isto só se aplica quando são números de sinais diferentes: O carry-out tem de ser adicionado! As condições de overflow são algo complicadas de detectar... Por exemplo, 5+5 =??

Complementos para 2 O sistema utilizado em todas as máquinas modernas Não é necessário uma pessoa preocupar-se com o carry Cálculos realmente directos Overflow é trivial de detectar Uma única representação para o! Conversão para complementos de 2 (dois métodos): Calcula-se o complementos para um e soma-se Copiam-se os bits da direita (LSB) para a esquerda até encontrar o primeiro e trocam-se todos os bits a partir dai. Complementos para 2 Overflow Quando o resultado não cabe no número de bits do resultado, diz-se que ocorreu um overflow. Na adição em complementos para dois, um overflow é detectado quando o valor de carry que entra no bit de sinal é diferente do que sai., o que implica que o cálculo está errado! (23) = () 2 (-23) = () 2 Carry (9) = () 2 (-9) = () 2 (+5) + (+6) (-5)???? Complementos para 2 Representação de números reais +7 +6 +5 +4 +3 +2 + - -2-3 -4-5 -6-7 -8 Exemplo: Subtrair a 2, ao número 5 Somar 5 com -2 (+5) + (-2) Carry-out (+3) Ignora-se o valor de carry! Existem dois sistemas de uso comum: Vírgula fixa: existe um determinado número de bits fixo que representa a parte inteira, e um fixo de bits que representa a parte fraccionária 3252.253. 3 2 - -2-3 -4 3 2 5 2 2 5 3 2 3 2 2 2 2 2-2 -2 2-3 2-4 Quanto vale este número em decimal? Qual é o valor máximo e mínimo que consigo representar?

Representação de números reais Vírgula flutuante: o equivalente à representação científica. Existe um número de bits que corresponde a mantissa e um certo número de bits que corresponde ao expoente Algumas Operações Importantes em Binário S 3 2 - -2-3 -4 +3.4e+5 (=3.4x +5 ) 3 4 Mantissa S 5 Expoente Paulo Marques pmarques@dei.uc.pt http://www.dei.uc.pt/~pmarques Tecnologia dos Computadores 24/25 Formato IEEE 754 AND, OR, XOR Actualmente virtualmente todos os computadores utilizam o formato IEEE 754. A base é implicita e é 2. Precisão simples: 32 bits É utilizado um código de excesso para a mantissa (27) bit S 23 bits Mantissa 8 bits Expoente Precisão dupla: 64 bits É utilizado um código de excesso para a mantissa (23) bit S 52 bits Mantissa bits Expoente

Operações Bitwise Operações de Deslocamento (2) AND OR AND, útil para desligar bits! Queremos desligar o terceiro bit de uma palavra: AND = OR, útil para ligar bits! Queremos desligar o primeiro bit de uma palavra: OR = XOR, útil para inverter bits! Queremos trocar o primeiro bit de uma palavra: XOR = XOR = XOR Normalmente existem duas operações de deslocamento à direita: Lógica, em que é um deslocamento simples e o bit que é introduzido no MSB é >> Aritmética, em que o bit que é introduzido no MSB é igual ao bit de sinal Usado quando o deslocamento corresponde a uma divisão e tem de se manter o valor do bit de sinal para as coisas baterem certo! >>> (-7) Operações de Deslocamento That s it! Shift Right (SHR ou >>): Desloca para a direita os bits de uma palavra >> 2 = Shift Left (SHL ou <<): Desloca para a esquerda os bits de uma palavra << 2 = São operações importantes nomeadamente porque: SHL : Corresponde a multiplicar o número por 2 SHL 2: Corresponde a multiplicar o número por 4 etc. SHR : Corresponde a dividir o número por 2 SHR 2: Corresponde a dividir o número por 4 etc. Sistema pictográfico de representar números... em chinês! http://www.webcom.com/ocrat/chargif/numbers.html

Para saber mais... [CSO] Computer Science An Overview Capítulo (.,.2,.4- representing numberic values,.5,.6,.7, Capítulo 2 (2.4) The Essentials of Computer Organization and Architecture Capítulo 2 (2. a 2.6.); cópias fornecidas no quiosque