Introducción

En el lenguaje ensamblador, es fundamental comprender cómo se representan los datos a nivel de hardware. Dos de las representaciones más comunes son los sistemas binario y hexadecimal. Este conocimiento es crucial para manipular datos y entender cómo la CPU procesa la información.

  1. Sistema Binario

Conceptos Clave

  • Base 2: El sistema binario utiliza solo dos dígitos: 0 y 1.
  • Bit: La unidad más pequeña de datos en un sistema binario.
  • Byte: Un grupo de 8 bits.

Ejemplo de Conversión Decimal a Binario

Para convertir un número decimal a binario, se divide el número por 2 y se registran los restos. El proceso se repite hasta que el cociente sea 0.

Ejemplo: Convertir 13 a binario

  1. 13 ÷ 2 = 6, resto 1
  2. 6 ÷ 2 = 3, resto 0
  3. 3 ÷ 2 = 1, resto 1
  4. 1 ÷ 2 = 0, resto 1

El número binario es 1101.

Ejemplo de Conversión Binario a Decimal

Para convertir un número binario a decimal, se multiplica cada bit por 2 elevado a la posición del bit, comenzando desde 0.

Ejemplo: Convertir 1101 a decimal

  1. \(1 \times 2^3 = 8\)
  2. \(1 \times 2^2 = 4\)
  3. \(0 \times 2^1 = 0\)
  4. \(1 \times 2^0 = 1\)

El número decimal es 8 + 4 + 0 + 1 = 13.

  1. Sistema Hexadecimal

Conceptos Clave

  • Base 16: El sistema hexadecimal utiliza 16 dígitos: 0-9 y A-F.
  • Nibble: Un grupo de 4 bits, que puede representar un solo dígito hexadecimal.
  • Byte: Un grupo de 8 bits, que puede representar dos dígitos hexadecimales.

Ejemplo de Conversión Decimal a Hexadecimal

Para convertir un número decimal a hexadecimal, se divide el número por 16 y se registran los restos. El proceso se repite hasta que el cociente sea 0.

Ejemplo: Convertir 254 a hexadecimal

  1. 254 ÷ 16 = 15, resto 14 (E en hexadecimal)
  2. 15 ÷ 16 = 0, resto 15 (F en hexadecimal)

El número hexadecimal es FE.

Ejemplo de Conversión Hexadecimal a Decimal

Para convertir un número hexadecimal a decimal, se multiplica cada dígito por 16 elevado a la posición del dígito, comenzando desde 0.

Ejemplo: Convertir FE a decimal

  1. \(F \times 16^1 = 15 \times 16 = 240\)
  2. \(E \times 16^0 = 14 \times 1 = 14\)

El número decimal es 240 + 14 = 254.

  1. Conversión entre Binario y Hexadecimal

Binario a Hexadecimal

Para convertir un número binario a hexadecimal, se agrupan los bits en nibbles (grupos de 4 bits) y se convierten cada grupo a su equivalente hexadecimal.

Ejemplo: Convertir 11011110 a hexadecimal

  1. Agrupar en nibbles: 1101 1110
  2. Convertir cada nibble:
    • 1101 = D
    • 1110 = E

El número hexadecimal es DE.

Hexadecimal a Binario

Para convertir un número hexadecimal a binario, se convierte cada dígito hexadecimal a su equivalente binario de 4 bits.

Ejemplo: Convertir DE a binario

  1. Convertir cada dígito:
    • D = 1101
    • E = 1110

El número binario es 11011110.

Ejercicios Prácticos

Ejercicio 1: Conversión Decimal a Binario

Convierte el número decimal 45 a binario.

Solución:

  1. 45 ÷ 2 = 22, resto 1
  2. 22 ÷ 2 = 11, resto 0
  3. 11 ÷ 2 = 5, resto 1
  4. 5 ÷ 2 = 2, resto 1
  5. 2 ÷ 2 = 1, resto 0
  6. 1 ÷ 2 = 0, resto 1

El número binario es 101101.

Ejercicio 2: Conversión Binario a Decimal

Convierte el número binario 101101 a decimal.

Solución:

  1. \(1 \times 2^5 = 32\)
  2. \(0 \times 2^4 = 0\)
  3. \(1 \times 2^3 = 8\)
  4. \(1 \times 2^2 = 4\)
  5. \(0 \times 2^1 = 0\)
  6. \(1 \times 2^0 = 1\)

El número decimal es 32 + 0 + 8 + 4 + 0 + 1 = 45.

Ejercicio 3: Conversión Decimal a Hexadecimal

Convierte el número decimal 123 a hexadecimal.

Solución:

  1. 123 ÷ 16 = 7, resto 11 (B en hexadecimal)
  2. 7 ÷ 16 = 0, resto 7

El número hexadecimal es 7B.

Ejercicio 4: Conversión Hexadecimal a Binario

Convierte el número hexadecimal 7B a binario.

Solución:

  1. 7 = 0111
  2. B = 1011

El número binario es 01111011.

Conclusión

En esta sección, hemos aprendido sobre los sistemas binario y hexadecimal, cómo convertir entre ellos y cómo estos sistemas son fundamentales para la programación en ensamblador. Estos conocimientos son esenciales para comprender cómo se representan y manipulan los datos a nivel de hardware. En la próxima sección, exploraremos los tipos y tamaños de datos en ensamblador.

© Copyright 2024. Todos los derechos reservados