dado elementos distintos de uma informação; Informação coleção de dados representada de forma compreensível ao ser humano.

Documentos relacionados
Lógica Matemática Elementos de Lógica Digital. Sistema de numeração 09/08/2016 1

CAPÍTULO 1 - SISTEMAS DE NUMERAÇÕES

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.

Alex Maycon da Silva

Introdução à Computação

SISTEMAS DE NUMERAÇÃO

Formação dos números: Aplicação da fórmula geral para o numero

Introdução à Computação

SISTEMAS DE NUMERAÇÃO

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

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

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

SISTEMAS DE NUMERAÇÃO. Introdução à Ciência da Computação ICC0001

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

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES REPRESENTAÇÃO NUMÉRICA. Cristina Boeres

Fundamentos de TI. Aula08_Sistemas Numéricos.doc 1

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

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

Baseado nos slides de Anna Tostes SISTEMA NUMÉRICO

Aula 4: Bases Numéricas

Sistemas de Computação

Capítulo 04 : Sistemas Numéricos

Sistemas de numeração e conversão de bases Decimal e binário

Arquitetura de Computadores

Aula 4: Bases Numéricas

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

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

Técnico em Eletrônica Módulo I Eletrônica Digital (ED) - Prof. Samuel M. B. Cavalcante

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

Conversões numéricas de base. Organização de Computadores

Lista de Exercícios Sistemas de Numeração

Binários: Operações matemáticas

Sistemas de Numeração

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

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

Aritmética Binária e Complemento a Base. Introdução ao Computador 2010/1 Renan Manola

Arquitetura e Organização de Computadores. Professor: Lucas Cambuim Aula: Conversão de Bases e Aritmética Computacional

Eletrônica Digital I (EDL I)

Introdução à Computação

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

SISTEMAS DE NUMERAÇÃO

Organização de Computadores I

Arquitetura de computadores BASE NUMÉRICAS

Sistemas de Numeração

SISTEMAS DE NUMERAÇÃO (Unidade 2)

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

ARQUITETURA DE COMPUTADORES

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

Circuitos Digitais. Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional

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

Unidade III. Sistemas Numéricos e o Computador

ARQUITETURA DE COMPUTADORES

Sistemas Numéricos - Aritmética. Conversão de Bases. Prof. Celso Candido ADS / REDES / ENGENHARIA

Aula 2 - Sistemas de Numeração

Nota-se que um número é expresso como uma soma de potências de 10 multiplicando por coeficientes apropriados.

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

Binário Decimal

Capítulo V Sistemas Numéricos

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

Arquitetura de Computadores I

1 bases numéricas. capítulo

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

Introdução à Organização de Computadores. Conversão de Bases

ELE 0316 / ELE 0937 Eletrônica Básica

Aula 2 - Sistemas de Numeração

Sistemas de Numeração

1) Conversão de Decimal para Binário

Unidade III ORGANIZAÇÃO DE COMPUTADORES. O que quer dizer 14?

Representação Digital da Informação I

2 Representação numérica

Sistemas Digitais. Circuitos Aritméticos. Monitoria SD Daniel Alexandro/Reniê Delgado/Vanessa Ogg. Editado por (DARA)

Fundamentos e Suporte de Computadores. P r o f. M a. A n a P a u l a D o m i n g o s

Sistemas de Numeração.

Sistemas de Computação

1 Introdução à Lógica Digital. Arquitectura de Sistemas Computacionais

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

Representação de Dados

Sistemas de Numeração

ELETRÔNICA DIGITAL SISTEMAS NUMÉRICOS

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

Introdução à Informática

MATA49 Programação de Software Básico

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

Representação de Dados. José Gustavo de Souza Paiva

Sistemas de Computação. Sistemas de numeração

SSC512 Elementos de Lógica Digital. Sistemas de Numeração. GE4 Bio

S is temas numéricos e a Repres entação Interna dos Dados no Computador

Sistemas Digitais Módulo 2 Representações com Sinal e Aritmética Digital

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Ciências da Computação & Engenharia Eletrônica

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

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

Sistemas de Numeração. Sistemas Decimal, Binário e Hexadecimal.

PCS 3115 (PCS2215) Sistemas Digitais I. Módulo 03a Aritmética Binária. Prof. Dr. Marcos A. Simplicio Jr. versão: 3.0 (Jan/2016) Conteúdo

Infraestrutura de Hardware

Sistemas Digitais. Prof. Valbério Gonzaga

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

Sistemas de Numeração Coletânea. Antonio Carlos dos Santos Souza

MANUTENÇÃO DE COMPUTADORES SISTEMAS NUMÉRICOS

Transcrição:

Departamento de Engenharias e Ciência da Computação DECC Curso de Ciência da Computação Disciplina de Introdução a Informática Prof. Ms. Paulo Ricardo B. Betencourt REPRESENTAÇÃO DE DADOS Os conceitos vinculados à conversão de base, cálculo aritméticos em diferentes bases e complementos, são necessários à construção dos computadores. Basicamente estes conceitos são usados para a construção de circuitos digitais (usados no HW), que juntamente com as chamadas portas lógicas (estudadas em estruturas algébricas), são combinados formando o coração do processador, a UAL (Unidade Aritmética e Lógica), de onde partem todas as outras partes que o formam. Através de uma série de circuitos que fazem somas, subtrações, comparações, entre outros, os bits podem ser interpretados e arranjados da forma que quisermos. Estes conhecimentos são essenciais ainda para o estudo de circuitos digitais, lógica para computação, arquitetura de computadores, entre outras áreas. SISTEMAS DE NUMERAÇÃO EVOLUÇÃO: Desde tempos remotos o homem utiliza a escrita para registrar e transmitir informação. A escrita vai do antigo hieróglifo egípcio até o alfabeto latino atual. O alfabeto, como conjunto de símbolos, se desenvolve originalmente na Grécia e posteriormente em Roma e constitui a origem de nosso alfabeto atual. Uma das primeiras tentativas de registro de quantidades sob a forma escrita foi o sistema de numeração indo-arábico, do qual são derivados os atuais sistemas de numeração decimal. O SISTEMA DE NUMERAÇÃO é o conjunto de símbolos utilizados para representação de quantidades e as regras que definem a forma de representação. Um sistema de numeração é determinado fundamentalmente pela base (número de símbolos utilizados). A base é o coeficiente que determina qual o valor de cada símbolo de acordo com a sua posição. OBS: dado elementos distintos de uma informação; Informação coleção de dados representada de forma compreensível ao ser humano. TIPOS DE SISTEMAS DE NUMERAÇÃO SISTEMAS NÃO POSICIONAIS São aqueles em que o valor atribuído a um símbolo não se altera, independentemente da posição em que ele se encontra no conjunto de símbolos que está representando uma quantidade. Ex. Sistema de numeração romano X X I X I X 10 10 1 10 1 10

SISTEMAS POSICIONAIS São aqueles em que o valor atribuído a um símbolo depende da posição em que se encontra no conjunto no conjunto de símbolos que está representando uma quantidade. Ex. Sistema de numeração decimal 5 7 3 3 5 7 7 3 5 500 70 3 300 50 7 700 30 5 ELEMENTOS BIESTÁVEIS A base física da informação no computador é o elemento biestável. Um elemento biestável é um dispositivo que pode representar somente dois estados, o estado 0 e o estado 1. Ex. Chave: aberta e fechada; lâmpada: acesa e apagada. Um conjunto formado por dois elementos terá quatro estados possíveis e poderá representar quatro opções: 00, 01, 10 e 11. Um conjunto de 3 elementos biestáveis representará oito opções e, em geral, um conjunto com n elementos poderá representar até 2ⁿ opções. Com oito elementos, como em um byte, poderemos representar até 2ⁿ, onde n=8, ou seja, 256 elementos, de 0 a 255. As formas de assinalar números e outras informações a conjuntos de bits são, em realidade, muitas, existindo formas padrões de agrupar os bits e os estados que estes conjuntos podem representar. REPRESENTAÇÃO NUMÉRICA A representação de quantidade no computador se baseia na representação de quantidades mediante sistemas numéricos tradicionalmente conhecidos. Estes sistemas numéricos são posicionais, isto é, cada quantidade é representada em uma única forma, mediante uma certa combinação de símbolos, que tem um significado distinto, segundo sua posição. No sistema decimal, por exemplo, cada posição tem um valor intrínseco que equivale a dez vezes o valor da posição que está imediatamente a sua direita. Supondo que a cada posição designamos uma casa, o valor das casas vai aumentando para a esquerda de 10 em 10 vezes e os dígitos ou símbolos que podemos colocar nelas são 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9, os quais possuem um valor intrínseco distinto para cada um. Se representarmos o número 245 assinalando um símbolo a cada casa, indicando o valor de cada casa, teremos: Valor da 1000 100 10 1 0,1 0,01 casa Dígitos 0 2 4 5 0 0 O significado de cada dígito em determinada posição é o valor da casa multiplicado pelo valor do dígito e a quantidade representada é a soma de todos os produtos. Um sistema numérico deste tipo, em que o valor de cada casa é dez vezes o valor da casa imediatamente a sua direita, é conhecido como sistema decimal, ou de base dez. Se o valor da casa é

um outro número de vezes o valor da casa à direita, o sistema poderá ser de base dois ou binário, de base dezesseis ou hexadecimal, etc. Para cada um destes sistemas necessitamos de um conjunto de símbolos distintos. Por exemplo, o sistema hexadecimal utiliza os símbolos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F, onde A equivale a dez, B equivale a onze e assim consecutivamente até F que equivale a quinze. Deduzimos, então, que, para cada sistema numérico, utilizamos a quantidade de símbolos que representa a base, quer dizer, para o sistema de base dez, utilizaremos dez símbolos, para o sistema hexadecimal, utilizaremos dezesseis símbolos, e para o sistema binário, utilizaremos apenas dois símbolos. No computador, temos em princípio, apenas dois símbolos (0 e 1) portanto, poderíamos trabalhar somente com sistema binário. Porém, como veremos adiante, poderemos combinar dois ou mais bits ou símbolos binários para representar símbolos de outra base. As alternativas são: a- representar todas as quantidades em sistema binário, utilizando somente os símbolos 0 e 1, em que cada bit representa um dígito ou símbolo; e b- agrupar estes bits, de maneira a representar um dígito mediante um conjunto de bits. Se utilizarmos a alternativa (b) poderemos agrupar os bits em conjuntos de 4, de tal modo que, para cada grupo, tenhamos dezesseis possibilidades de representação e poderemos, então, utilizar o sistema hexadecimal. SISTEMA BINÁRIO A maneira mais óbvia de representar quantidades por meio de bits é o sistema numérico, conhecido com sistema binário, ou sistema numérico de base 2. Neste sistema, cada número se representa de uma forma única, mediante uma combinação de símbolos 0 e 1, que, em nosso caso, será uma combinação de estados 1 e estados 0 dos bits que forma um conjunto ordenado. Designaremos por Bi cada bit deste conjunto ordenado, no qual o sub-índice i corresponde ao número da casa que está ocupando. Cada casa vale duas vezes aquela que está imediatamente a sua direita. Desta forma, teremos que, se o valor da primeira casa da direita for 2 0, a segunda valerá 2 0 x 2 = 2 1, e assim consecutivamente para a esquerda. Os valores das casa ficam claros no seguinte esquema: 2 6 2 5 2 4 2 3 2 2 2 1 2 0 2-1 2-2 Se b 0, b 1, b 2, etc., são os bits que se coloca em cada posição, a quantidade representada valerá: b 4 2 4 + b 3 2 3 + b 2 2 2 + b 1 2 1 + b 0 2 0 + b -1 2-1 +. Para evitar a representação mediante o somatório, adota-se a convenção de separar mediante vírgulas as casas 2 0 e 2-1, de tal modo que a representação fique: b 4 b 3 b 2 b 1 b 0 b -1. Em que b I = 0 ou 1. Exemplo: o número binário 10011,01 representa a quantidade:

1 x 2 4 + 0 x 2 3 + 0 x 2 2 + 1 x 2 1 + 1 x 2 0 + 0 x 2-1 + 1 x 2-2. SISTEMA OCTAL No sistema octal ou sistema de base 8, cada casa vale 8 vezes a que está a sua direita, e os símbolos utilizados são: 0, 1, 2, 3, 4, 5, 6 e 7. Exemplo o número octal 4701 representa a quantidade decimal 2497. Designaremos por Bi cada número deste conjunto ordenado, no qual o sub-índice i corresponde ao número da casa que está ocupando. Cada casa vale oito vezes aquela que está imediatamente a sua direita. Desta forma, teremos que, se o valor da primeira casa da direita for 8 0, a segunda valerá 8 0 x 8 = 8 1, e assim consecutivamente para a esquerda. Os valores das casas ficam claros no seguinte esquema: 8 6 8 5 8 4 8 3 8 2 8 1 8 0 8-1 8-2 Se b 0, b 1, b 2, etc., são os números que se coloca em cada posição, a quantidade representada valerá: b 4 8 4 + b 3 8 3 + b 2 8 2 + b 1 8 1 + b 0 8 0 + b -1 8-1 +. Para evitar a representação mediante o somatório, adota-se a convenção de separar mediante vírgulas as casas 8 0 e 8-1, de tal modo que a representação fique: b 4 b 3 b 2 b 1 b 0 b -1. Em que b I = 0,1,2,3,4,5,6, ou 7. Exemplo: o número octal (4701) 8 representa a quantidade: (2497) 10 0 x 8 4 + 4 x 8 3 + 7 x 8 2 + 0 x 8 1 + 1 x 8 0 + 0 x 8-1 + 0 x 8-2. SISTEMA HEXADECIMAL No sistema hexadecimal ou sistema de base 16, cada casa vale dezesseis vezes a que está a sua direita, e os símbolos utilizados são: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F, onde A equivale a dez, B equivale a onze e assim consecutivamente até F que equivale a quinze, no sistema decimal. Exemplo o número hexadecimal A17,B9 representa a quantidade: A x (16) 2 10 + 1 x (16) 1 10 + 7 x (16) 0 10 + B x (16) -1 10 + 9 x (16) -2 10

A representação do conjunto dos símbolos deste sistema pode realizar-se mediante grupos de quatro bits, em que cada símbolo se faz corresponder com sua representação binária: (0000) 0 (0001) 1 (0010) 2 (0011) 3 (0100) 4 (0101) 5 (0110) 6 (0111) 7 (1000) 8 (1001) 9 (1010) A (1011) B (1100) C (1101) D (1110) E (1111) F Desta forma, o nosso número A17,B9 ficaria em binário: 101000010111,10111001 É possível considerar, do conjunto de símbolos hexadecimais representados em binário, aqueles que correspondem a um sistema decimal codificado em binário. Em tal caso, a expressão binária dos dígitos A, B, C, D, E, F não teria significado. TRANSFORMAÇÕES NUMÉRICAS BINÁRIO EM DECIMAL Já foi visto quando da explicação do sistema binário. Exemplo: 11001 1 x 2 4 + 1 x 2 3 + 0 x 2 2 + 0 x 2 1 + 1 x 2 0 = 16 + 8 + + 0 + 0 + 1 = 25 DECIMAL EM BINÁRIO Existem duas maneiras de efetuarmos as conversões de números binários para números decimais. a) Por subtração da potência de 2 imediatamente inferior ao decimal.

Exemplo: 197 197 128 = 69 2 7 69 64 = 5 2 6 5 4 = 1 2 2 1 1 = 0 2 0 o binário será: 1 1 0 0 0 1 0 1 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 (197) 10 = (11000101) 2 b) Mediante divisões sucessivas por dois, tomando-se os restos das divisões no sentido ascendente. Exemplo1: 197 197 2 1 98 2 Exemplo 2: 943 943 2 0 49 2 1 471 2 1 24 2 1 235 2 (943) 10 = (1110101111) 2 0 12 2 1 117 2 0 6 2 1 58 2 0 3 2 0 29 2 1 1 2 1 14 2 1 0 0 7 2 1 3 2 1 1 2 1 0

BINÁRIO EM OCTAL Divide-se o número em grupos de três bits, a partir da direita, substituindo-se tais grupos pelos símbolos octais correspondentes. Quando o número for fracionário, deve-se começar a divisão em grupos de três, a partir da vírgula, em ambas as direções. Exemplo: 101001111 101 001 111 (101001111) 2 ( 5 1 7) 8 = 517 8 100100111 100 100 111 (100100111) 2 ( 4 4 7) 8 = 447 8 Se a divisão em grupos de três deixar os grupos extremos com menos de três dígitos, completá-los com zeros. 1010011 1 010 011 001 010 011 (1010011) 2 ( 1 2 3) 8 (1010011) 2 = (123) 8 OCTAL EM BINÁRIO Usa-se o processo inverso ao anterior. Exemplo: (327) 8 3 2 7 011 010 111 (327) 8 = (011010111) 2 DECIMAL EM OCTAL Para efetuarmos as conversões de números decimais em números octais realizaremos esta operação mediante divisões sucessivas por oito, tomando-se os restos das divisões no sentido ascendente. Exemplo1: (3964) 10

3964 8 4 495 8 7 61 8 5 7 (3964) 10 = (7574) 8 Exemplo 2: (943) 10 943 8 7 117 8 5 14 8 6 1 (943) 10 = (1657) 8 OCTAL EM DECIMAL Já foi visto quando da explicação do sistema octal. Exemplo: 1657 1 x 8 3 + 6 x 8 2 + 5 x 8 1 + 7 x 8 0 = 512 + 384 + 4 0 + 7 = 943 BINÁRIO EM HEXADECIMAL Divide-se o número em grupos de quatro bits, a partir da direita, substituindo-se tais grupos pelos símbolos hexadecimais correspondentes. Quando o número for fracionário, deve-se começar a divisão em grupos de quatro, a partir da vírgula, em ambas as direções. Exemplo: 11110001 1111 0001 (11110001) 2 ( F 1) 16 = F1 16

10010011 1001 0011 (10010011) 2 ( 9 3) 16 = 93 16 Se a divisão em grupos de quatro deixar os grupos extremos com menos de quatro dígitos, completá-los com zeros. 101011 10 1011 0010 1011 (101011) 2 (2 B) 16 (101011) 2 = (2B) 16 HEXADECIMAL EM BINÁRIO Usa-se o processo inverso ao anterior. Exemplo: A56B A 5 6 B 1010 0101 0110 1011 (A56B) 16 = (1010010101101011) 2 HEXADECIMAL EM DECIMAL Usa-se o mesmo sistema para transforma binário em decimal, com a diferença entre base 2 para base 16. Exemplo: A6B A 6 B 10 x 16 2 + 6 x 16 1 + 11 x 16 0 = 2560 + 96 + 11 = (2667) 10 (A6B) 16 = (2667) 10 DECIMAL EM HEXADECIMAL

Semelhante às transformações de decimal para binário, com divisões sucessivas pelo número 16. Exemplo 1: 2736 10 2736 16 0 171 16 11 10 16 10 0 mas, (10) 10 = (A) 16 então: (11) 10 = (B) 16 (2736) 10 = (AB0) 16 Exemplo 2: 318 10 318 16 14 19 16 3 1 16 1 0 mas, (14) 10 = (E) 16 então: (318) 10 = (13E) 16 OCTAL EM HEXADECIMAL Converte-se primeiro o número octal para binário através do sistema onde divide-se o número em grupos de três bits, a partir da direita, substituindo-se tais grupos pelos símbolos octais correspondentes. Quando o número for fracionário, deve-se começar a divisão em grupos de três, a partir da vírgula, em ambas as direções. Após este primeiro procedimento agrupa-se o número binário em grupos de quatro dígitos da direita para a esquerda e realiza-se a conversão de binário para hexadecimal conforme sistema já mencionado. Exemplo 1: 173 8 (001111011) 2 001 111 011

( 1 7 3) 8 = 173 8 (001111011) 2 001111011 (01111011) 2 ( 7 B) 16 = 7B 16 Exemplo 2: 447 8 (100100111) 2 100 100 111 (100100111) 2 ( 4 4 7) 8 = 447 8 000100100111 (1 2 7) 16 = 127 16 HEXADECIMAL EM OCTAL Usa-se o processo inverso ao anterior. Exemplo: (327) 16 3 2 7 0011 0010 0111 (327) 16 =(001100100111) 2 001 100 100 111 (1447) 8 1 4 4 7 (327) 16 (1447) 8 OPERAÇÕES NUMÉRICAS ADIÇÃO ADIÇÃO BINÁRIA Como se sabe, no sistema decimal, quando se quer somar 9 com 1, o resultado é sempre 0 e vai 1, ou seja, é igual a 10. No sistema binário, ocorre o mesmo quando se soma 1 com 1. O resultado é 0 e vai 1, ou seja 10. As regras para a adição binária são as seguintes: Exemplos: 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 e vai 1 ( este resultado é escrito 10, mas diz-se um zero.

a) 1010 + 111 = binário decimal 1010 10 + 0111 + 7 -------------------------------- 10001 17 b) 1010 + 101 = binário decimal 1010 10 + 0101 + 5 ------------------------------ 1111 15 ADIÇÃO HEXADECIMAL Segue as mesmas regras usadas na adição binária e decimal. É preciso não confundir a soma hexadecimal (16 símbolos) com a decimal (10 símbolos). No sistema decimal 9 mais 2 é igual a 11, mas no sistema hexadecimal é B. Uma regra que deve ser seguida é a seguinte: ao serem somados dois números hexadecimais, se o resultado for maior que 15, subtrai-se 16 deste valor, coloca-se o resto como resultado e com ocorrência de tantos vai um quantos forem os múltiplos de 16 que entraram na subtração. Exemplos: 4B2C + 1234 = 4B2C + 1234 5D60 ou seja, C + 4 = 12 + 4 = 16 16 = 0 e vai um 1 + 2 + 3 = 6 B + 2 = D 4 + 1 = 5 SUBTRAÇÃO SUBTRAÇÃO BINÁRIA Pode ser feita por soma de complemento desprezando-se o estouro. No sistema decimal, para se achar o complemento de um número procede-se da seguinte forma:

Complemento de 733 1000-733 = 267 Assim, o número 267 é o complemento de 733. Por exemplo: 934 173 = 761 ou fazendo-se pelo complemento do número 173 1000-173 = 827 e somando-se 934 + 827 = 1761 desprezando-se o estouro, teremos o resultado de 761. Uma regra prática para se achar o complemento de um número binário é inverter o valor dos dígitos, ou seja, trocar todos os dígitos 1 por 0, e todos os dígitos 0 por 1, e, ao final, somar 1 ao número obtido anteriormente. Exemplo1: Achar o complemento de 1010 Invertê-lo 0101 Somar 1 + 1 0110 Exemplo2: Achar o complemento de 11011 Invertê-lo 00100 Somar 1 + 1 00101 Exemplo3: Subtrair 1101-0100 = Inverte-se o segundo 1011 Soma-se 1 + 1 soma-se o primeiro 1101 com o segundo invertido + 1100 1100 11001 Despreza-se o estouro e obtêm-se o resultado 1001

OBS: Sempre que o tamanho do subtraendo for menor que o minuendo, acrescenta-se zeros à esquerda do número (subtraendo), antes de invertê-lo. SUBTRAÇÃO HEXADECIMAL Na subtração hexadecimal, procedemos da mesma forma como fazemos na subtração decimal, considerando-se, é claro, que o sistema hexadecimal tem 16 símbolos. Sempre que não pudermos subtrair um número de outro, ou seja, quando o minuendo é menor que o subtraendo, emprestamos 1 do número vizinho à esquerda. Este 1 emprestado tem valor de 16, assim como em decimal este 1 emprestado teria valor de 10. Somando ao minuendo e subtraído ao subtraendo, obtemos o resultado. Exemplo: 8 A 8-1 F A 8A8-1FA= 6 A E Como o número 8 é menor que A, emprestamos 1 do vizinho que passa a valer 9. Este 1 emprestado passa a valer 16 que somado a 8 dá 24. Subtrai-se o subtraendo A = 10 de 24, obtendo-se 14, ou seja, E. Como 9 é menor que F, emprestamos 1 do vizinho, que passa a valer 7. Soma-se 16 ao 9, dando 25, menos F obtém-se A. E, finalmente, 7 menos 1 = 6. REPRESENTAÇÃO DE NÚMEROS INTEIROS Os computadores digitais utilizam principalmente quatro métodos para representar números inteiros: - módulo de sinal (MS); - complemento de 1 (C-1); - complemento de 2 (C-2); - excesso de 2 elevado a N-1. Nessas representações de números utiliza-se o sistema binário e considera-se que temos um número limitado de dígitos para cada dado numérico. Esse número de dígitos disponível é representado por N. MÓDULO DE SINAL (MS) Neste sistema de representação o bit que está situado mais a esquerda representa o sinal, e o seu valor será: - 0 para o sinal +; e - 1 para o sinal -. Os bits restantes representam o módulo do número.

Exemplo: representar 10 e 10 Limitação de 8 bits (N=8) 10 0 0001010-10 1 0001010 nº sinal módulo nº sinal módulo Denomina-se AMPLITUDE ou FAIXA de representação num determinado método o conjunto de números que podem ser nele representados. Para o sistema módulo de sinal, a faixa de representação para N dígitos é de: - 2 N-1 + 1 <= X <= + 2 N-1-1 Para oito bits a faixa é: - 127 <= X <= +127 Para dezesseis bits a faixa é: - 32767 <= X <= + 32767 Para trinta e dois bits a faixa é: - 2147483647 <= X <= + 2147483647 Vantagem: possuir faixa simétrica. Inconveniência: 2 representações para o número 0. Para 8 bits o 0 tem as seguintes representações: 00000000 (+0) 10000000 (-0) COMPLEMENTO DE 1 (C 1) Este sistema de representação também utiliza o bit mais à esquerda para o sinal, correspondendo o 0 ao sinal + e o 1 ao sinal -. Para os números positivos, os N- 1 bits da direita representam o módulo. O simétrico de um número positivo é obtido pelo complemento de todos os seus dígitos (trocando 0 por 1 e vice-versa) incluindo o bit de sinal. Exemplo: representar 10 e 10 Limitação de 8 bits (N=8) 10 0 0001010 nº sinal módulo Número 10 é o complemento do seu simétrico -10 1 1110101

nº sinal módulo Neste caso a faixa de representação é - 2 N-1 + 1 <= X <= + 2 N-1-1 Para oito bits a faixa é: - 127 <= X <= +127 Para dezesseis bits a faixa é: - 32767 <= X <= + 32767 Para trinta e dois bits a faixa é: - 2147483647 <= X <= + 2147483647 Vantagem: possuir faixa simétrica. Inconveniência: 2 representações para o número 0. Para 8 bits o 0 tem as seguintes representações: 00000000 (+0) 10000000 (-0) COMPLEMENTO DE 2 ( C 2) Este sistema de representação utiliza o bit mais à esquerda para o sinal, correspondendo o 0 ao sinal + e o 1 ao sinal -. Para os números positivos, os N-1 bits da direita representam o módulo, igualmente ao MS e C - 1. O simétrico de um número é obtido em dois passos: 1º passo obtém-se o complemento de todos os bits do número positivo (trocando 0 por 1 e vice-versa) incluindo o bit de sinal, isto é, executa-se o complemento de 1; 2º passo ao resultado obtido no primeiro passo, soma-se 1 (em binário), desprezando o último transporte, se houver. Exemplo: complemento de 2 dos números 10 e 10 Limitação de 8 bits (N=8) 10 0 0001010 nº sinal módulo Número 10 1º passo: complemento de 1-10 1 1110101 nº sinal módulo 2º passo: 1110101

+ 1 1110110 Neste caso a faixa de representação é - 2 N-1 + 1 <= X <= + 2 N-1-1 Para oito bits a faixa é: - 128 <= X <= +127 Para dezesseis bits a faixa é: - 32768 <= X <= + 32767 Para trinta e dois bits a faixa é: - 2147483648 <= X <= + 2147483647 Vantagem: uma única representação para o número 0. Para 8 bits teremos: Nº 0 00000000 (+0) Nº -0 passo 1 11111111 (-0) Passo 2 1 100000000 Logo 0 e 0 tem a mesma representação. EXCESSO DE 2 ELEVADO A N - 1 estouro desprezado O método de representação em excesso não utiliza nenhum bit para o sinal, de modo que todos os bits representam um módulo ou valor. Esse valor corresponde ao número representado mais um excesso, que para N bits é igual a 2 elevado a N 1. Exemplo: para 8 bits o excesso é 128 ( 2 7 = 128), logo o número 10 é representado por 10 + 128 = 138; e o número 10 é representado por 10 + 128 = 118. O número 10 é 10001010 O número 10 é 01110110 Neste método o número 0 tem uma única representação, que para 8 bits corresponde a: número 0 (0 + 128) = 10000000 Neste caso a faixa de representação é assimétrica ( o que é inconveniente) e é dada por: - 2 N-1 + 1 <= X <= + 2 N-1-1

Para oito bits a faixa é: - 128 <= X <= +127 Para dezesseis bits a faixa é: - 32768 <= X <= + 32767 Para trinta e dois bits a faixa é: - 2147483648 <= X <= + 2147483647 É interessante observar que todo o número representado em excesso é igual a sua correspondente representação em complemento de 2, mas com o 1º dígito da esquerda trocado. SOMA EM COMPLEMENTO SOMA EM COMPLEMENTO DE 1 ( C 1) Na aritmética de complemento de 1, dois números são somados da mesma forma que na representação binária. Com a diferença que, na ocorrência de transporte (carry) na soma parcial dos bits mais à esquerda, este transporte será somado ao resultado. Exemplo: somar os valores 10 e 3 em complemento de 1, para 8 bits 10 em complemento de 1 é 00001010 (10) - 3 em complemento de 1 é 11111100 (-3) somando 1 00000110 carry Observe que houve carry. Este carry deve ser somado ao resultado obtido. Vejamos: SOMA EM COMPLEMENTO DE 2 ( C 2) 00000110 + 1 00000111 (7) que é o resultado da operação. Na aritmética em complemento de 2, o processo é idêntico ao de complemento de 1, mas, desprezando-se o carry, se houver. Exemplo: somar os valores 10 e 3 em complemento de 2, para 8 bits 10 em complemento de 2 é 00001010 (10) - 3 em complemento de 2 é 11111101 (-3) somando 1 00000111 (7) carry

Observe que houve carry. Este carry deve ser desprezado. Lista de exercícios: Execute as seguintes transformações de base: 1. Binário em decimal a. (1010111) 2 ( ) 10 f. (1000110001)2 ( ) 10 b. (11111111) 2 ( ) 10 g. (111000111)2 ( ) 10 c. (1011011011) 2 ( ) 10 h. (1100110011)2 ( ) 10 d. (0100001) 2 ( ) 10 i. (00100100)2 ( ) 10 e. (110011) 2 ( ) 10 j. (10101010)2 ( ) 10 2. Decimal em binário a. (193) 10 ( ) 2 f. (900) 10 ( ) 2 b. (3057) 10 ( ) 2 g. (815)10 ( ) 2 c. (285) 10 ( ) 2 h. (2929)10 ( ) 2 d. (630) 10 ( ) 2 i. (1500)10 ( ) 2 e. (986) 10 ( ) 2 j. (152)10 ( ) 2 3. Binário em octal a. (11000001) 2 ( ) 8 f. (1110000100) 2 ( ) 8 b. (101111110001) 2 ( ) 8 g. (1100101111) 2 ( ) 8 c. (100011101) 2 ( ) 8 h. (101101110001) 2 ( ) 8 d. (1011110110) 2 ( ) 8 i. (10111011100) 2 ( ) 8 e. (1111011010) 2 ( ) 8 j. (10011000) 2 ( ) 8 4. Octal em binário a. (1024) 8 ( ) 2 f. (032) 8 ( ) 2 b. (102) 8 ( ) 2 g. (756) 8 ( ) 2 c. (214) 8 ( ) 2 h. (903) 8 ( ) 2 d. (523) 8 ( ) 2 i. (512) 8 ( ) 2 e. (7700) 8 ( ) 2 j. (707) 8 ( ) 2 5. Decimal em octal a. (193) 10 ( ) 8 f. (900) 10 ( ) 8 b. (3057) 10 ( ) 8 g. (815) 10 ( ) 8 c. (285) 10 ( ) 8 h. (2929) 10 ( ) 8 d. (630) 10 ( ) 8 i. (1500) 10 ( ) 8 e. (986) 10 ( ) 8 j. (152) 10 ( ) 8

6. Octal em decimal a. (1024) 8 ( ) 10 f. (032) 8 ( ) 10 b. (102) 8 ( ) 10 g. (756) 8 ( ) 10 c. (214) 8 ( ) 10 h. (903) 8 ( ) 10 d. (523) 8 ( ) 10 i. (512) 8 ( ) 10 e. (7700) 8 ( ) 10 j. (707) 8 ( ) 10 7. Binário em hexadecimal a. (1010111) 2 ( ) 16 f. (1000110001) 2 ( ) 16 b. (11111111) 2 ( ) 16 g. (111000111) 2 ( ) 16 c. (1011011011) 2 ( ) 16 h. (1100110011) 2 ( ) 16 d. (0100001) 2 ( ) 16 i. (00100100) 2 ( ) 16 e. (110011) 2 ( ) 16 j. (10101010) 2 ( ) 16 8. Hexadecimal em binário a. (AB9) 16 ( ) 2 f. (FF0FF) 16 ( ) 2 b. (1F3) 16 ( ) 2 g. (ABC56) 16 ( ) 2 c. (15A) 16 ( ) 2 h. (90) 16 ( ) 2 d. (523) 16 ( ) 2 i. (5D1E2) 16 ( ) 2 e. (401) 16 ( ) 2 j. (27E7) 16 ( ) 2 9. Hexadecimal em decimal a. (AB9) 16 ( ) 10 f. (FF0FF) 16 ( ) 10 b. (1F3) 16 ( ) 10 g. (ABC56) 16 ( ) 10 c. (15A) 16 ( ) 10 h. (90) 16 ( ) 10 d. (523) 16 ( ) 10 i. (5D1E2) 16 ( ) 10 e. (401) 16 ( ) 10 j. (27E7) 16 ( ) 10 10. Decimal em hexadecimal a. (193) 10 ( ) 16 f. (900) 10 ( ) 16 b. (3057) 10 ( ) 16 g. (815) 10 ( ) 16 c. (285) 10 ( ) 16 h. (2929) 10 ( ) 16 d. (630) 10 ( ) 16 i. (1500) 10 ( ) 16 e. (986) 10 ( ) 16 j. (152) 10 ( ) 16 11. Octal em hexadecimal a. (1024) 8 ( ) 16 f. (032) 8 ( ) 16 b. (102) 8 ( ) 16 g. (756) 8 ( ) 16 c. (214) 8 ( ) 16 h. (903) 8 ( ) 16 d. (523) 8 ( ) 16 i. (512) 8 ( ) 16

e. (7700) 8 ( ) 16 j. (707) 8 ( ) 16 12. Hexadecimal em octal a. (AB9) 16 ( ) 8 f. (FF0FF) 16 ( ) 8 b. (1F3) 16 ( ) 8 g. (ABC56) 16 ( ) 8 c. (15A) 16 ( ) 8 h. (90) 16 ( ) 8 d. (523) 16 ( ) 8 i. (5D1E2) 16 ( ) 8 e. (401) 16 ( ) 8 j. (27E7) 16 ( ) 8 Execute as seguintes operações aritméticas 1. Adição binária a. 1010100 + 10101 = f. 11010 + 111001 = b. 10011101 + 1001 = g. 10101010 + 100100100 = c. 101 + 1100111 = h. 1100110011 + 10101010 = d. 111 + 1111 = i. 101010000 + 1010110 = e. 10001 + 1101 = j. 111000111 + 1001111100 = 2. Adição hexadecimal a. FFAA + EDE = f. 509 + 9FF32 = b. 103 + FAFF = g. 9087 + ABC234 = c. 9999 + 6666 = h. ABD + 1245 = d. ABCDE + 3456 = i. 1A2B3C + 9684564 = e. 98989 + 76896 = j. 59 + 99 = 3. Subtração binária a. 1000000 111 = f. 1111 111 = b. 1011 1010 = g. 10001 1101 = c. 101111 101 = h. 1100110011 10101010 = d. 11001 1101 = i. 101010000 1010110 = e. 1011000 1011 = j. 111 111 = 4. Subtração hexadecimal a. FE123 ABCD = f. 9834 2349 = b. AFBCD A123F = g. A123B 456 = c. 5985 ABC = h. 122345 87FF = d. FEFE AAAF = i. 72992 AB45 = e. 1045 A99 = j. FFAAFF AFDE = Represente para 8 bits, em MS, complemento de 1 e complemento de 2 os seguintes decimais:

MS (C 1) (C 2) a. 33 e 33 b. 25 e 25 c. 100 e 100 d. 127 e 127 e. 1 e 1 f. 18 e 18 g. 78 e 78 h. 29 e 29 i. 512 e 512 j. 81 e 81 Some em (C 1) e (C 2), os seguintes decimais, representando-os em 8 bits: (C 1) (C 2) a. 17 + 33 = b. 127 + (-27) = c. 15 + (-103) = d. 70 + 70 = e. 13 + 96 = f. 34 + (-20) = g. 25 + 15 = h. 29 + 19 = i. 55 + 66 = j. 127 + (-128) =