Tipos de datos máquina Todos los datos en los ordenadores basados en la electrónica digital se representan como bits (valores 0 y 1) en el nivel más bajo. La más pequeña unidad direccionable de datos es un grupo de bits llamado un byte (normalmente un octeto, que son 8 bits). La unidad procesada por las instrucciones del código máquina se le llama una palabra (en 2006, normalmente 32 o 64 bits). La mayor parte de las instrucciones interpretan la palabra como un número binario, como por ejemplo una palabra de 32 bits puede representar valores enteros sin signo desde el 0 al 232 − 1 o valores enteros con signo desde − 231 al 231 − 1. Por medio del complemento a dos, la mayor parte del tiempo, el lenguaje máquina y la propia máquina no necesitan distinguir entre tipos de datos con o sin signo. Existe un específico conjunto de instrucciones aritméticas que usa una diferente interpretación de los bits de una palabra como número en coma flotante.
Tipos de datos primitivos Los tipos de datos hacen referencia al tipo de información que se trabaja, donde la unidad mínima de almacenamiento es el dato, también se puede considerar como el rango de valores que puede tomar una variable durante la ejecución del programa. DATOS PRIMITIVOS:
CARACTER
NUMERICO
LOGICOS(BOOLEANOS)
CARÁCTER El tipo de dato carácter es un digito individual el cual se puede representar como numéricos (0 al 9), letras (a-z) y símbolo ($,_). NOTA: En lenguaje java la codificación Unicode permite trabajar con todos los caracteres de distintos idiomas.
Tipo de dato Rango char 0 a 65536
Tamaño de bits 16 bits
NUMERICOS Este tipo de dato puede ser real o entero, dependiendo del tipo de dato que se vaya a utilizar. Enteros: son los valores que no tienen punto decimal, pueden ser positivos o negativos y el cero.
tipo tipo tipo tipo
de de de de
dato: dato: dato: dato:
byte short int long
tamaño= tamaño= tamaño= tamaño=
8 bits 16 bits 32 bits 64 bits
Reales: estos caracteres almacenan numeros muy grandes que poseen parte entera y parte decimal.
tipo de dato: float= 32 bits tipo de dato: double= 64 bits
BOOLEANOS 1
Este tipo de dato se emplea para valores lógicos, los podemos definir como datos comparativos dicha comparación devuelve resultados lógicos. tipo de dato: boolean
Rango= true – false
byte: El tipo de dato byte es un entero de 8 bits complemento a dos. Su valor mínimo es -128 y el máximo 127 (inclusive). El tipo de datos byte se puede utilizar para ahorrar memoria en grandes arrays, donde el ahorro de memoria realmente importa. También se pueden utilizar en lugar de int donde sus límites ayudan a aclarar el código, el hecho de que el rango de una variable es limitado puede servir como una forma de documentación. short: El tipo de dato short es un entero de 16 bits complemento a dos. Su valor mínimo es -32,768 y el máximo 32,767 (inclusive). Se aplican las mismas directrices que con byte: puede utilizar short para ahorrar memoria en grandes arrays, en situaciones en las que el ahorro realmente importa. int: El tipo de dato int es un entero de 32 bits complemento a dos. Su valor mínimo es -2,147,483,648 y el máximo 2,147,483,647 (inclusive). Generalmente este tipo es la elección predeterminada para valores enteros a no ser que haya una razón (como las mencionadas anteriormente) para elegir otro. Este tipo de dato normalmente será lo suficiente grande para los números que su program vaya a utilizar pero si necesita un rango más amplio, utilice long. long: El tipo de dato long es un entero de 64 bits complemento a dos. Su valor mínimo es -9,223,372,036,854,775,808 y el máximo 9,223,372,036,854,775,807 (inclusive). Utilice este tipo de dato cuando necesite un rango de valores más amplio que el proporcionado por int. float: El tipo de dato float es un dato en coma flotante IEEE 754 de 32 bits y precisión simple. Su rango de valores está fuera del ámbito de este tema, pero se detalla en la sección 4.2.3 de la Especificación del lenguaje Java. Al igual que con byte y short, se recomienda usar un float (en vez de un double) si necesita ahorrar memoria en grandes array de números en coma flotante. Este tipo de dato nunca debería ser usado para valores precisos como, por ejemplo, divisas. Para esto debería usarla clase java.math.BigDecimal. Números y cadenas trata BigDecimal y otras clases útiles proporcionadas por la plataforma Java. double: El tipo de dato double es un dato en coma flotante IEEE 754 de 64 bits y precisión doble. Su rango de valores está fuera del ámbito de este tema, pero se detalla en la sección 4.2.3 de la Especificación del lenguaje Java. Normalmente este tipo de dato es la elección predeterminada para valores decimales. Como ya se ha mencionado, este tipo de dato no se debería utilizar para valores precisos como, por ejemplo, divisas. boolean: El tipo de dato boolean solamente tiene dos valores posibles: true (verdadero) y false (falso). Utilice este tipo de datos como conmutadores para la evaluación de condiciones verdadero/falso. Este tipo de dato representa un bit de información, pero su «tamaño» es algo que no está definido con precisión. char: El tipo de dato char es un solo carácter Unicode de 16 bits. Tiene un valor mínimo de '\u0000' (o «0») y un máximo de '\uffff' (o 65.535 inclusive).
4 bits = 16 posibilidades 8 bits = 256 posibilidades
2
3
4