EDI18701 AULA02: mudanças entre as edições
(11 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
=Conversões de números fracionários= | ==Conversões de números fracionários== | ||
Do mesmo modo que os números inteiros podem ser convertidos de diferentes bases, os números fracionários também podem ser convertidos facilmente. | |||
Como exemplo, vamos representar o número '''10,5 decimal''', aplicando a seguinte regra de formatação: | |||
( | <math>10,5d = 1 x 10^1 + 0 x 10^0 + 5 x 10^{-1}\,</math> | ||
<pre> | |||
10 | |||
0 | |||
+0,5 | |||
---- | |||
10,5 | |||
</pre> | |||
Podemos utilizar a mesma regra para converter '''números binários fracionários''' | |||
para decimal. | |||
Exemplo: '''101,101b''' par decimal = 5,625d | |||
<math>101,101b = 1 x 2^2 + 0 x 2^1 + 1 x 2^0 + 1 x 2^{-1} + 0 x 2^{-2} + 1 x 2^{-3}\,</math> | |||
Resultado: | |||
<pre> | |||
4 | |||
0 | |||
1 | |||
0,5 | |||
0,00 | |||
+0,125 | |||
------ | |||
5,625 | |||
</pre> | |||
Podemos também converter '''números decimais fracionários para binários''' através da regra prática a seguir. | |||
Exemplo: converter 8,375d para binário | |||
;Passo 1: Converter a parte inteira do número para binário: | |||
(desenha no quadro) | |||
Resultado: 8d = 1000b | |||
;Passo 2: Multiplicar a parte fracionária do número por 2, separando a parte inteira e repetindo o processo até que seja ZERO, ou seja: '''8,375d parte fracionária = 0,375d''' | |||
0,375 x 2 = '''0''',750<br> | |||
0,750 x 2 = '''1''',500<br> | |||
0,500 x 2 = '''1''',000<br> | |||
0,000 = ZERO<br> | |||
Resultado: 0,375d = '''0,011'''b | |||
;Passo 3: Juntar a parte inteira e fracionária num único número binário: | |||
Resultado final: 8,375d = '''1000,011b''' | |||
==Notação de números binários positivos e negativos== | |||
Uma forma de representar números binários positivos e negativos é feita através de um bit de sinal, que fica mais a esquerda do número ('''MSB''' – bit mais significativo). | |||
*Se o bit de sinal for '''0''', o número binário é positivo (+). | |||
*Se o bit de sinal for '''1''', o número binário é negativo (-). | |||
;Exemplos: | |||
'''0'''010b = +010b = +2d | |||
'''1'''101b = -101b = -5d | |||
=Operações Aritméticas Binárias= | =Operações Aritméticas Binárias= | ||
( | Da mesma forma que realizamos operações aritméticas com números decimais, podemos realizar operações aritméticas com números binários, em operações de adição, subtração, multiplicação e divisão. | ||
==Adição== | |||
Operações de adição no sistema binário: | |||
<pre> | |||
0 0 1 1 | |||
+ 0 + 1 + 0 + 1 | |||
--- --- --- --- | |||
0 1 1 10 | |||
</pre> | |||
Na adição de números binários, devemos utilizar o bit de transporte ''carry''. | |||
Exemplo: 110b + 111b = 1101b | |||
<pre> | |||
11 (bits de carry) | |||
110 | |||
111 | |||
----- | |||
1101 | |||
</pre> | |||
==Subtração== | |||
Utilizando o método da soma do '''complemento de 2'''. | |||
*Para se fazer o complemento 2 é preciso fazer o complemento de 1. Para isso, troca-se os bits '''0''' por '''1''' e '''1''' por '''0'''. | |||
*Para se fazer o complemento de 2 soma-se 1 ao resultado do complemento de 1. | |||
Exemplo: 1010b - 0111b = 0011b | |||
Passo 1: Encontra-se o complemento de 2 do subtraendo: 0111b = 1001b | |||
Passo 2: Soma-se o minuendo ao complemento de 2 do subtraendo e desconsidera-se o bit de estouro. | |||
Como fica: | |||
<pre> | |||
1010 | |||
-0111 | |||
Complemento de 1 + 1 (0111): | |||
1000 | |||
+ 1 | |||
----- | |||
1001 | |||
Soma: | |||
1010 | |||
+1001 | |||
----- | |||
X0011 | |||
</pre> | |||
Descartando o X o resultado fica: 0011b | |||
==Multiplicação== | |||
Operações de multiplicação no sistema binário: | |||
<pre> | |||
0 0 1 1 | |||
x 0 x 1 x 0 x 1 | |||
--- --- --- --- | |||
0 0 0 1 | |||
</pre> | |||
Exemplo: 11010b x 10b = 110100b | |||
<pre> | |||
11010 | |||
x 10 | |||
----- | |||
00000 | |||
+ 11010 | |||
-------- | |||
110100 | |||
</pre> | |||
==Divisão== | |||
Exemplo: 110100b x 10b = 11010b | |||
<pre> | |||
110100 | 10 | |||
-10 +---- | |||
--- 11010 | |||
010 | |||
-10 | |||
--- | |||
0010 | |||
-10 | |||
-- | |||
000 | |||
</pre> | |||
=Exercícios= | |||
[http://wiki.sj.ifsc.edu.br/images/3/35/EX1_EDI18701.pdf Lista de Exercícios 1 - Sistemas de Numeração] | |||
----- | ----- | ||
{| border="1" cellpadding="5" cellspacing="0" | {| border="1" cellpadding="5" cellspacing="0" | ||
! style="background: # | ! style="background: #ffd700;" | [[EDI18701_AULA01 | << ]] | ||
! style="background: # | ! style="background: #faebd7;" | [[EDI18701 | <> ]] | ||
! style="background: # | ! style="background: #ffd700;" | [[EDI18701_AULA03 | >> ]] | ||
|} | |} |
Edição atual tal como às 18h12min de 30 de novembro de 2015
1 Conversões de números fracionários
Do mesmo modo que os números inteiros podem ser convertidos de diferentes bases, os números fracionários também podem ser convertidos facilmente.
Como exemplo, vamos representar o número 10,5 decimal, aplicando a seguinte regra de formatação:
10 0 +0,5 ---- 10,5
Podemos utilizar a mesma regra para converter números binários fracionários para decimal.
Exemplo: 101,101b par decimal = 5,625d
Resultado:
4 0 1 0,5 0,00 +0,125 ------ 5,625
Podemos também converter números decimais fracionários para binários através da regra prática a seguir.
Exemplo: converter 8,375d para binário
- Passo 1
- Converter a parte inteira do número para binário:
(desenha no quadro)
Resultado: 8d = 1000b
- Passo 2
- Multiplicar a parte fracionária do número por 2, separando a parte inteira e repetindo o processo até que seja ZERO, ou seja: 8,375d parte fracionária = 0,375d
0,375 x 2 = 0,750
0,750 x 2 = 1,500
0,500 x 2 = 1,000
0,000 = ZERO
Resultado: 0,375d = 0,011b
- Passo 3
- Juntar a parte inteira e fracionária num único número binário:
Resultado final: 8,375d = 1000,011b
2 Notação de números binários positivos e negativos
Uma forma de representar números binários positivos e negativos é feita através de um bit de sinal, que fica mais a esquerda do número (MSB – bit mais significativo).
- Se o bit de sinal for 0, o número binário é positivo (+).
- Se o bit de sinal for 1, o número binário é negativo (-).
- Exemplos
0010b = +010b = +2d
1101b = -101b = -5d
3 Operações Aritméticas Binárias
Da mesma forma que realizamos operações aritméticas com números decimais, podemos realizar operações aritméticas com números binários, em operações de adição, subtração, multiplicação e divisão.
3.1 Adição
Operações de adição no sistema binário:
0 0 1 1 + 0 + 1 + 0 + 1 --- --- --- --- 0 1 1 10
Na adição de números binários, devemos utilizar o bit de transporte carry.
Exemplo: 110b + 111b = 1101b
11 (bits de carry) 110 111 ----- 1101
3.2 Subtração
Utilizando o método da soma do complemento de 2.
- Para se fazer o complemento 2 é preciso fazer o complemento de 1. Para isso, troca-se os bits 0 por 1 e 1 por 0.
- Para se fazer o complemento de 2 soma-se 1 ao resultado do complemento de 1.
Exemplo: 1010b - 0111b = 0011b
Passo 1: Encontra-se o complemento de 2 do subtraendo: 0111b = 1001b
Passo 2: Soma-se o minuendo ao complemento de 2 do subtraendo e desconsidera-se o bit de estouro.
Como fica:
1010 -0111 Complemento de 1 + 1 (0111): 1000 + 1 ----- 1001 Soma: 1010 +1001 ----- X0011
Descartando o X o resultado fica: 0011b
3.3 Multiplicação
Operações de multiplicação no sistema binário:
0 0 1 1 x 0 x 1 x 0 x 1 --- --- --- --- 0 0 0 1
Exemplo: 11010b x 10b = 110100b
11010 x 10 ----- 00000 + 11010 -------- 110100
3.4 Divisão
Exemplo: 110100b x 10b = 11010b
110100 | 10 -10 +---- --- 11010 010 -10 --- 0010 -10 -- 000
4 Exercícios
Lista de Exercícios 1 - Sistemas de Numeração
<< | <> | >> |
---|