Programacion en Java
Programacion en Java
Programacion en Java
c. El coeficiente, conformado por un nmero real con un solo dgito entero seguido de una coma (o punto) y de varios dgitos fraccionarios. b. La base, que en nuestro sistema decimal es 10, y en el sistema binario de los computadores es 2. e. El exponente entero, el cual eleva la base a una potencia
Precisin sencilla
(bit de signo + 8 bits exponente + 23 bits mantisa)
Precisin doble
(bit de signo + 11 bits exponente + 52 bits mantisa)
Signo El signo es expresado por el bit de la izquierda, con 0 indicando que el nmero es positivo y 1 indicando que el nmero es negativo. En los ejemplos de arriba, el primer nmero es negativo y los dos siguientes son positivos
2,71828 x 10-1 representa al nmero real 0,271828 2,71828 x 10 0 representa al nmero real 2,71828 (el exponente cero indica que la coma no se desplaza) 2,71828 x 10 2 representa al nmero real 271,828 2,71828 x 10 1 representa al nmero real 27,1828
Exponente El exponente indica que tanto se debe desplazar hacia la derecha o hacia la izquierda la coma binaria de la parte significativa. En este caso, el exponente ocupa 6 bits capaces de representar 64 valores diferentes, es decir, es un exponente binario (de base 2) que va desde -31 a +32, representando potencias de 2 entre 2-31 y 2+32, indicando que la coma binaria se puede desplazar en hasta 31 dgitos binarios hacia la izquierda (un nmero muy cercano a cero), y hasta 32 dgitos binarios hacia la derecha (un nmero muy grande).
Pero el exponente no se almacena como un nmero binario con signo (desde -31 hasta +32) sino como un entero positivo equivalente que va entre 0 y 63. Para ello, al exponente se le debe sumar un desplazamiento (bias), que en este caso de exponente de 6 bits (64 valores), es 31 (31 es la mitad de los 64 valores que se pueden representar, menos 1), y al final, el rango del exponente de 31 a +32 queda representado internamente como un nmero entre 0 y 63, donde los nmeros entre 31 y 63 representan los exponentes entre 0 y 32, y los nmeros entre 0 y 30 representan los exponentes entre -31 y -1 respectivamente:
Parte significativa La parte significativa, en este caso, est formada por 10 dgitos binarios significativos, de los cuales tenemos 9 dgitos explcitos ms 1 implcito que no se almacena. Esta parte significativa generalmente est normalizada y tendr siempre un 1 como el bit ms significativo. Debido a que, salvo ciertas excepciones, el bit ms significativo del significante siempre es 1, para ahorrar espacio y para aumentar la precisin en un bit, este bit no se almacena, y por ello se denomina bit oculto o implcito, sin embargo, antes de realizar los clculos este bit implcito debe convertirse en un bit explcito.
La notacin genrica para la coma flotante descrita arriba, representa respectivamente los siguientes nmeros reales (expresados en binario). El color rojo indica el bit ms significativo, que cuando se almacena es implcito pero cuando se hacen los clculos, o cuando se muestra la informacin se vuelve explcito:
Representacin de textos
Se escoge un conjunto de caracteres: alfabticos, numricos, especiales (separadores y signos de puntuacin), grficos y de control (por ejemplo, retorno de carro). Se codifica ese conjunto de caracteres utilizando n bits. Por tanto, se pueden representar hasta 2n smbolos distintos. Ejemplos de cdigos normalizados ASCII (American Standard Code for Information Interchange) - ANSI X3.4-1968, 7 bits (128 smbolos) - ISO 8859-1 = Latin-1, 8 bits (256 smbolos)
Representacin de textos
Por defecto, los literales reales representan valores de tipo double Para representar un valor de tipo float, hemos de usar el sufijo f o F: 123.45F 0.0f .001f
Las secuencias de escape son necesarias para introducir determinados caracteres dentro de una cadena:
\Esto es una cadena entre comillas\
Si cualquier operando es un String, toda la operacin se convierte en una concatenacin de cadenas. En Java, cualquier cosa puede convertirse automticamente en una cadena de caracteres (un objeto de tipo String)
Expresiones de tipo booleano Se construyen a partir de expresiones de tipo numrico con operadores relacionales. Se construyen a partir de otras expresiones booleanas con operadores lgicos o booleanos.
Nmero x fuera del intervalo [0,10] !((0 <= x) && (x <= 10)) o bien (0 > x) || (x > 10)
Se pueden utilizar a nivel de bits con nmeros enteros. No se pueden usar con datos de otro tipo (p.ej. reales).
Los operadores NOT (~), AND (&), OR(|) y XOR (^) Si alguno de los operandos es de tipo long, el resultado es long. Si no, el resultado es del tipo int.
NOT (~) realiza el complemento a 1 de un nmero entero: Cambia los 0s por 1s y viceversa
AND(&), OR(|) y XOR(^) funcionan a nivel de bits como los operadores booleanos AND (&&), OR(||) y XOR (^), respectivamente.
Variables
Una variable no es ms que un nombre simblico que identifica una direccin de memoria:
Declaracin de variables
Para usar una variable en un programa hay que declararla. El ordenador conoce as cmo codificar la informacin que se va a almacenar en la posicin de memoria correspondiente. Al declarar una variable, se reserva el espacio de memoria necesario para almacenar un valor del tipo de la variable. El identificador asociado a la variable se puede utilizar para acceder al dato almacenado en memoria y para modificarlo.
Variables
Ejemplos
// Declaracin una variable entera x de tipo int int x;
// Declaracin de una variable real r de tipo double double r; // Declaracin de una variable c de tipo char char c;
Variables
Identificadores en Java El primer smbolo del identificador ser un carcter alfabtico (a, , z, A, , Z, _, $) pero no un dgito. Despus de ese primer carcter, podremos poner caracteres alfanumricos (a, , z) y (0, 1, , 9), signos de dlar $ o guiones de subrayado _. Los identificadores no pueden coincidir con las palabras reservadas, que ya tienen significado en Java:
Variables
Las maysculas y las minsculas se consideran diferentes. $ y _ se interpretan como una letra ms. $ no se suele utilizar en la prctica (lo usa el compilador). Ejemplos vlidos a, pepe, r456, tu_re_da, AnTeNa, antena, usd$
Variables
Convenciones
Los identificadores deben ser descriptivos: deben hacer referencia al significado de aquello a lo que se refieren.
int n1, n2; // MAL int anchura, altura; // BIEN
Variables
Convenciones
Cuando el identificador est formado por varias palabras, la primera palabra va en minsculas y el resto de palabras se inician con una letra mayscula.
int mayorvalor; // MAL int mayor_valor; // ACEPTABLE int mayorValor; // MEJOR
NOTA: La inicializacin puede consistir en una expresin compleja que se evala cuando se ejecuta el programa
Si el identificador est formado por varias palabras, las distintas palabras se separan con un guin de subrayado
final char RETORNO_DE_CARRO = \n; final double ELECTRONIC_CHARGE = 1.6E-19;