EA960 Aritmética e Representação Numérica

Tamanho: px
Começar a partir da página:

Download "EA960 Aritmética e Representação Numérica"

Transcrição

1 EA960 Aritmética e Representação Numérica Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof. Levy Boccato

2 Introdução Até o momento, nos preocupamos apenas com escolhas ligadas ao conjunto de instruções, partindo do pressuposto que as grandezas manipuladas são essencialmente números com ou sem sinal. Algumas perguntas importantes, porém, precisam ser analisadas: Como podemos representar frações e números reais? O que acontece se uma operação cria um número que excede o limite representável? Como o hardware efetivamente multiplica ou divide os números? 2

3 Adição Processo: vai-um (carry) Implementação: Circuito somador com propagação do bit de transporte; Ou, então, com cálculo antecipado de todos os bits de transporte. Estas opções diferem em relação ao atraso de propagação, ao número de portas lógicas, etc. 3

4 Adição Problema: o resultado da adição (e subtração) pode ultrapassar os limites definidos pelo tamanho da palavra. Esta condição é conhecida como estouro aritmético ou overflow. Em que condições o overflow pode ocorrer quando a instrução add $t0, $t1, $t2 é executada? Se $t0 e $t1 possuem sinais diferentes, jamais ocorre overflow. Por quê? 4

5 Adição A soma de dois números de N bits precisaria, em tese, de (N + 1) bits para sua representação completa. A falta deste (N+1)-ésimo bit significa que quando o overflow ocorre, o bit de sinal (do registrador) recebe um valor lógico que corresponde a um bit do resultado, em vez do bit de sinal do número produzido. Logo, para detectar overflow, basta olhar para o bit de sinal do resultado armazenado. Condições: Soma de dois positivos = número negativo. Soma de dois negativos = número positivo. 5

6 Adição Processador MIPS As instruções addu, addiu e subu ignoram a ocorrência de overflow. Por outro lado, as instruções add, addi e sub causam exceções relacionadas a overflow. Tratamento da exceção: O endereço da instrução que causou a exceção é salvo no registrador EPC (exception program counter). O processador desvia para um endereço pré-definido em que há uma rotina de tratamento específica para aquele evento. A instrução mfc0 (move from coprocessor reg) copia o valor de EPC em um registrador ($k0 ou $k1, para evitar a perda do conteúdo de outros registradores), de modo que o processador possa retornar à execução normal após a ação de correção. 6

7 Adição Processador MIPS Não possui uma instrução de desvio que permita o teste da ocorrência de overflow. Como fazer esta checagem em software? A. Números com sinal addu $t0, $t1, $t2 xor $t3, $t1, $t2 slt $t3, $t3, $zero bne $t3, $zero, sem_overflow xor $t3, $t0, $t1 slt $t3, $t3, $zero bne $t3, $zero, overflow Se $t1 e $t2 tiverem sinais distintos, o OUexclusivo entre eles será um número cujo bit mais significativo será igual a 1. Logo, em complemento de 2, o resultado da operação XOR será um número negativo. A mesma ideia é explorada para testar se o sinal do resultado confere com o esperado (i.e., igual ao dos operandos). 7

8 Adição Processador MIPS Não possui uma instrução de desvio que permita o teste da ocorrência de overflow. Como fazer esta checagem em software? B. Números sem sinal Bastaria testar se o resultado é menor que addu $t0, $t1, $t2 nor $t3, $t1, $zero sltu $t3, $t3, $t2 bne $t3, $zero, overflow Uma forma engenhosa de fazer isto consiste em, primeiro, obter o complemento de 1 do primeiro operando ($t1). OBS: complemento de 1 = $t1 Em seguida, testamos se o complemento de 1 deste operando é menor que o segundo operando. Ou seja, $t1 < $t2 Isto é equivalente a testar: < $t1 + $t2 8

9 Multiplicação Relembrando o procedimento: 1001 x 1000 = 1 x x 10 x x 100 x x 1000 x 1000 multiplicando multiplicador produto O deslocamento alinha o resultado conforme a casa do dígito multiplicador (unidade, dezena, centena, etc.) O resultado pode ter, no máximo, um número de dígitos equivalente à soma das quantidades de dígitos dos operandos. 9

10 Multiplicação Relembrando o procedimento: 10

11 Multiplicação Primeira implementação: Decide quando os registradores contendo o multiplicador e o multiplicando são deslocados, e quando um valor é escrito no registrador Produto. 11

12 Multiplicação O algoritmo e o hardware anteriores podem ser facilmente refinados para consumir um ciclo de relógio por passo (iteração). Como? Operações em paralelo: os deslocamentos são feitos enquanto o multiplicando é somado ao produto caso o bit menos significativo do multiplicador seja igual a 1. O hardware também pode economizar unidades de armazenamento, eliminando porções dos registradores que não são utilizadas. 12

13 Multiplicação Segunda implementação: O multiplicador está inicialmente armazenado na meia palavra inferior do registrador de produto. A cada iteração, o tamanho (em bits) do produto cresce na mesma proporção em que os bits do multiplicador são retirados. 13

14 Multiplicação E se os números forem inteiros? 1ª abordagem: 1) Conversão dos números para os respectivos valores positivos; 2) Multiplicação convencional; 3) Ajuste do sinal do resultado conforme os sinais dos operandos observados no passo 1. 2ª abordagem: Podemos utilizar o mesmo algoritmo visto anteriormente, tomando apenas o cuidado de efetuar a extensão de sinal toda vez que um valor for deslocado. 14

15 Multiplicação Terceira implementação: Ideia: a possibilidade de o multiplicando ser somado é conhecida no início da operação por meio da observação dos N bits do multiplicador. Organização: árvore faz com que o tempo para o término da operação completa seja proporcional a log 2 (N). CUIDADO!!!! Trade-off entre desempenho e complexidade. 15

16 Multiplicação Processador MIPS: Dois registradores especiais de 32 bits para armazenar o produto: HI bits mais significativos; LO bits menos significativos; Instruções: mult rs, rt multu rs, rt mfhi rd mflo rd O produto, com 64 bits, é armazenado em HI LO. Move o conteúdo de HI / LO para um registrador. Útil para o teste de overflow. mul rd, rs, rt Os 32 bits menos significativos do produto são armazenados em rd. 16

17 Divisão Assim como ocorre com a multiplicação, existem várias estratégias para realizar a operação de divisão. Ideias iniciais: Dividendo Resto Divisor Quociente Enquanto o dividendo for menor que o divisor, os bits do quociente são iguais a zero e acrescentamos um dígito ao dividendo a cada tentativa. Quando a subtração é possível, o quociente é deslocado para a esquerda e um bit igual a 1 é inserido. 17

18 Divisão Algoritmo: Inicialmente, o valor do dividendo é armazenado no regist. Resto. 18

19 Divisão Hardware imediato: O divisor ocupa inicialmente os 32 bits mais significativos do registrador. Decide quando deslocar o conteúdo dos registradores Divisor e Quociente, além de armazenar um novo valor no Resto. 19

20 Divisão Exemplo: 10 3 (4 bits) Iteração 0 Dividendo / Resto Divisor Quociente

21 Divisão Exemplo: 10 3 (4 bits) Iteração 1 (1) Resto = Resto Divisor. Dividendo / Resto (2) Rem < 0 Resto = Resto + Divisor ; Desloca Quociente e insere um zero. Dividendo / Resto Quociente Divisor (3) Desloca o divisor para a direita

22 Divisão Exemplo: 10 3 (4 bits) Iteração 2 (1) Resto = Resto Divisor. Dividendo / Resto (2) Rem < 0 Resto = Resto + Divisor ; Desloca Quociente e insere um zero. Dividendo / Resto Quociente Divisor (3) Desloca o divisor para a direita

23 Divisão Exemplo: 10 3 (4 bits) Iteração 3 (1) Resto = Resto Divisor. Dividendo / Resto (2) Rem < 0 Resto = Resto + Divisor ; Desloca Quociente e insere um zero. Dividendo / Resto Quociente Divisor (3) Desloca o divisor para a direita

24 Divisão Exemplo: 10 3 (4 bits) Iteração 4 (1) Resto = Resto Divisor. Dividendo / Resto (2) Rem >= 0 Desloca Quociente e insere um bit 1. Dividendo / Resto Quociente Divisor (3) Desloca o divisor para a direita

25 Divisão Exemplo: 10 3 (4 bits) Iteração 5 (1) Resto = Resto Divisor. Dividendo / Resto (2) Rem >= 0 Desloca Quociente e insere um bit 1. Dividendo / Resto Quociente Divisor (3) Desloca o divisor para a direita

26 Divisão Hardware aprimorado: Note a semelhança entre este circuito e aquele destinado à multiplicação. 26

27 Divisão Divisão com sinal: A abordagem mais simples consiste em lembrar dos sinais dos operandos, convertê-los para seus equivalentes positivos, realizar a divisão e, finalmente, ajustar o sinal do quociente caso necessário. Convenção para evitar ambiguidades: o sinal do resto é determinado pelo sinal do dividendo. Cuidado: há a possibilidade de divisão por zero. 27

28 Divisão MIPS: Também usa os registradores Hi e Lo para a operação de divisão. Hi (32 bits): contém o resto. Lo (32 bits): contém o quociente. O Software precisa verificar uma eventual divisão por zero e a ocorrência de overflow. Instruções: div rs, rt divu rs, rt mfhi e mflo possibilitam o acesso aos resultados. 28

29 Ponto Flutuante De que maneira números reais podem ser representados em computador? Exemplos: 0,33 2,71828 (e) ,45 Problema: o conjunto (e qualquer subintervalo) dos números reais não é contável. Consequência: o que se processa em computador necessariamente é uma aproximação do conjunto dos números reais. Duas questões, portanto, são bastante importantes na escolha de uma representação para esta classe de números: Qual a faixa de valores representáveis? Qual a precisão que se atinge com a representação adotada? 29

30 Ponto Flutuante A representação em ponto flutuante é o padrão adotado pelos sistemas computacionais para expressar um número real. Notação científica: Um único dígito à esquerda da vírgula (ponto decimal ou binário). Normalização: o único dígito antes da vírgula sempre é diferente de zero. Exemplos: 4, (Normalizado) 1, (Normalizado) 0, (Não-normalizado) 30

31 Ponto Flutuante Vantagens da notação científica normalizada: Simplifica a troca de dados que incluem números representados em ponto flutuante. Simplifica os algoritmos para aritmética de ponto flutuante. Aumenta a precisão dos números que podem ser armazenados em uma palavra. 0 s desnecessários são substituídos por dígitos verdadeiros à direita da vírgula. 31

32 Ponto Flutuante Representação (normalizada): 1,xxxxxx 2 2 yyyy k bits m bits O primeiro bit indica o sinal do número. O campo seguinte contém os bits referentes ao expoente (positivo ou negativo), cujo tamanho afeta decisivamente a faixa de números representáveis. O último campo, denominado fração (mantissa ou magnitude), contém os dígitos válidos na forma normalizada. O tamanho deste campo determina a precisão da representação. Geral: (-1) S F 2 E yyyy 1,xxxxxx 2 Sinal Expoente Fração, Mantissa ou Magnitude 32

33 Ponto Flutuante A representação em ponto flutuante está sujeita à ocorrência de overflow: Quando o expoente se torna excessivamente grande, não podendo ser representado no campo correspondente, temos um overflow. Há, também, a possibilidade de outro evento excepcional, denominado underflow: Quando o valor calculado se torna tão pequeno que não pode ser representado, temos um underflow. Ou, equivalentemente, um underflow ocorre quando o expoente negativo para a representação do número se torna muito grande e não cabe no campo correspondente. 33

34 Ponto Flutuante Solução de compromisso: Aumentar o número de bits destinados ao expoente amplia a faixa de números que podem ser representados. Além disso, reduz a possibilidade de ocorrência de overflow / underflow. Aumentar o número de bits destinados à mantissa melhora a precisão ou a capacidade de aproximação associada à representação adotada. Limitação: tamanho da palavra (memória / registrador). 34

35 Ponto Flutuante Padrão IEEE 754 (1985): Formato simples (single): 8 bits 23 bits S Expoente Fração Formato duplo (double): 11 bits 52 bits S Expoente Fração Fração (continuação) 35

36 Ponto Flutuante Padrão IEEE 754 (1985): Bit escondido: dado que o bit mais significativo guardado na mantissa sempre seria igual a 1 por causa da normalização, ele não precisa ser armazenado junto com os demais bits, i.e., ele pode ser implícito à representação. Deste modo, no formato single, teremos efetivamente 24 bits de mantissa (1 implícito e 23 armazenados). No caso double, serão 53 bits. 36

37 Ponto Flutuante Padrão IEEE 754 (1985): Para facilitar a comparação entre dois números representados em ponto flutuante, o expoente é armazenado antes da mantissa. Contudo, expoentes negativos complicam um pouco a comparação, pois à primeira vista se parecem com valores de maior magnitude (sem sinal) lembrar que o bit mais significativo é igual a 1. Desejável: maior expoente positivo = menor expoente negativo = Esta convenção nos leva à notação polarizada, na qual um bias é subtraído do expoente (sem sinal) armazenado para determinar o valor real deste campo. Valor escolhido: bias = 127 (single) bias = 1023 (double) 37

38 Ponto Flutuante Padrão IEEE 754 (1985): Com estas modificações, a representação em ponto flutuante segundo o padrão IEEE 754 é expressa da seguinte forma: (-1) S (1 + mantissa) 2 (expoente bias) Expandindo em função dos bits da mantissa b0, b1, b2, : (-1) S (1 +(b1 2-1 ) + (b2 2-2 ) + (b3 2-3 ) + ) 2 (expoente bias) Ou, equivalentemente: (-1) S (1 +((b ) + (b ) + + (b )) 2-23 ) 2 (expoente bias) 38

39 Ponto Flutuante Padrão IEEE 754 (1985): Números positivos: Menor expoente armazenado: 1 Maior expoente armazenado: , , , , Precisão: Precisão: Números negativos: -1, , , , Precisão: Precisão:

40 Ponto Flutuante Padrão IEEE 754 (1985): Representação do zero: Menor expoente: Menor fração ou mantissa: Símbolos especiais: O maior expoente (255) é reservado para símbolos especiais. Por exemplo, em vez de uma divisão por zero causar uma exceção, um símbolo + ou - pode ser retornado. Neste caso, a representação adotada é: expoente = 255 e fração = Operações inválidas como 0 / 0 ou uma subtração entre dois valores infinitos produzem um símbolo NaN (not a number). A representação adotada para esta condição é: expoente = 255 e fração = valor não-nulo. 40

41 Ponto Flutuante Padrão IEEE 754 (1985): Em vez de haver um vazio (gap) entre o 0 e o menor valor normalizado, o padrão IEEE 754 aceita os chamados números não-normalizados. Características: Expoente armazenado é o mesmo que o utilizado para o valor zero (00...0). Fração não-nula. Correspondência: (-1) S (0 + fração) Exemplo: Menor valor não-normalizado (single): 0, = Maior valor não-normalizado (single): 0, = ( )

42 Ponto Flutuante Exemplo: k = 4 e m = 2 Neste caso, o bias é igual a 7. Expoente = 0 reservado para o 0 e para os números não-normalizados. 1, = 0, , = 0, , = 0, , = 0, Menor expoente válido 1, = 128 1, = 160 1, = 192 1, = 224 Maior expoente válido Expoente = 15 reservado para ± e NaN. 42

43 Ponto Flutuante Padrão IEEE 754 (1985): Quadro resumo: 43

44 Ponto Flutuante Padrão IEEE 754 (1985): Exemplo: decimal para ponto flutuante (1) 0,625 base decimal (2) 0,101 2 base 2 (3) Normalizando: 1, (4) Sinal: 0 (5) Expoente: = 126 (6) Fração: S Expoente Fração (7) Palavra armazenada: 0x3f

45 Ponto Flutuante Padrão IEEE 754 (1985): Exemplo: ponto flutuante para decimal S Expoente Fração (1) Palavra armazenada: 0xc1b (2) Sinal = 1 número negativo (3) Expoente = 131 removendo a polarização, obtemos o expoente verdadeiro: = 4. (4) Fração = (5) Valor: (-1) S (1 + fração) 2 (expoente bias) (-1) (1 + 0, ) 2 4 = - 22,

46 Ponto Flutuante Adição: Passo 1: alinhar o ponto binário (decimal) tendo como referência o número com maior expoente. Para isto, basta deslocar o significando do menor número para a direita até que seu expoente corrigido se torne equivalente à referência. Passo 2: efetuar a operação de adição. Passo 3: normalizar o resultado. Passo 4: arredondar (truncar) para que valor obtido possua exatamente o número de dígitos permitido. Passo 5: caso necessário, efetuar nova normalização. 46

47 Ponto Flutuante Adição: 47

48 Ponto Flutuante Adição: Exemplo: 0,5 0,4375 Usando 4 bits para a representação: 0,5 = 0,1 2 0 = 1, ,4375 = - 0, = -1, O significando do número com menor expoente (no caso, -1,110) é deslocado para a direita até que seu expoente atinja o valor , = -0, Soma: 1, , = 0,

49 Ponto Flutuante Adição: Exemplo: 0,5 0,4375 Normalize a soma, verificando a ocorrência de overflow ou underflow. 0, = 1, Arrendonde o resultado (neste caso em particular, não há necessidade de mudança). 1, = 0,

50 Ponto Flutuante Hardware: Primeiro, o expoente de um operando é subtraído do outro usando uma pequena ALU para descobrir qual deles é o maior e qual a diferença entre estes valores. Esta diferença controla os três multiplexadores; da esquerda para a direita, eles selecionam o maior expoente, o significando do menor número e o significando do maior número. O menor significando é deslocado para a direita e, então, os significandos são somados com o auxílio da ALU ampliada. Em seguida, a soma é deslocada para a direita ou esquerda e o expoente é incrementado ou decrementado (Normalização) O hardware de arredondamento cria o resultado final, o que pode exigir uma nova etapa de normalização. 50

51 Ponto Flutuante Multiplicação: Passo 1: calcular o expoente. Basta somar os expoentes armazenados!? E subtrair a polarização. Passo 2: multiplicar os significandos. Passo 3: normalizar o resultado. Passo 4: arredondar (truncar) para que valor obtido possua exatamente o número de dígitos permitido. Se necessário, efetuar nova normalização. Passo 5: determinar o sinal do resultado. 51

52 Ponto Flutuante Multiplicação: 52

53 Ponto Flutuante Multiplicação: Exemplo: 0,5 (-0,4375) Usando 4 bits para a representação: 0,5 = 0,1 2 0 = 1, ,4375 = - 0, = -1, Somando os expoentes sem bias: -1 + (-2) = -3 Multiplicando os significandos: 1,000 0,111 = 1, Podemos manter apenas 4 bits 1,

54 Ponto Flutuante Multiplicação: Exemplo: 0,5 (-0,4375) O produto já está normalizado e não houve overflow / underflow. Não há necessidade de arredondar. Sinal: como os sinais dos operandos eram diferentes, o resultado será negativo. -1, Convertendo para decimal: -1, = -0,

55 Ponto Flutuante Bits de guarda e arredondamento: Para arredondar os números de maneira mais precisa, o hardware pode incluir bits extras nos cálculos. O padrão IEEE 574 prevê o uso de dois bits extras à direita durante as somas intermediárias, denominados bits de guarda e arredondamento. Exemplo: 2, , Com bits extras: 2, ,0256 = 2, Arredondamento: 2, Sem bits extras: 2,34 + 0,02 = 2,

56 Ponto Flutuante Sticky bit: Terceiro bit extra usado para melhorar a aproximação/arredondamento. Se existem bits não-nulos à direita do bit de arredondamento, o sticky bit é 1; caso contrário, ele é zero. Atrativo: permite que o computador enxergue a diferença existente entre, por exemplo, 0, e 0, durante a etapa de arredondamento. Exemplo: 5, , Mesmo com os bits de arredondamento e de guarda, a soma seria realizada entre 2,34 e 0,005. O sticky bit, neste caso, assumiria o valor 1, uma vez que haveria dígitos não-nulos à direita do bit de arredondamento. Sem o sticky bit: a soma seria 2,345 = 2,34. Com o sticky bit: a soma também seria 2,345, mas com a informação de que havia mais dígitos. Então, o arredondamento seria para o valor 2,35. 56

57 Ponto Flutuante A arquitetura MIPS oferece um conjunto de instruções específicas para trabalhar com números reais em representação com ponto flutuante. Adição: add.s e add.d Subtração: sub.s e sub.d Multiplicação: mul.s e mul.d Divisão: div.s e div.d Comparação: c.x.s e c.x.d, onde X = {eq, neq, lt, le, gt e ge} Desvio: bc1t (branch, true) e bc1f (branch, false) 57

58 Ponto Flutuante Há 32 registradores, denotados por $f0-$f31, destinados especificamente para operações em ponto flutuante. Estes registradores podem ser agrupados em pares para a representação com precisão dupla. Neste caso, uma referência ao registrador $f0 é interpretada como uma tentativa de acesso ao conteúdo (64 bits) de $f0 - $f1. Há instruções específicas para mover dados da memória para estes registradores: lwc1 e swc1. OBS: a abreviação c1 vem de coprocessador 1 antigamente, a ULA de ponto flutuante ficava em um chip separado do processador. 58

59 Ponto Flutuante Resumo: 59

60 Considerações Finais Alguns erros comuns: Deslocamento para a direita sempre implementa a divisão por uma potência de 2. Isso é verdade desde que seja um número sem sinal. Adição em ponto flutuante é associativa! Por causa da precisão limitada, é possível que arredondamentos intermediários levem a resultados diferentes dependendo da ordem em que as somas são feitas. Exemplo: a = -1, b = 1, c = 1 (a + b) + c = 1 a + (b + c) = 0 60

61 Números + Programa Armazenado Importante: uma sequência de bits armazenada na memória não possui um significado intrínseco; isto é, ela pode ser interpretada de maneiras diferentes: Número sem sinal; Número inteiro; Número em representação de ponto flutuante; Caractere (ASCII); Instrução de máquina. A operação que atua sobre os bits armazenados em uma dada palavra é que determina o significado desta sequência de bits. Importante: há uma diferença fundamental entre os números representados em computador e os números do mundo real. Magnitude limitada. Precisão limitada. Podemos representar apenas 2 N números, onde N é o número de bits para armazenamento/representação. 61

62 Créditos Figuras extraídas de D. A. Patterson e J. L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, Morgan Kauffman, 5ª edição,

Aritmética Computacional. Prof. Leonardo Barreto Campos 1

Aritmética Computacional. Prof. Leonardo Barreto Campos 1 Aritmética Computacional Prof. Leonardo Barreto Campos Sumário Introdução; Representação de Números Inteiros; Aritmética de Números Inteiros; Representação de Números de Ponto Flutuante; Aritmética de

Leia mais

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Aritmética Computacional - Ponto Flutuante - Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Slides baseados nas lâminas dos profs Ney Calazans e Fernando

Leia mais

ARQUITECTURA DE COMPUTADORES

ARQUITECTURA DE COMPUTADORES ARQUITECTURA DE COMPUTADORES CAPÍTULO III AULA I, II e III Abril 2014 Índice Aritmética para computadores Intro Adição e subtração Multiplicação Divisão Virgula Flutuante Virgula Flutuante - aritmética

Leia mais

Capítulo 6. Aritmética Computacional. 6.1 Números com Sinal e Números sem Sinal

Capítulo 6. Aritmética Computacional. 6.1 Números com Sinal e Números sem Sinal 61 Capítulo 6 Aritmética Computacional As palavras de um computador são compostas por bits e podem representar números armazenados na memória. Estes números podem ter diferentes significados, como inteiros

Leia mais

UNIMINAS. 101.. Só é necessário o armazenamento de: Sinal da mantissa: - (menos). Valor da mantissa: 00110101. Sinal do expoente: -(na realidade, háh

UNIMINAS. 101.. Só é necessário o armazenamento de: Sinal da mantissa: - (menos). Valor da mantissa: 00110101. Sinal do expoente: -(na realidade, háh Representação em Ponto Flutuante Utiliza-se a representação científica normalizada: 2500 = 2,5 x 10 3 0,00009 = 9,0 x 10-5. Mantissa: 1 =< M < 2. Na realidade, trabalha-se na base 2: -1,00110101 x 2-1012

Leia mais

Vírgula flutuante Aula 6

Vírgula flutuante Aula 6 Vírgula flutuante Aula 6 17 de Março de 2005 1 Estrutura desta aula Números em vírgula flutuante Formatos dos números em vírgula fixa e em vírgula flutuante A norma IEEE 754 Normalizações, expoentes, zeros

Leia mais

Arquitetura FPU: Implementação MIPS32. Guilherme Fernandes Raphanelli Diogo D. Fonseca dos Santos

Arquitetura FPU: Implementação MIPS32. Guilherme Fernandes Raphanelli Diogo D. Fonseca dos Santos Arquitetura FPU: Implementação MIPS32 Guilherme Fernandes Raphanelli Diogo D. Fonseca dos Santos Introdução O suporte para operações de ponto flutuante nas diferentes arquiteturas é normalmente dado através

Leia mais

Sistemas Numéricos. Tiago Alves de Oliveira

Sistemas Numéricos. Tiago Alves de Oliveira Sistemas Numéricos Tiago Alves de Oliveira Sumário Sistemas Numéricos Binário Octal Hexadecimal Operações aritméticas binária e hexadecimal Operações lógicas binárias e decimais Representação Interna de

Leia mais

Capítulo VI Circuitos Aritméticos

Capítulo VI Circuitos Aritméticos Capítulo VI Circuitos Aritméticos Introdução No capítulo anterior estudamos a soma e subtração de números binários. Neste capítulo estudaremos como as operações aritméticas de soma e subtração entre números

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores 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. Sílvio Fernandes

Leia mais

Caminho de Dados e Controle. Prof. Leonardo Barreto Campos 1

Caminho de Dados e Controle. Prof. Leonardo Barreto Campos 1 Caminho de Dados e Controle Prof. Leonardo Barreto Campos 1 Sumário Introdução; Convenções Lógicas de Projeto; Construindo um Caminho de Dados; O Controle da ULA; Projeto da Unidade de Controle Principal;

Leia mais

12 de Março de 2007 1. Aula 5

12 de Março de 2007 1. Aula 5 12 de Março de 2007 1 Multiplicação e divisão inteiras Aula 5 Estrutura desta aula Multiplicação básica Multiplicações melhoradas Multiplicação em complemento para 2 Algoritmo de Booth Divisão básica Ref:

Leia mais

Capítulo 3. Aritmética de Computadores

Capítulo 3. Aritmética de Computadores Capítulo 3 Aritmética de Computadores Aritmética para Computadores Operações com inteiros Adição e subtração Multiplicação e divisão Lidado com estouro aritmético Números reais em ponto flutuante Representação

Leia mais

Arquitetura de Computadores II MIPS64. Prof. Gabriel P. Silva

Arquitetura de Computadores II MIPS64. Prof. Gabriel P. Silva Arquitetura de Computadores II MIPS64 Prof. Gabriel P. Silva C:=A+B: Tipos de Arquitetura MIPS64 Arquitetura do tipo Load/Store 32 registradores de uso geral de 64 bits. 32 registradores de ponto flutuante

Leia mais

=...= 1,0 = 1,00 = 1,000...

=...= 1,0 = 1,00 = 1,000... OPERAÇÕES COM NÚMEROS DECIMAIS EXATOS Os números decimais exatos correspondem a frações decimais. Por exemplo, o número 1,27 corresponde à fração127/100. 127 = 1,27 100 onde 1 representa a parte inteira

Leia mais

Aritmética dos Computadores

Aritmética dos Computadores William Stallings Arquitetura e Organização de Computadores Capítulo 4 Aritmética dos Computadores Unidade Lógica e Aritmética Faz os cálculos lógicos e aritméticos. Tudo, num sistema computador, está

Leia mais

Representações de caracteres

Representações de caracteres Representações de caracteres Sistemas de Numeração A necessidade de contar é algo que acompanha o ser humano desde tempos imemoriais. Sistemas de Numeração Usando o polegar para indicar em cada dedo a

Leia mais

Construção de uma via de dados, abordagem monociclo, multiciclo e pipeline

Construção de uma via de dados, abordagem monociclo, multiciclo e pipeline INSTITUTO FEDERAL DO RIO GRANDE DO NORTE DIRETORIA ACADÊMICA DE GESTÃO E TECNOLOGIA DA INFORMAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES DISCIPLINA: ORGANIZAÇÃO DE COMPUTADORES Construção

Leia mais

números decimais Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos 2 de um bolo se dividirmos esse bolo

números decimais Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos 2 de um bolo se dividirmos esse bolo A UA UL LA Frações e números decimais Introdução Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos de um bolo se dividirmos esse bolo em cinco partes iguais e tomarmos

Leia mais

Informática Aplicada

Informática Aplicada Informática Aplicada Aula 1 Introdução Diogo Pinheiro Fernandes Pedrosa Departamento de Ciências Exatas e Naturais Universidade Federal Rural do Semi-Árido Introdução Informática informação aplicada; Pressupõe

Leia mais

números decimais Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos 2 de um bolo se dividirmos esse bolo

números decimais Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos 2 de um bolo se dividirmos esse bolo A UA UL LA Frações e números decimais Introdução Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos de um bolo se dividirmos esse bolo em cinco partes iguais e tomarmos

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores Eduardo Albuquerque Adaptado do material do Prof. Fábio M. Costa Instituto de Informática UFG 1S/2004 Representação de Dados e Aritmética Computacional Roteiro Números inteiros

Leia mais

a) 2 b) 3 c) 4 d) 5 e) 6

a) 2 b) 3 c) 4 d) 5 e) 6 Recordando operações básicas 01. Calcule as expressões abaixo: a) 2254 + 1258 = b) 300+590 = c) 210+460= d) 104+23 = e) 239 54 = f) 655-340 = g) 216-56= h) 35 x 15 = i) 50 x 210 = j) 366 x 23 = k) 355

Leia mais

BC-0504 Natureza da Informação

BC-0504 Natureza da Informação BC-0504 Natureza da Informação Aulas 4 Sistemas de numeração. Operações em binário e algebra booleana. Equipe de professores de Natureza da Informação Santo André Julho de 2010 Parte 0 Realizar 6 problemas

Leia mais

Notas de Aula Guilherme Sipahi Arquitetura de Computadores

Notas de Aula Guilherme Sipahi Arquitetura de Computadores Notas de Aula Guilherme Sipahi Arquitetura de Computadores Aritmética de Ponto Flutuante. 1. Da aritmética de Inteiros a aritmética de Pontos Flutuantes : Números inteiros deixam de representar uma parte

Leia mais

Arquitetura e Organização de Processadores. Aula 2. Processadores RISC Apresentação do processador MIPS

Arquitetura e Organização de Processadores. Aula 2. Processadores RISC Apresentação do processador MIPS Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 2 Processadores RISC Apresentação do processador

Leia mais

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

Aula 9: Estouro e Representação em Ponto Flutuante Aula 9: Estouro e Representação em Ponto Flutuante Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Material baseado nos slides do prof. Diego Passos Fernanda

Leia mais

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

Aula 9: Estouro e Representação em Ponto Flutuante Aula 9: Estouro e Representação em Ponto Flutuante Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Estouro e Ponto Flutuante FAC 1 / 43 Revisão

Leia mais

Projetando um Computador

Projetando um Computador Objetivo Projetando um Computador Parte II (2) Projetando um Computador Parte II Arquitetura do Processador BIP Apresentar as noções do funcionamento de um computador através da descrição da arquitetura

Leia mais

Microcontroladores e Microprocessadores. Conversão de Bases Prof. Samuel Cavalcante

Microcontroladores e Microprocessadores. Conversão de Bases Prof. Samuel Cavalcante Microcontroladores e Microprocessadores Conversão de Bases Prof. Samuel Cavalcante Conteúdo Conversão de Qualquer base para Decimal Decimal para Binário Hexadecimal para binário Componentes básicos de

Leia mais

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

William Stallings Arquitetura e Organização de Computadores 8 a Ediçã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

Leia mais

Aula 3 - Representação de Dados

Aula 3 - Representação de Dados Aula 3 - Representação de Dados Marcos A. Guerine Universidade Federal Fluminense mguerine@ic.uff.br Na aula passada... História dos sistemas de numeração Bases de numeração Conversão entre bases Conversão

Leia mais

Na Aula Anterior... Operações Aritméticas e Lógicas

Na Aula Anterior... Operações Aritméticas e Lógicas GBC36Arq. e Org. de Computadores I 29/8/26 Na Aula Anterior... Operações Aritméticas e Lógicas A linguagem Assembly; Montadores; Ligadores; Ligação Estática; Ligação Dinâmica; Universidade Federal de Uberlândia

Leia mais

Organização e Arquitetura de computadores

Organização e Arquitetura de computadores Organização e Arquitetura de computadores Aritmética computacional Prof. Dr. Luciano José enger Representação de valores Os valores expressos em números inteiros e fracionários necessitam ser representados

Leia mais

Sistemas de Vírgula Flutuante

Sistemas de Vírgula Flutuante Luiz C. G. Lopes Departamento de Matemática e Engenharias Universidade da Madeira MAT 2 05 2007/08 Definição. Diz-se que um número real x R\{0} é um número de vírgula flutuante normalizado se forem verificadas

Leia mais

Projetando um Computador Parte II Arquitetura do Processador BIP

Projetando um Computador Parte II Arquitetura do Processador BIP Projetando um Computador Parte II Arquitetura do Processador BIP Prof. Dr. Cesar Albenes Zeferino (zeferino@univali.br) Objetivo Projetando um Computador Parte II (2) Apresentar as noções do funcionamento

Leia mais

Estouro e Representação em Ponto Flutuante

Estouro e Representação em Ponto Flutuante Estouro e Representação em Ponto Flutuante Cristina Boeres Insituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado nos slides de Fernanda Passos Cristina Boeres (IC/UFF)

Leia mais

http://www.ic.uff.br/~boeres/fac.html! Conteúdos: Debora, Edcarllos, livros! slides disponíveis!

http://www.ic.uff.br/~boeres/fac.html! Conteúdos: Debora, Edcarllos, livros! slides disponíveis! http://www.ic.uff.br/~boeres/fac.html! 1 Conteúdos: Debora, Edcarllos, livros! slides disponíveis! Unidade central de Processamento realiza operações básicas codificadas em 0s e 1s instrução contém código

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores 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

Leia mais

flutuante 11. Aritmética de vírgula Operações em números fraccionários

flutuante 11. Aritmética de vírgula Operações em números fraccionários 11. Aritmética de vírgula flutuante Vamos falar de aritmética não-inteira (i.e., fraccionária, ou de vírgula flutuante ). Este capítulo pode ser adiado pois precisas de conceitos teóricos importantes sobre

Leia mais

Data Path / Control Path Controle do MIPS

Data Path / Control Path Controle do MIPS Organização e Arquitetura de Computadores Unidade de Controle Uniciclo A unidade de controle deve, a partir do código da instrução, fornecer os sinais que realizam as instruções na unidade operativa. Sequência

Leia mais

Erros e Incertezas. Rafael Alves Batista Instituto de Física Gleb Wataghin Universidade Estadual de Campinas (Dated: 10 de Julho de 2011.

Erros e Incertezas. Rafael Alves Batista Instituto de Física Gleb Wataghin Universidade Estadual de Campinas (Dated: 10 de Julho de 2011. Rafael Alves Batista Instituto de Física Gleb Wataghin Universidade Estadual de Campinas (Dated: 10 de Julho de 2011.) I. INTRODUÇÃO Quando se faz um experimento, deseja-se comparar o resultado obtido

Leia mais

Multiplicador Binário com Sinal

Multiplicador Binário com Sinal Multiplicador Binário com Sinal Edson T. Midorikawa/2010 RESUMO Nesta experiência será implementado circuito para multiplicação binária com sinal. Deve ser aplicada a metodologia para projeto estruturado

Leia mais

FRAÇÃO. Número de partes pintadas 3 e números de partes em foi dividida a figura 5

FRAÇÃO. Número de partes pintadas 3 e números de partes em foi dividida a figura 5 Termos de uma fração FRAÇÃO Para se representar uma fração através de figuras, devemos dividir a figura em partes iguais, em que o numerador representar a parte considera (pintada) e o denominador representar

Leia mais

Na Aula Anterior... Operações Aritméticas e Lógicas. Nesta Aula. Instruções Aritméticas (N e Z) Exemplo 11/03/2019

Na Aula Anterior... Operações Aritméticas e Lógicas. Nesta Aula. Instruções Aritméticas (N e Z) Exemplo 11/03/2019 GBC046 Arq. e Org. de Computadores II Operações Aritméticas e Lógicas Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Na Aula Anterior... A linguagem Assembly;

Leia mais

1. Números. MatemáticaI Gestão ESTG/IPB Departamento de Matemática. Números inteiros. Nota: No Brasil costuma usar-se: bilhão para o número

1. Números. MatemáticaI Gestão ESTG/IPB Departamento de Matemática. Números inteiros. Nota: No Brasil costuma usar-se: bilhão para o número MatemáticaI Gestão ESTG/IPB Departamento de Matemática 1. Números Números inteiros 0 10 1 1 10 10 2 10 100 3 10 1000 6 10 1000000 10 10 12 18 Uma unidade (um) Uma dezena (dez) Uma centena (cem) Um milhar

Leia mais

Experiência 1 Medidas: Leitura de instrumentos:

Experiência 1 Medidas: Leitura de instrumentos: 1 Experiência 1 Medidas: Leitura de instrumentos: Quando realizamos uma medida precisamos estabelecer a confiança que o valor encontrado para a medida representa. Para representar corretamente a medida

Leia mais

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

Unidade 3 Aritmética Computacional Uma breve introdução Pontifícia Universidade Católica do Rio Grande do Sul Instituto de Informática Organização de Computadores - GAPH Unidade 3 Aritmética Computacional Uma breve introdução Autores: Fernando Gehm Moraes &

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Representação de Números de Ponto Flutuante Aritmética

Leia mais

Figura 8: modelo de Von Neumann

Figura 8: modelo de Von Neumann 3. ORGANIZAÇÃO DE SISTEMA DE COMPUTADORES Olá, caro aluno! Neste capítulo vamos ver como são organizados os componentes que formam um sistema computacional. O conceito é histórico, mas é aplicado até os

Leia mais

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

Aritmética Computacional (Ponto Flutuante) Capítulo 4 Aritmética Computacional (Ponto Flutuante) Capítulo 4 Ch4 1 Ponto Flutuante Objetivos: representação de números não inteiros aumentar a capacidade de representação (maiores ou menores) Formato padronizado

Leia mais

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

Aritmética Binária e Caminho de Dados. Aritmética Binária Caminho de Dados ritmética Binária Caminho de Dados Ivanildo Miranda Octávio ugusto Deiroz Representação Binárias Representação Hexadecimal Números sem Sinal Números com Sinal Operações ritméticas (soma e subtração) com

Leia mais

Fundamentos de Arquitetura e Organização de Computadores

Fundamentos de Arquitetura e Organização de Computadores Fundamentos de Arquitetura e Organização de Computadores Dois conceitos fundamentais no estudo dos sistemas de computação são o de Arquitetura e Organização de computadores. O termo arquitetura refere-se

Leia mais

Ponto Fixo e Ponto Flutuante

Ponto Fixo e Ponto Flutuante Ponto Fixo e Ponto Flutuante Arquitetura de Computadores Introdução (1/2) É trivial para um computador atual tratar e operar com números inteiros. Entretanto, em muitas aplicações do dia a dia é necessário

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Evolução e Desempenho dos Computadores Slide 1 Conceitos Arquitetura do Computador Refere-se aos atributos que são visíveis para o programador. Ex: conjunto

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Interconexão do Computador Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes -

Leia mais

Guia Rápido MIPS. Tipos de Dados e Formatações

Guia Rápido MIPS. Tipos de Dados e Formatações Tipos de Dados e Formatações Guia Rápido MIPS Tipos de Dados: Todas as instruções são de 32 bits Byte = 8 bits Halfword = 2 bytes Word = 4 bytes Um caractere ocupa 1 byte na memória Um inteiro ocupa 1

Leia mais

TECNOLOGIA EM MECATRÔNICA INDUSTRIAL CONTROLADORES LÓGICOS PROGRAMÁVEIS

TECNOLOGIA EM MECATRÔNICA INDUSTRIAL CONTROLADORES LÓGICOS PROGRAMÁVEIS TECNOLOGIA EM MECATRÔNICA INDUSTRIAL CONTROLADORES LÓGICOS PROGRAMÁVEIS TECNOLOGIA EM MECATRÔNICA INDUSTRIAL CONTROLADORES LÓGICOS PROGRAMÁVEIS Autor: Prof. Heliliano Carlos Sartori Guedes prof.helilianoguedes@gmail.com

Leia mais

Arquitetura e Organização de Computadores. Profa. Débora Matos

Arquitetura e Organização de Computadores. Profa. Débora Matos Arquitetura e Organização de Computadores aula 1 Profa. Débora Matos Apresentação da disciplina CARGA HORÁRIA: 72H/A ANO/SEMESTRE: 2011/2 TURNO: NOITE PROFESSORA RESPONSÁVEL: DÉBORA MATOS COMPETÊNCIAS

Leia mais

Números escritos em notação científica

Números escritos em notação científica Notação Científica Números escritos em notação científica Escrever um número em notação científica tem muitas vantagens: Para números muito grandes ou muito pequenos poderem ser escritos de forma abreviada.

Leia mais

Determinantes. Matemática Prof. Mauricio José

Determinantes. Matemática Prof. Mauricio José Determinantes Matemática Prof. Mauricio José Determinantes Definição e Conceito Matriz de ordem 1 Dizemos que um determinante é um resultado (numérico) de operações que são realizadas em uma matriz quadrada.

Leia mais

Oganização e Arquitetura de Computadores

Oganização e Arquitetura de Computadores Oganização e Arquitetura de Computadores Capítulo 14 e 15 Unidade de Controle Parte I Operação da Unidade de Controle 1 Micro-Operações Um computador executa um programa Ciclo: Busca/Executa Cada ciclo

Leia mais

Circuitos Aritméticos

Circuitos Aritméticos Circuitos Aritméticos Semi-Somador Quando queremos proceder à realização de uma soma em binário, utilizamos várias somas de dois bits para poderemos chegar ao resultado final da operação. Podemos, então,

Leia mais

Equipe de Matemática MATEMÁTICA

Equipe de Matemática MATEMÁTICA Aluno (a): Série: 3ª Turma: TUTORIAL 5B Ensino Médio Equipe de Matemática Data: MATEMÁTICA Conjunto dos números racionais O conjunto dos números racionais é uma ampliação do conjunto dos números inteiros.

Leia mais

Arquitetura TCP/IP. Apresentado por: Ricardo Quintão

Arquitetura TCP/IP. Apresentado por: Ricardo Quintão Arquitetura TCP/IP Apresentado por: Ricardo Quintão Roteiro Conexões Inter-redes Serviço Universal Rede Virtual (inter-rede ou internet) Protocolos para ligação inter-redes (TCP/IP) Divisão em camadas

Leia mais

Árvores Parte 1. Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos

Árvores Parte 1. Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Árvores Parte 1 Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Árvores uma introdução As listas apresentadas na aula anterior formam um conjunto de TADs extremamente importante

Leia mais

Apostila de Arquitetura dos Computadores

Apostila de Arquitetura dos Computadores Apostila de Arquitetura dos Computadores Versão Preliminar Setembro de 2005 1 1.1 INTRODUÇÃO: Capítulo 1 Evolução Histórica dos Computadores 1.1.1 Conceituação: Mário A. Monteiro (Introdução à Organização

Leia mais

AULA 11 Experimentos Multinomiais e Tabelas de Contingência

AULA 11 Experimentos Multinomiais e Tabelas de Contingência 1 AULA 11 Experimentos Multinomiais e Tabelas de Contingência Ernesto F. L. Amaral 24 de setembro de 2012 Faculdade de Filosofia e Ciências Humanas (FAFICH) Universidade Federal de Minas Gerais (UFMG)

Leia mais

Figura 1 - Somador para dois números de 4 bits com extensores lógicos (EL) e Aritméticos(EA).

Figura 1 - Somador para dois números de 4 bits com extensores lógicos (EL) e Aritméticos(EA). Projeto de uma Unidade Lógico-Aritmética (ULA) Uma unidade lógico-aritmética (ULA) é responsável pelas operações lógicas e aritméticas básicas num processador. As operações aritméticas tipicamente realizadas

Leia mais

FRAÇÃO Definição e Operações

FRAÇÃO Definição e Operações FRAÇÃO Definição e Operações DEFINIÇÃO: Fração é uma forma de se representar uma quantidade a partir de um valor, que é dividido por um determinado número de partes iguais. Como é que você representaria

Leia mais

Módulos Combinatórios

Módulos Combinatórios Arquitectura de Computadores I Engenharia Informática (11537) Tecnologias e Sistemas de Informação (6616) Módulos Combinatórios Nuno Pombo / Miguel Neto Arquitectura Computadores I 2014/2015 1 Somadores

Leia mais

OBSERVAÇÕES: EXERCÍCIOS

OBSERVAÇÕES: EXERCÍCIOS OBSERVAÇÕES: 1. Esta lista de exercícios poderá ser resolvida individualmente ou em grupos de 2 pessoas. 2. A lista possui 25 exercícios, destes você deve responder os 5 primeiros exercícios e os outros

Leia mais

CAPÍTULO 2 SISTEMAS DE NUMERAÇÃO E CÓDIGOS

CAPÍTULO 2 SISTEMAS DE NUMERAÇÃO E CÓDIGOS CAPÍTULO 2 SISTEMAS DE NUMERAÇÃO E CÓDIGOS Código BCD; Comparação entre BCD e Binário; Circuitos Digitais para BCD; Código Gray; Código ASCII; Detecção de erros pelo método de Paridade O que é um Código?

Leia mais

Representando Instruções no Computador

Representando Instruções no Computador Representando Instruções no Computador Humanos aprenderam a pensar na base 10 Números podem ser representados em qualquer base Números mantidos no hardware como série de sinais eletrônicos altos e baixos

Leia mais

Detecção de erros de comunicação de dados CRC

Detecção de erros de comunicação de dados CRC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO Detecção de erros de comunicação de dados CRC Rui Barbosa 12/04/2011 Í NDI CE 1. Introdução... 4 2. Cyclic Redundancy Check... 5 2.1. Fundamentos Teóricos...

Leia mais

Um pouco da História dos Logaritmos

Um pouco da História dos Logaritmos Um pouco da História dos Logaritmos Os logaritmos, como instrumento de cálculo, surgiram para realizar simplificações, uma vez que transformam multiplicações e divisões nas operações mais simples de soma

Leia mais

Estruturas de Repetição

Estruturas de Repetição Estruturas de Repetição Lista de Exercícios - 04 Algoritmos e Linguagens de Programação Professor: Edwar Saliba Júnior Estruturas de Repetição O que são e para que servem? São comandos que são utilizados

Leia mais

Arquitetura FPU: Implementação no MIPS32

Arquitetura FPU: Implementação no MIPS32 Universidade Federal de Santa Catarina CTC - Centro Tecnológico Ciências da Computação INE5309 - Linguagem Assembly Arquitetura FPU: Implementação no MIPS32 Alunos: Guilherme Fernandes Raphanelli Diogo

Leia mais

Arquitetura de Computadores - Operação da Unidade de Controle. por Helcio Wagner da Silva

Arquitetura de Computadores - Operação da Unidade de Controle. por Helcio Wagner da Silva Arquitetura de Computadores - Operação da Unidade de Controle por Helcio Wagner da Silva Microoperações Execução de programa... Ciclo de instrução Ciclo de instrução Ciclo de instrução Busca Indireto Execução

Leia mais

Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO Linguagem de Montagem Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO 1 Introdução Independente da linguagem de programação utilizada, todo programa

Leia mais

Prática. Exercícios didáticos ( I)

Prática. Exercícios didáticos ( I) 1 Prática Exercício para início de conversa Localize na reta numérica abaixo os pontos P correspondentes aos segmentos de reta OP cujas medidas são os números reais representados por: Exercícios didáticos

Leia mais

Sistemas Digitais INE 5406

Sistemas Digitais INE 5406 Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Sistemas Digitais INE 5406 Aula 10-P Refinamento das especificações

Leia mais

Seqüências. George Darmiton da Cunha Cavalcanti CIn - UFPE

Seqüências. George Darmiton da Cunha Cavalcanti CIn - UFPE Seqüências George Darmiton da Cunha Cavalcanti CIn - UFPE Introdução Uma seqüência é uma estrutura discreta usada para representar listas ordenadas. Definição 1 Uma seqüência é uma função de um subconjunto

Leia mais

1.2. Grandezas Fundamentais e Sistemas de Unidades

1.2. Grandezas Fundamentais e Sistemas de Unidades CAPÍTULO 1 Grandezas, Unidades e Dimensões 1.1. Medidas Uma grandeza física é uma propriedade de um corpo, ou particularidade de um fenómeno, susceptível de ser medida, i.e. à qual se pode atribuir um

Leia mais

Gerência de Memória. Algoritmos de Substituição de Páginas

Gerência de Memória. Algoritmos de Substituição de Páginas Gerência de Memória Algoritmos de Substituição de Páginas Introdução Quando ocorre um Page Fault, o S.O. deve escolher que página remover para abrir espaço em memória. Se a página foi alterada (bit Modified

Leia mais

EXERCÍCIOS PREPARATÓRIOS PARA AS DISCIPLINAS INTRODUTÓRIAS DA MATEMÁTICA

EXERCÍCIOS PREPARATÓRIOS PARA AS DISCIPLINAS INTRODUTÓRIAS DA MATEMÁTICA UNIVERSIDADE FEDERAL DE CAMPINA GRANDE CENTRO DE CIÊNCIAS E TECNOLOGIA UNIDADE ACADÊMICA DE MATEMÁTICA PROGRAMA DE EDUCAÇÃO TUTORIAL TUTOR: Prof. Dr. Daniel Cordeiro de Morais Filho BOLSISTA: Tiago Alves

Leia mais

Circuitos Lógicos Aula 3

Circuitos Lógicos Aula 3 Circuitos Lógicos Aula 3 Aula passada Apresentação Logística Sistemas digitais Aula de hoje Sistemas analógicos e digitais Representação binária Sinais digitais Circuito Representação Numérica Como medir

Leia mais

7. Funções de Lógica Combinacional. 7. Funções de Lógica Combinacional 1. Somadores Básicos. Objetivos. Objetivos. Circuitos Digitais 03/11/2014

7. Funções de Lógica Combinacional. 7. Funções de Lógica Combinacional 1. Somadores Básicos. Objetivos. Objetivos. Circuitos Digitais 03/11/2014 Objetivos 7. Funções de Lógica Combinacional Fazer distinção entre meio-somadores e somadores-completos Usar somadores-completos para implementar somadores binários em paralelo Explicar as diferenças entre

Leia mais

Equipe de Matemática MATEMÁTICA

Equipe de Matemática MATEMÁTICA Aluno (a): Série: 3ª Turma: TUTORIAL 6B Ensino Médio Equipe de Matemática Data: MATEMÁTICA Aritmética Sistema de Numeração Decimal Nosso sistema de numeração utiliza dez símbolos para representar todos

Leia mais

O SOROBAN COMO INSTRUMENTO PARA O DESENVOLVIMENTO DAS OPERAÇÕES MATEMÁTICAS

O SOROBAN COMO INSTRUMENTO PARA O DESENVOLVIMENTO DAS OPERAÇÕES MATEMÁTICAS O SOROBAN COMO INSTRUMENTO PARA O DESENVOLVIMENTO DAS OPERAÇÕES MATEMÁTICAS Resumo Alexandre Gonçalves de Lima¹ Amauri Soares da Silva Filho² Este trabalho aborda características do Soroban, e suas funções,

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Universidade Federal de Santa Catarina Centro Tecnológico Curso de Pós-Graduação em Ciência da Computação Aula 2 Arquitetura do Processador MIPS: características gerais, registradores, formatos de instrução,

Leia mais

OPERAÇÕES FUNDAMENTAIS

OPERAÇÕES FUNDAMENTAIS OPERAÇÕES FUNDAMENTAIS CÁLCULO DA ADIÇÃO E SUBTRAÇÃO: Operação aritmética, que consiste em adicionar ou retirar um número. a) 2254 + 1258 = 3512 1 1 2 2 5 4 3 5 1 2 Para o cálculo da adição, ordenamos

Leia mais

Arquitetura de Computadores EL66C 1a. Prova - Gabarito 26/04/10

Arquitetura de Computadores EL66C 1a. Prova - Gabarito 26/04/10 1. Questão [2,0] Com respeito a operação em modo protegido, da arquitetura IA-32, pede-se: a) [1,0] Qual a finalidade do campo word count' em um descritor tipo call gate? Forneça um exemplo de sua utilização.

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Câmpus Ponta Grossa. Coordenação do Curso Superior de Tecnologia em. Automação Industrial

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Câmpus Ponta Grossa. Coordenação do Curso Superior de Tecnologia em. Automação Industrial UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Coordenação do Curso Superior de Tecnologia em Automação Industrial Jhonathan Junio de Souza Tipos de códigos Binários Trabalho apresentado

Leia mais

Metodologias de Programação

Metodologias de Programação Metodologias de Programação Bloco 1 José Paulo 1 Formador José António Paulo E-mail: questoes@netcabo.pt Telemóvel: 96 347 80 25 Objectivos Iniciar o desenvolvimento de raciocínios algorítmicos Linguagem

Leia mais

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Aritmética Computacional - Inteiros - Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário A unidade lógico-aritmética Representação de números inteiros

Leia mais

Professor: André Rabelo Curso: Engenharia da Computação Disciplina: Lógica Digital Período: 3º Data Entrega: 21/03/2012 Valor: 15 pts Objetivos:

Professor: André Rabelo Curso: Engenharia da Computação Disciplina: Lógica Digital Período: 3º Data Entrega: 21/03/2012 Valor: 15 pts Objetivos: Professor: André Rabelo Curso: Engenharia da Computação Disciplina: Lógica Digital Período: 3º Data Entrega: 21/03/2012 Valor: 15 pts Objetivos: Pesquisar e aprofundar os conhecimentos em Lógica Digital

Leia mais

Objetivos. Arquitetura x86. Evolução dos Microprocessadores com arquitetura x86. Universidade São Judas Tadeu. Introdução à Computação

Objetivos. Arquitetura x86. Evolução dos Microprocessadores com arquitetura x86. Universidade São Judas Tadeu. Introdução à Computação Universidade São Judas Tadeu Prof. André Luiz Ribeiro Prof. Jorge Luis Pirolla Introdução à Computação Microprocessadores e Arquitetura (2) - FEDELI, Ricardo D.; POLLONI, Enrico G.; PERES, Fernando E.

Leia mais

Planilha Eletrônica - Microsoft Excel -

Planilha Eletrônica - Microsoft Excel - Planilha Eletrônica - Microsoft Excel - Aula do dia 20 de junho de 2012 Profª. Me. Valéria Espíndola Lessa valeria-lessa@uergs.edu.br Sobre Planilhas Eletrônicas São usadas para: Trabalhar com lista de

Leia mais