Em cima da hora mas pra alguêm talvez seja útil:
Erros e códigos de detecção:Detecção de erros por paridade:Sabendo a posição do bit de erro pro caso de paridade par usa-se a regra:
Deve haver um número par de 1's logo se há um numero par de 1's o bit de paridade é 0Por paridade ímpar usa-se a regra:
Deve haver um número ímpar de 1's logo se há um numero ímpar de 1's o bit de paridade é 0EXEMPLO:
1001 Paridade Par 0,Paridade Impar 1
1111 Paridade Par 0,Paridade Impar 1
1011 Paridade Par 1,Paridade Impar 0
1010111 Paridade Par 1,Paridade Impar o
Se o bit de paridade tiver no começo(Vermelho) as mensagens acima ficariam:
1001 Par :
01001 Ímpar:
110011111 Par:
01111 Ímpar: 111111011 Par:
11011 Ímpar: 010111010111 Par:
11010111 Ímpar: 01010111
Detecção e Correção Por henning:
O código de henning usa bits de paridades em locais específicos da mensagem:
Pra saber quantos bits são necessários deve-se seguir a equação 2^
p Maior Igual d+p+1.
Sendo assim o menor numero que satisfazer a equação é o numero de bits de paridade necessários:
Por exemplo uma mensagem de 4 bits precisa de 3 bits de paridade pois :
2^3 Maior igual que 4+3+1
8 Maior igual 8
Você deve colocar os bits de paridade em potências de 2 na posição e o numero binário da posição indica com quais bits ele está fazendo paridade> por exemplo a mensagem de 4 bits: 1010
| Posição | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| Posição Binária | 01 | 10 | 11 | 100 | 101 | 110 | 111 |
| Tipo do Bit | P | P | D | P | D | D | D |
Onde P é paridade e D é digito normal :
O numero 1 na posição binária indica quais posições ele monitora:
o da posição 1 monitora todos que tenham 1 no começo ou seja 3,5 e 7.
O da posição 2 todos que tenham 2 na segunda posição ou seja 3,6 e 7.
E o da posião 4 todos que tenham 1 no final ou seja 5,6,7
Logo nosso código de paridade om paridade par ficaria
101
1010 em que os bits de paridade estão em vermelho.
Sendo assim se houver um erro é possivel traçar em qual posição houve o erro
Para traçar o erro simplesmente pegue os bits q ele monitora e faça a paridade
Vamos introduzir um erro na posição 6 trocando o 1 por 0
P1
| 1 | X | 1 | X | 0 | X | 0 |
| P2 | X | 0 | 1 | x | x | 0 | 0 |
| P3 | X | X | X | 1 | 0 | 0 | 0 |
Por paridade a linha P1 daria 0 a linha P2 daria 1 e a linha P3 daria 1 .
Pegue essa sequencia invertida. Será
110 que nos dará a posição (que é 6).
Algebra Booleana Operadores Booleanos:E se for verdadeiro E verdadeiro então retorna verdadeiro.
OU se for qualquer um dos valores verdadeiros então retorna verdadeiro
Não Se for verdadeiro retorna falso, se for falso retorna verdadeiro
XOR: Se for APENAS 1 verdadeiro e o OUTRO falso retorna verdadeiro.
Simplificação de expressões:
- Agrupe por grupos de E.
- Simplifique as que tiverem variáveis iguais:
- Remova os pontos que não contribuem;
Por exemplo na seguinte notação com o ! indicando um não.
A.!B+!B.A+C.D.E+!C.D.E+E.!C.D
enxergando tudo que tem . como bloco e os + como separadores dos blocos.
Peguemos lugares em que tenham variaveis iguais:
Então teriamos :
(A.!B+!B.A)+(C.D.E+!C.D.E+E.!C.D)
No primeiro bloco A e Não B ou Não B e A é a mesma coisa. Logo ficamos com
(A.!B)+(C.D.E+!C.D.E+E.!C.D)
No segundo bloco !C.D.E OU E.!C.D que vem a ser a mesma coisa então cortamos esse bloco
e ficamos apenas com
(A!B)+(C.D.E+!C.D.E)
Nessa expressão o C não contribui em nada logo C.D.E OU !C.D.E é igual a D.E
Ae ficamos com (A!B)+(D.E)
Conversões de bases numéricasDecimal para binário:- Divide por 2;
- Pega o resto;
- Usa-se o resultado da divisão ;
- e sai na ordem INVERSA ou seja o ÚLTIMO numero achado será o primeiro a colocar.
Por exemplo: 35
35/2= 17 e resto 1
17/2= 8 e resto 1
8/2= 4 e resto 0
4/2= 2 e resto 0
2/2 =1 e resto 0
1/2= resto 1
Logo 35 é 100011
Decimal pra hexadecimalSiga os passos a cima dividindo por 16 ao invés de 2.
Binário para hexadecimalCada Hexa dá um grupo de 4 bits, converta-os individualmente.
Por exemplo:
FAB
F=15, A=10 e B=11 Logo FAB= 1111 1010 1011.
Decimais não inteiros para binário:
- Multiplica por 2.
- Pega o numéro após a virgula(que é 0 ou 1)
- Usa-se a parcela apos a virgula no próximo cálculo.
- E sai na ordem DIRETA ou seja o primeiro número é o primeiro após a virgula e assim por diante;
Binário não inteiro para decimal:- Pega o número após a virgula e faz vezes 2^base negativa
Por exemplo 0,1011 é 2^-1+2^-3+2^-4 .
Que é 1/2+1/8+1/16