• Nenhum resultado encontrado

Big Endian é uma ordenação usada em sistemas do tipo Unix (arquiteturas SPARC, IBM Mainframe).

N/A
N/A
Protected

Academic year: 2021

Share "Big Endian é uma ordenação usada em sistemas do tipo Unix (arquiteturas SPARC, IBM Mainframe)."

Copied!
6
0
0

Texto

(1)

Grupo 12. Organização de sistemas computacionais – Memória primária: endereços; ordenação dos bytes; códigos de correção de erros (bit de paridade e código de Hamming).

Alisson Dias - CC5P30 - C68DAE8 Diego Vinicius - CC5Q30 -C683973 Guilherme Euzébio - CC5P30 – C676HJ0 Leonardo da Cruz - CC5P30 - C645CI2 Leonardo Hardman - CC4P30 - C715590

Memória primária: endereços

Um endereço de memória é um identificador único, que fica na memória e no qual um processador ou algum outro dispositivo pode armazenar pedaços de dados. Em computadores modernos com endereçamento por byte, cada endereço representa um byte diferente de armazenamento(distintos). Dados maiores que um byte podem residir em múltiplos bytes, ocupando uma sequência de bytes consecutivos. Alguns microprocessadores foram desenvolvidos para trabalhar com endereçamento por uma ferramenta de edição de texto, podendo tornar a unidade de armazenamento maior que um byte.

Tanto a memória virtual quanto a memória física utilizam endereçamentos de memória. Para facilitar a cópia de memória virtual em memória real, os sistemas operacionais dividem a memória virtual em páginas, cada uma contendo um número fixo de endereços. Cada página é armazenada em disco até que seja necessária, sendo então copiada pelo sistema operacional do disco para a memória, transformando o endereço virtual em endereço real.

Memória primária: ordenação dos bytes

Existem duas formas de organização dos bytes em uma palavra de memória, são elas: Big Endian e Little Endian.

Na ordenação Big Endian os bytes são numerados da esquerda para direita, 0,1,2,...,n-1. Big Endian significa que os bytes de maior ordem de um número serão armazenados nos menores endereços, e os de menor ordem nos maiores endereços. (o “big end” vem primeiro.). Por exemplo, um LongInt de 4 bytes:

Byte0 Byte1 Byte2 Byte3

será armazenado na memória da seguinte maneira: Base Address+0 Byte3

Base Address+1 Byte2 Base Address+2 Byte1 Base Address+3 Byte0

Big Endian é uma ordenação usada em sistemas do tipo Unix (arquiteturas SPARC, IBM Mainframe).

Na ordenação Little Endian os bytes são numerados da direita para esquerda n-1, ...,2,1,0. Little Endian significa que os bytes de menor ordem do número serão armazenados na memória nos menores endereçoes, e os de maior ordem nos maiores endereços (o “little end” vem primeiro.) Por exemplo, um LongInt de 4 bytes:

(2)

será armazenado na memória da seguinte maneira: Base Address+0 Byte0

Base Address+1 Byte1 Base Address+2 Byte2 Base Address+3 Byte3

Little Endian é usado por processadores Intel (usados em PC’s).

A falta de padronização na ordenação dos bytes trazem problemas, como: interpretação de instruções e dados em redes, softwares que rodam em várias plataformas devem tratar essas diferenças (swapp de memoria), uso de plataformas de palavras de diferentes tamanhos.

Código de correção de erros Detecção e correção de erros

Os dados armazenados na memória dos computadores podem ocasionalmente serem alterados (modificados), como a oscilações

de tensão de alimentação, etc.

Para a prevenção desses erros, algumas memórias armazenam informações extras, usando códigos e mecanismos que permitam

a detecção e/ou correção de erros.

Para isso foram criados os códigos de detecção e correção de erros. O método da paridade para a detecção e o método de Hamming para a detecção e correção – o segundo é uma melhora do primeiro. São algoritmos simples e permitem corrigir apenas um bit de

cada série de dados. Paridade

O método da paridade consiste na adição de um bit verificador. Para paridade ímpar, a quantidade de bits “1” do código deve ser ímpar e para paridade par a quantidade

deve ser par. É por meio da adição do bit de paridade que se faz o ajuste da quantidade,

para atender ao requisito, de ter quantidade de “1” par, ou ímpar, dependendo da paridade adotada no sistema.

Por exemplo, para o código ‘11001’, no sistema de paridade par teria o bit verificador “1”, para que o código

ficasse ‘111001’, e tendo, assim, portanto, uma quantidade par de “1”. O código de correção de erro de Hamming

Foi criado em 1950 por Richard Hamming (1915-1998). Sua criação foi motivada pela imensa quantidade de erros

de leitura dos cartões perfurados, nos computadores primitivos.

O código de Hamming prevê a correção de um único erro e se baseia no método da paridade, entretanto tem a vantagem de detectar a localização do erro.

Podem – e, em geral é o que ocorre – ser necessários mais de um bit de paridade para a verificação dos erros.

O número de bits de paridade é dado pela seguinte fórmula: 2p ≥ d + p + 1

onde d é o número de bits do código e p é o número de bits de paridade necessários.

(3)

posições 1,2,4,8 etc.

Em um código de 8 bits, por exemplo, a posição 1 representa o bit mais significativo e a posição 8 o menos significativo.

Bit de paridade

Refere se ao numero de bits '1' de um dertermidado numero binario. Para assinalar a paridade, é adicionado, no final ou no início de uma seqüência binária, um dígito binário de paridade. A paridade é vulgarmente utilizada para detectar erros nas transmissões, já que o seu cálculo é extremamente simples. Por exemplo, se for anexado um bit de paridade extra a cada byte transmitido, um erro pode ser detectado se a paridade do byte não coincidir com o bit de paridade, Para evitar erros na transmissão é adicionado um bit de paridade, um bit a mais que segue duas regras simples:

Se o número de bits "1" da mensagem for impar adiciona-se um "1" no final da mensagem Se o número de bits "1" da mensagem for par é adicionado um "0" no final da mensagem

Assim se existir um número impar de bits "1" na mensagem, e o bit de paridade for for "0" o computador saberá que ocorreu um erro na transmissão, pois se existir um número impar de bits "1", pela regra deveria ser enviado o bit de paridade "1".

Ex: Você envia uma mensagem que em bits é: 1001100. O número de bits "1" é impar então é adicionado o bit de paridade "1", e a mensagem ficará 10011001

Ex: Você envia uma mensagem que em bits é: 100100. O número de bits "1" é par então é adicionado o bit de paridade "0", e a mensagem ficará 10011000. Então, após constatado o erro o computador poderá fazer a correção de erros, que uma das que existem, consiste em o receptor(quem recebeu a mensagem) enviar ao emissor(quem enviou a mensagem) um aviso de recepção (ACK) dizendo que não houveram erros, se depois de um determinado tempo o emissor não receber a mensagem, significa que havia erros, então o emissor vai mandar a mensagem (10011000) novamente até que o receptor envie o ACK de volta ou até exceder um número limite de envios da mensagem.

Código de Hamming

Foi desenvolvido por Richard Hamming, é utilizado no processamento de sinal e nas telecomunicações. A sua utilização permite a transferência e armazenamento de dados de forma segura e eficiente.

Nas telecomunicações os códigos de Hamming utilizados são generalizações do Hamming (7,4). Estes podem detectar erros até dois bits e corrigir até um bit. Em contraste, o código de paridade não pode corrigir erros, e pode detectar apenas um número impar de erros. Devido à sua simplicidade, os códigos Hamming são amplamente utilizados na memória dos computadores . Neste contexto, é frequente utilizar um código de Hamming estendido com um bit de paridade extra.

Se incluirmos na mensagem bits adicionais para correção de erros, e se esses bits forem organizados de forma que bits incorretos produzam erros diferentes, então podemos identificar os bits com erro. Numa mensagem de sete bits, há sete erros de um bit possíveis, assim, com três bits de controlo seria eventualmente possível especificar, não apenas que ocorreu um erro, mas também que bit causou o erro.

Os códigos binários de Hamming são baseados em códigos de paridade sobre um bloco de dados de comprimento fixo. O bloco de dados, também denominado de "palavra" contém n bits, este parâmetro pode assumir apenas valores inteiros específicos, que resultam da especificação do código. As combinações de bits do bloco de dados pode ser seleccionado como desejado, o que

(4)

significa que todas as combinações de bits arbitrárias são permitidas. O código de paridade do código de Hamming é obtido a partir da palavra de dados, inserindo pontos de controle, denominados bits de paridade. Em cada palavra de dados, de comprimento n, são inseridos um número fixo k, de pontos de controlo, ficando a palavra de código com um comprimento N=n+k . Para a palavra de código, apenas certas combinações de bits são possíveis, uma vez que os pontos de controlo têm informação derivada da palavra de dados. Isto permite a detecção e correcção dos erros.

A relação entre N e k é descrita pela seguinte equação: N=2k -1

Se por exemplo, tivermos três bits de controlo (os bits de paridade) então o comprimento da mensagem N será necessariamente 7. O comprimento da palavra de dados é obtido de n = 7-3 = 4n = 7-3 = 4 bits ou de uma forma mais geral:

n=2k - k - 1

A tabela seguinte lista todos os códigos Hamming possíveis de vários comprimentos de mensagem até um máximo de 255 bits:

Combinações de parâmetros do códigos de Hamming n k N = n + k

Bits de dados Bits de paridade Total da mensagem

1 2 3 4 3 7 11 4 15 26 5 31 57 6 63 120 7 127 247 8 255

Para a classificação dos diferentes códigos de Hamming, geralmente usa-se a seguinte notação: Hamming (N, n). O primeiro número indica o número de bits da mensagem (N), o segundo indica o número de bits de dados (n) por mensagem. Em exemplos de demonstração, por questões de simplicidade, muitas vezes é usado o código Hamming (7,4). Para o trabalho real este código tem uma taxa de informação pequena, ou seja, a proporção de bits de controlo de bits de dados é muito desfavorável, tendo em atenção que podemos usar o código de Hamming (63,57).

Por vezes a classificação do código tem a distância em terceiro lugar: Hamming (63,57,3). Mas como a distância é, normalmente, fixa o código é apenas descrito como: Hamming (63,57).

Questões:

Sobre memória e endereços de memória, analise e marque a alternativa correta.

I. Há poucos anos, quase todos os fabricantes de computadores tinham suas células padronizadas em 32 bits.

II. A unidade básica de memória é o digito binário, denominado bit.

III. Sem uma memória que possa ser possivel para os processadores ler e gravar ou escrever informações, não haveria computadores digitais com programas armazenados.

(5)

IV. Memórias são constituídas por uma quantidade de células (ou endereços). Cada célula tem um número, denominando seu endereço, pelo qual os programas se referem a ela.

a) Apenas I, II e III. b) Apenas I, III e IV. c) Apenas II, III e IV. d) Todas estão corretas. Resposta: C

Questão sobre ordenação de bytes.

A respeito da ordenação de bytes na memória principal (Big Endian, Little Endian), julgue os itens e em seguida assinale a alternativa correta:

I) Na ordenação Big Endian os bytes são ordenados de forma aleatória.

II) Na ordenação Little Endian os bytes são numerados da direita para esquerda, n-1,...,2,1,0. III) Na ordenação Big Endian os bytes são numerados da direita para esquerda, n-1,...,2,1,0. IV) Na ordenação Little Endian os bytes são numerados da esquerda para direita 0,1,2,...,n-1. V) Na ordenação Big Endian os bytes são numerados da esquerda para direita 0,1,2,...,n-1. a) I está correta.

b) II e V estão corretos. c) III e IV estão corretos d) Todos estão incorretos. Resposta correta: B

Questão sobre códigos de correção de erros (bit de paridade e código de Hamming).

Sobre os códigos de detecção e correção de erros na memória principal (Método Hamming e Método de Paridade), assinale

a alternativa correta abaixo.

I)Existem dois tipos de código de paridade: a paridade par e a paridade ímpar.

II)O código de Hamming prevê a correção de um único erro e se baseia no método da paridade, entretanto não consegue detectar

a localização do erro.

III)Método de paridade é basicamente no acto do transmissor adicionar um bit de redundância após um determinado número de

bits.

IV)código de hamming é utilizada para descobrir se existe algum erro de leitura de

uma palavra armazenada na memória, lembrando que o código de hamming pode corrigir apenas um ÚNICO

erro, ou seja, apenas um único bit errado. a)I e II estão corretos.

b)II, III e IV estão corretos. c)I, III e IV estão corretos.

(6)

d)Todos estão corretos. Resposta correta: C

Questão sobre bit de paridade.

Em relação aos bit de paridade, assinale a alternativa correta:

a) Verificação de paridade é o método menos ultilizado para decção de erros, pois não oferece confiança na mensagem passado ao receptor

b) Para alcançar a paridade par , o remetente fixa o bit de paridade para 0 ou 1 de forma que faça o numero total de bits (inclusive o bit de paridade) um numero par. Deste modo, quando estiver usando paridade par, o bit de paridade para 0100101 é 1 poruqe o caractere contém um numero par de bits 1.

c) O bit de paridade na maioria das vezes pode ser totalmente eficaz tendo em vista que na deteção de erros e quase 100% de sucesso em sua ultilização.

d) Em caratere 0100101 o numero de bits 1 é impar , então coloca se + 1 bit de paridade, ficando 0100101 0, o numero de bits 1 é impar.

RESPOSTA B

Com relação aos conceitos de Código de Hamming, julgue as alternativas:

1.É utilizado no processamento de sinal e nas telecomunicações porém a sua utilização permite a transferência e armazenamento de dados de forma menos segura e menos eficiente.

2.Devido à sua simplicidade os códigos Hamming são amplamente utilizados na memória dos computadores.

3.Os códigos binários de Hamming são baseados em códigos de paridade desde que não esteja sobre um bloco de dados de comprimento fixo.

4.Para a classificação dos diferentes códigos de Hamming, geralmente usa-se a seguinte notação: Hamming (N, n). O primeiro número indica o número de bits da mensagem (N), o

segundo indica o número de bits de dados (n) por mensagem. Estão corretas as afirmativas:

a)1 e 3 b)1,2 e 3 c)2 e 4

d)Todas estão corretas Resposta : C

Referências

Documentos relacionados

Ninguém quer essa vida assim não Zambi.. Eu não quero as crianças

Sistemas de Representação Numérica e Operações; Representação de Números Binários em ponto fixo e em ponto flutuante; Códigos para dados não numéricos; Introdução a Detecção

Rua Padre Manoel da Nóbrega, Dom Hélder Câmara, João Pinheiro, Tereza Cavalcante, Bernardino de Campos, Dom Hélder Câmara. e Rua Padre Manoel

Ainda segundo Gil (2002), como a revisão bibliográfica esclarece os pressupostos teóricos que dão fundamentação à pesquisa e às contribuições oferecidas por

O estudo múltiplo de casos foi aplicado para identificar as semelhanças e dissemelhanças na forma como as empresas relacionam seus modelos de negócios e suas

Se o titular transmitir ordem de débito que ultrapasse o limite de facilidade de descoberto contratada ou, no caso desta não existir, o montante do saldo disponível na conta, a

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

Então, pode-se perceber que as empresas assumiram responsabilidade em relação ao meio ambiente, deixando de ser apenas uma postura diante das imposições para se