Tipos de operandos

En una arquitectura de computadora, las instrucciones máquina operan con diferentes tipos de datos. Las categorías generales más importantes de datos son las siguientes:

  1. Direcciones:

    • Las direcciones se utilizan para acceder a la memoria principal o registros en el sistema. En muchos casos, las direcciones pueden considerarse como números enteros sin signo.
    • En el Capítulo 11, se explorarán los modos de direccionamiento, que son formas de especificar direcciones en las instrucciones.
  2. Números:

    • Los números son un tipo de dato fundamental en el procesamiento de datos. En una computadora, los números pueden ser enteros o en coma flotante.
    • Los números enteros se utilizan comúnmente en aplicaciones matemáticas y de cómputo. Pueden ser positivos o negativos y no tienen parte fraccionaria.
    • Los números en coma flotante permiten representar números reales, incluyendo fracciones y números muy grandes o pequeños. Utilizan un formato específico para la representación de la parte fraccionaria, el exponente y el signo.
  3. Caracteres:

    • Los caracteres son una forma común de datos utilizada para representar texto y símbolos en una computadora. En sistemas de codificación, como ASCII (American Standard Code for Information Interchange) o EBCDIC (Extended Binary Coded Decimal Interchange Code), se asigna un patrón de bits único a cada carácter.
    • Los caracteres se almacenan en memoria o se transmiten a través de sistemas de comunicación en forma de secuencias de bits que representan caracteres individuales.
  4. Datos Lógicos:

    • Los datos lógicos se refieren a la representación de datos en forma de bits individuales (1 o 0). Cada bit puede considerarse como una unidad de datos lógicos.
    • Este enfoque permite representar información booleana o binaria, como verdadero (1) o falso (0). También se utiliza en operaciones de bits, como desplazamientos, máscaras y operaciones lógicas.

En el contexto de lenguajes de alto nivel, los datos se manejan de manera más abstracta y los programadores no siempre tienen que preocuparse por los detalles de representación de datos en la arquitectura subyacente. Sin embargo, en lenguajes máquina, los programadores deben tener un conocimiento más profundo de cómo se representan y manipulan estos diferentes tipos de datos en la memoria y en las instrucciones máquina.