• Matéria: Informática
  • Autor: karinaguine
  • Perguntado 8 anos atrás

Temos o sistema decimal (base 10), o binário (base 2), o octal (base 8) e o hexadecimal (base 16). Imaginando que você é um computador e que os computadores realizam as operações aritméticas somente no sistema binário resolva a seguinte equação:

X = (1510 + 1D16) x 148

Observe que os números da equação não estão em binário por isso será necessário efetuar primeiramente as conversões de base para depois efetuar os cálculos. Fica definido que para converter de hexadecimal/octal para binário primeiramente se converterá para decimal e depois de decimal para binário. O resultado final da equação deverá ser demonstrado em binário (base 2). Os passos para as conversões de base e cálculos de multiplicação e soma deverão ser demonstrados.

Respostas

respondido por: bokomoko
1
Os computadores não convertem de Hexadecimal para decimal e depois para binário. Eles convertem direto de Hexadecimal para binário e efetuam as operações. 
Observe que os números não podem ser octal pois tem algarismos como D e 8 que não pertencem a base octal. Portanto, os números devem ser hexadecimais

Para converter de hexadecimal para binário é só usar essa tabela aqui de correspondência. Como a base 16 é uma potência de 2 (no caso a 4a potência), então a cada 4 dígitos binários equivale sempre um certo dígito hexadecimal segundo a tabela abaixo.
bin........ hex
0000 .... 00
0001 .... 01
0010 .... 02
0011 .... 03
0100 .... 04
0101 .... 05
0110 .... 06
0111 .... 07
1000 ... 08
1001 .... 09
1010 .... A
1011 .... B
1100 .... C
1101 .... D
1110 .... E 
1111 .... F

1510₁₆ = 
1 - 0001
5 - 0101
1 - 0001
0 - 0000

Então 1510₁₆ = 0001010100010000₂

1D16₁₆
1 - 0001
D - 1101 
1 - 0001
6 - 0110
Então 1D16₁₆ = 0001110100010110₂

148₁₆
1 - 0001
4 - 0100
8 - 1000

Então 148₁₆ 000101001000₂

agora vamos somar 
 0001010100010000₂
+0001110100010110₂
--------------------------
      11001000100110₂

agora vamos multiplicar
                  11001000100110₂ 
*                    000101001000₂
--------------------------------------
10000000100000010110000₂

agora converter de volta para hexadecimal, é só separar em grupos de 4 algarismos assim
0100 0000 0100 0000 1011 0000₂
4       0       4       0       B      0 
4040B0₁₆


Para converter para decimal usamos as potências de 16 assim
4040B0₁₆
543210
 4 * 16⁵ + 0 * 16⁴ + 4 * 16³ + 0*16² + B*16¹ + 0*16⁰

Lembrando que B = 11
4 *  1048576 + 0* 65536 + 4 *  4096 + 0 * 256 + 11*16 + 0*1
4194304 + 0 +  16384 + 0 +  176 + 0 
4210864
Perguntas similares