Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Facultad de Ingeniería
Escuela de Ingeniería ….
Lenguajes de
Programación
Claudio Hormazábal Ocampo
Primer Semestre 2010
Email: claudio@hormazabal.cl
Apuntes, Emuladores, Calificaciones:
http://www.hormazabal.cl/e-cursos
Strictly Confidential 1
Descripción de la Asignatura
Reseña Histórica:
Antigüedad : Existían mecanismos de cálculo que sólo pueden hacer lo pre-establecido
Notación numérica posicional
Construcción de ábacos
1642, Pascal crea una máquina de sumar
Modernismo : Mecanismos de cálculo capaces de reconocer nuevas funciones diferentes a las pre-
establecidas (poseen lenguaje propio de programación)
1822, Charles Babbage crea la máquina análitica y de diferencias
1945, von Neumann crea las bases para el primer computador con tarjetas programables
1946, primer computador eléctrico
Post-Modernismo : Mecanismo de cálculo y manejo de información (poseen lenguaje propio de
programación) Se transforma en herramienta fundamental en administración y producción
(década 50’)
Actualidad : Mecanismo de cálculo, manejo de información y conocimiento humano (reconocen
diferentes lenguajes de programación a parte del propio)
Desde 1960 se comienza a masificar el uso del computador en todas las áreas humanas.
Comienzan las técnicas de manejo de conocimiento humano. Ej. Comunidades del
conocimiento.
Se crean los sistemas expertos y de inteligencia artificial.
A partir de la década del ‘80 gracias a los PC (personal computer) el computador se
transforma en herramienta útil en toda actividad humana.
2007, Claudio Hormazábal Lenguajes de Programación claudio@hormazabal.cl 14
UNIDAD 1: Sistemas Numéricos.
Sistemas Numéricos
1.-Sistema N-ario: Ejemplo :
X N x K
x x x x
3 2 1 0
XX1013 94 B5
9475
K 3 2 1 0
3 2 1 0
X D xN
i
i
XXDD 99**13
10 44**13
10 11
7*10
13 55*13
10
i 0
X H x K
x x x x
3 2 1 0 X 16
1101
K 3 2 1 0
X D x 16i
i X D 1*16 1*16 0*16 1*16
i 0
Operaciones en Binario.
Suma binaria.
La suma se realiza tomando consideración la siguiente tabla:
Resta Binaria:
Operaciones en Hexadecimal.
Conversiones
En general, para convertir de Base X a base 10:
Algoritmo:
Signo y Magnitud.
Una primer enfoque al problema de representar el signo de un
número podría consistir en asignar un bit para representar el
signo, poner ese bit (a menudo el bit más significativo) a 0
para un número positivo, y a 1 para un número negativo. Los
bits restantes en el número indican la magnitud (o el valor
absoluto). Por lo tanto en un byte con solamente 7 bits
(aparte del bit de signo) la magnitud puede tomar valores
desde 0000000 (0) a 1111111 (127). Así se puede
representar números desde -127(10) hasta +127(10).
Observación: El cero tiene 2 representaciones: 00000000 (0)
y 10000000 (-0).
Ejercicio: Representar el número -100, -50 y -25 en binario.
Complemento a uno.
Como alternativa para representar números negativos puede
usarse un sistema conocido como complemento a uno. La
forma del complemento a uno de un número binario es un
NOT bit a bit aplicado al número.
Ej: el complemento a uno de 00101011 (43) se convierten en
11010100 (−43).
Observación: El cero tiene 2 representaciones 0:00000000
(+0) y 11111111 (−0).
El rango para la representación en complemento a uno con 8
bits es −127 a +127 (en base 10).
Complemento a dos.
El complemento a dos de un número N que, expresado en el
sistema binario está compuesto por n dígitos, se define como:
C2(N) = C2(10010100011111) =
= 2^n - N =
= 2^16 - 10010100011111 =
= 10000000000000000 - 10010100011111 =
= 1101101011100001C2
En consecuencia,
-950310 = 1101011100001C2
Procedimiento de Instalación:
Bajar paquete desde:
http://www.apachefriends.org/es/xampp.html
Comentarios:
Para que en futuras revisiones de tu código sea inteligible
para la mente humana, es recomendable comentar lo que se
esta haciendo en PHP pero en palabras.
Los comentarios que soporta PHP són los de C, C++ y los del
shell de Unix, asi podemos usar // y /* */ para comentarios y
comentarios multilinea respectivamente como haríamos en C:
Ejemplos:
<?php
echo 'Esto se ve';
// esto no se ve
echo 'esto tambien se ve';
/* esto tampoco
se ve */
?>
<?php
# esto no se ve
echo 'pero esto si';
?>
<?php
/* /* Nunca hacer nunca esto */ */
?>
2007, Claudio Hormazábal Lenguajes de Programación claudio@hormazabal.cl 61
Unidad 2 :PHP
Variables:
Una variable es un nombre que contiene determinados
datos, ya sean de texto o numéricos, y en php tienen la
peculiaridad de ir precedidas por el signo peso ($).
En PHP no es necesario declarar las variables antes de
usarlas y pueden contener texto y números indiferentemente.
Ejemplo de uso de variables:
<?php
$miVariable = 'Hola ';
$miVariable2 = 33;
// Imprimimos Hola 33
echo $miVariable.$miVariable2;
?>
Como se observa, se asigna algún valor a una variable con el
operador de igualdad (=), y concatenamos con el operador
punto (.).
2007, Claudio Hormazábal Lenguajes de Programación claudio@hormazabal.cl 62
Unidad 2 :PHP
Variables predefinidas
PHP tiene muchas variables predefinidas, pero hay que tener
en cuenta que todas estas variables no suelen estar activas
en todos los servidores, para saber de que variables
disponemos, podemos usar la función de info de PHP:
<?php
phpinfo();
?>
Variables más comúnmente utilizadas y que probablemente
nuestro servidor tendrá correctamente habilitadas:
Constantes.
Una constante es como una variable pero con la diferencia
que una vez toma un valor este no puede variar durante la
ejecución del script, otra particularidad de las constantes es
que son globales, por lo que se pueden leer desde el interior
de una función sin tener que pasarlas como parámetro.
<?php
define ('miConstante','valor de mi constante');
echo miConstante;
?>
<?php
$mivariable = defined(“midato");
// Mostrara 0 si existe la variable y 1 si no existe
echo $mivariable;
?>
<?php
define ('echo','valor de mi constante');
echo constant('echo');
?>
Constantes mágicas
Existen unas constantes llamadas mágicas que son accesibles
para cualquier script PHP, estas nos proporcionan información
sobre el script, que depende del lugar en el que las usemos:
__FILE__ : Contiene el nombre y la ruta del archivo que se
está ejecutando.
__LINE__ : Contiene la línea que se está ejecutando en ese
momento exacto del fichero actual
__FUNCTION__ :Añadida en la versión 4.3 de PHP,
contiene el nombre de la función que se está ejecutando
actualmente
__CLASS__ : Añadida también en la versión 4.3, contiene el
nombre de la clase que se ejecuta actualmente
__METHOD__ - Añadida el la versión 5, contiene el nombre
del método actual
<?php
echo "Ejecutando la línea ".__LINE__;
?>
<?php
// La variable $var1 es un numero ( entero )
$var1 = 3;
// La variable $var2 es un texto ( cadena de caracteres )
$var2 = "9 años";
//Si juntamos las variables $var1 y $var2, obtenemos un texto
$var3 = $var1 . $var2; // "39 años"
// Si en cambio las sumamos obtendremos un número
$var3 = $var1 + $var2; // 12 ( 3 + 9)
?>
2007, Claudio Hormazábal Lenguajes de Programación claudio@hormazabal.cl 72
Unidad 2 :PHP
<?php
$var1= 1 != 2 ; // $var1 es true
?>
Vectores en PHP
Los vectores o array ( a veces mal llamados arreglos ) son
listas ordenadas de elementos. Para definir un vector en PHP
utilizamos la función array:
<?php
$vector = array ( "elemento 1", "elemento 2" );
?>
<?php
$vector = array ( "clave 1" => "elemento 1", "clave 2" => "el
emento 2" );
?>
2007, Claudio Hormazábal Lenguajes de Programación claudio@hormazabal.cl 78