Contas Diretamente Em Hexadecimal
-
Upload
michelle-ribeiro -
Category
Documents
-
view
224 -
download
10
description
Transcript of Contas Diretamente Em Hexadecimal
Osistema hexadecimal umsistema de numeraoposicional que representa os nmerosem base 16, portanto empregando 16 smbolos.Est vinculado ainformtica, pois oscomputadorescostumam utilizar obyteou octeto como unidade bsica damemria; e, devido a um byte representarvalores possveis, e isto poder representar-se como, o que, segundo oteorema geral da numerao posicional, equivale ao nmero em base 16, dois dgitos hexadecimais correspondem exactamente permitem representar a mesma linha de inteiros a um byte.Ele muito utilizado para representar nmeros binrios de uma forma mais compacta, pois muito fcil converter binrios pra hexadecimal e vice-versa. Dessa forma, esse sistema bastante utilizado em aplicaes de computadores e microprocessadores (programao, impresso e displays).Devido aosistema decimalgeralmente usado para a numerao apenas dispor de dez smbolos, deve-se incluir seisletrasadicionais para completar o sistema. O conjunto de smbolos fica, portanto, assim:
Contagem em HexadecimalAssim como nos outros sistemas numricos, aps o uso de todos os dgitos hexadecimais, se inicia a repetio com a adio de outro dgito: (...) 8, 9, A(10), B(11), C(12), D(13), E(14), F(15), 20, 21, 22... Pode parecer pouca a diferena para os nmeros decimais, porem esses 6 dgitos a mais fazem muita diferena. Por exemplo, com dois dgitos, em decimal, possvel fazer 100 combinaes diferentes. Em hexadecimal, esse nmero sobe para 256.
Converso de Binrio para HexadecimalUm dgito em hexadecimal pode representar um nmero binrio de 4 dgitos, dessa forma, para transformar um binrio em hexadecimal, separamos o binrio em grupos de 4 bits, comeando pela direita.Exemplo:Binrio: 1101000101100011.1 - separar em grupos de quatro bits:1101 0001 0110 00112 - identificar os nmeros hexadecimais correspondentes:1101 = D0001 = 10110 = 60011 = 3Hexadecimal: D163.Converso de Hexadecimal para Binrio o inverso do processo anterior. Cada digito ser transformado em um nmero binrio de 4 bits.Exemplo:Hexadecimal: F2A7
F = 11112 = 0010A = 10107 = 0111Binrio: 1111001010100111.Converso de Decimal para HexadecimalVer-se- um exemplo numrico para obter o valor de uma representao hexadecimal: 3E0,A (16) = 316 + E161+ 0160+ A16-1= 3256 + 1416 + 01 + 100,0625 = 992,625Exemplos para obter um nmero hexadecimal de um nmero decimal:Divide-se o nmero decimal por 16. 85|_16 - 80 5,3125 Pode-se perceber que contm vrgula nesta diviso,porm, utilizaremos -- apenas o quociente (5) e resto da diviso antes da vrgula (5), 050 No esquecendo de colocar o quociente primeiro e depois o resto. - 48 Decimal 85 = 55(hex) -- 020 79|_16 O nmero 79 tambm contm vrgula. Pegamos 4 - 16 - 64 4,9375 e 15 que igual a F. -- -- Decimal 79 = 4F(hex) 040 15 - 32 . -- . 080 - 80 -- 0Adio Hexadecimal possvel realizar adies diretamente com nmeros hexadecimais. Basta lembrar que os dgitos 0-9 equivalem aos mesmos em decimal, e que os dgitos a-f equivalem aos decimais 10-15. Assim como na soma de decimais, devemos comear pela direita.1. Realize a soma por colunas, e pense nos valores decimais dos dgitos2. Se a soma dos dgitos for menor que 15 (em decimal), registre o valor (em hexadecimal)3. Se a soma dos dgitos for maior que 15, subtraia 16 do resultado, registre o numero hexadecimal e gere um carry na prxima colunaExemplo:
com carry de 1. Ento:Tabela de converso entre hexadecimal, decimal, octal e binrio
0hex=0dec=0oct0000
1hex=1dec=1oct0001
2hex=2dec=2oct0010
3hex=3dec=3oct0011
4hex=4dec=4oct0100
5hex=5dec=5oct0101
6hex=6dec=6oct0110
7hex=7dec=7oct0111
8hex=8dec=10oct1000
9hex=9dec=11oct1001
Ahex=10dec=12oct1010
Bhex=11dec=13oct1011
Chex=12dec=14oct1100
Dhex=13dec=15oct1101
Ehex=14dec=16oct1110
Fhex=15dec=17oct1111
FracesAs fraces, no seu desenvolvimento hexadecimal, no so exactas a menos que o denominador seja potncia de 2. Contudo, os perodos no costumam ser muito complicados.1/2 = 0,81/3 = 0,55...1/4 = 0,41/5 = 0,33...1/6 = 0,2AA...1/7 = 0,249249...1/8 = 0,21/9 = 0,1C1C...1/A = 0,199...1/B = 0,1745D1745D...1/C = 0,155...1/D = 0,13B13B...1/E = 0,1249249...1/F = 0,11...
Tabela de multiplicao
123456789ABCDEF101123456789ABCDEF1022468ACE10121416181A1C1E203369CF1215181B1E2124272A2D30448C1014181C2024282C3034383C4055AF14191E23282D32373C41464B5066C12181E242A30363C42484E545A6077E151C232A31383F464D545B6269708810182028303840485058606870788099121B242D363F48515A636C757E8790AA141E28323C46505A646E78828C96A0BB16212C37424E58636E79848F9AA5B0CC1824303C4854606C7884909CA8B4C0DD1A2734414E5B6875828F9CA9B6C3D0EE1C2A38465462707E8C9AA8B6C4D2E0FF1E2D3C4B5A69788796A5B4C3D2E1F010102030405060708090A0B0C0D0E0F0100
Por exemplo , somar 724 com A3E
724A3E-------
4+E = ?E equivale ao decimal 14 ,4+14 = 18 , ou seja , passou 2 do 16 , logo colocas 2 , " e vai 1"
724A3E------. . 2
2+3+ o 1 que vinha de trs = 6
724A3E-------. 6 2
7+A , como A corresponde ao decimal 10 , 7+10 = 17passou 1 de 16 , logo 1 e vai 1 , que colocas no incio
724A3E------1162
Podes sempre verificar que est certo no final , lembrando que724 = 7.16 + 2.16 + 4 = 1828A3E = 10.16 + 3.16 +14 = 26221162 = 1.16 + 1.16 +6.16 +2 = 4450
1828+2622 = 4450 , certo
Para subtrair , do mesmo modo , vamos tirar a prova real da adio acima , ou seja , 1162 - A3E tem que dar 724
1162-A3E--------
E para 2 ?2 representa 16+2 = 18E so 14 , portanto 14 para 18 = 4 , "e vai 1"
1162-A3E--------. . .4
3 + o 1 que veio de trs = 4 , para 6 , 2
1162-A3E--------. .2 4
A para 1 ?1 so 16+1 = 17Como A 10 , 10 para 17 so 7 , e vai 1Finalmente 1 para 1 nada
1162-A3E--------0724
A multiplicao vai implicar sabermos a tabuada :)
3A8x DE--------
E vezes 8 ( 14.8 ) d 112Quantas vezes h 16 em 112 ?
112 = 16.7 certinhos , ou seja, resto 0 , e vo 7
3A8x DE--------. . .0
E vezes A = 14.10 = 140 + os 7 de trs = 147147 = 16 . 9 + 3portanto 3 e vo 9
3A8x DE--------. . 30
E vezes 3 = 14.3 = 42 + os 9 = 5151 = 16 . 3 + 3
3A8x DE--------3330
Agora D vezes 8 , 13.8 = 104104 = 16 . 6 + 8 , portanto 8 e vo 6 ( no esquecer de chegar a linha frente , ou seja ,este 8 vai para debaixo do 3 e no do 0)
3A8x DE--------3330. . 8
Agora vou acelerar um bocadinho :)))
D vezes A 130 , +6 = 136136 = 16 . 8 + 8 , 8 e vo 8
D vezes 3 , 39 , +8 = 4747 = 16 . 2 +15 , portanto 15 (F) e vo 2 para o incio
3A8x DE--------. 33302F88----------
Agora s falta somar normalmente
0 , 3+8 = 11 (B) , 3+8 = 11 (B) , 3+F = 18 ( 2 e vai 1) , 2+1 , 3
3A8x DE--------. 33302F86----------32BB0
Verificao em decimal :3A8 = 3 . 16 + 10 . 16 +8 = 936DE = 13 . 16 + 14 = 22232BB0 = 3.16 +2.16 +11.16 +11.16 = 207792
936 . 222 = 207792 , correcto
O mais difcil o algoritmo de diviso , mas no sei se tens de saber esse tambm...vou fazer um fcil,para teres uma ideia
142 |_5
em 14 ( 1.16+4 = 20 ) quantas vezes h 5 ?4 , e no sobra nada
142 |_5. .0 . . 4
Baixa-se o 2
142 |_5. 02 . 4
Em 2 no h 5 , logo acrescenta-se um zero ao quociente
142 |_5. 02 . 40
Portanto o quociente 40 , e o resto 2