You are on page 1of 26

INFORMATICA BÁSICA

IUTE – MÉRIDA
PROF: DUBERLIS GONZÁLEZ
Niveles de los lenguajes

 Lenguaje Natural
 Lenguaje de Programación
 Compilador / Interprete
 Lenguaje Máquina
Etapas de la Compilación
Lenguaje de Máquina

Lenguaje mas básico, propio de cada computadora,


ya que está relacionado con el diseño del hardware de
la misma (dependiente de la máquina). Por lo general
consisten en cadenas de números al final reducidos a
ceros y unos (sistema numérico binario).
 Operaciones:
 Cargar
 Almacenar
 Sumar
 Restar
Lenguaje de Máquina

 Ejemplo:

Código de Dirección Significado operación

00010101 10000001 (a) Cargar contenido de la dir. 129 en


Acumulador

00010111 10000010 (b) Sumar contenido de la dir 130 al


Acumulador

00010110 10000011 (c) Almacenar contenido del Acumulador


en la dir. 131

(c) 10000011 = 27+21+20 = 131.


Lenguaje Ensamblador

Consiste en abreviaturas similares al inglés, llamadas


instrucciones mnemotécnicas, que permiten
representar las operaciones elementales de la
computadora (dependiente de la máquina).
Ejemplo:
Código operación Dirección Inst en lenguaje ensamblador

 00010101 10000001 LOAD A


 00010111 10000010 ADD B
 00010110 10000011 STORE C
Lenguaje Ensamblador

 Lenguaje de bajo nivel o ensamblador:


La computadora no entiende directamente lenguaje
ensamblador por lo que un programa escrito en este
lenguaje tiene que ser traducido a lenguaje de máquina
por un programa llamado un ensamblador para que
pueda ser ejecutado por la computadora.
Los lenguajes ensambladores todavía requieren que el
programador tenga un buen conocimiento de la
arquitectura de la computadora.
Como los lenguajes ensambladores son dependientes de
la máquina, todo programa escrito en un lenguaje
ensamblador particular tendrá que ser reescrito si se va
a ejecutar en otro tipo de computadora.
Lenguaje de Alto Nivel

 Permite a los programadores escribir instrucciones en un lenguaje mas


familiar para ellos y que contiene notaciones matemáticas comúnmente
utilizadas independiente de la máquina).

Ejemplo:
Código operación Dirección Inst en lenguaje ensamblador Inst en lenguaje de alto Nivel

00010101 10000001 LOAD A


00010111 10000010 ADD B
00010110 10000011 STORE C C=A+B

Con este tipo de lenguajes, la programación es mas fácil para los


usuarios ya que éste no necesita tener conocimiento de la
arquitectura de la computadora.
Lenguaje de Alto Nivel

Lenguaje de alto nivel:


Como ocurre con los lenguajes ensambladores, la
computadora no entiende directamente lenguaje de alto
nivel, por lo que un programa escrito en este lenguaje tiene
que ser traducido a lenguaje de máquina por un programa
llamado un compilador para que pueda ser ejecutado por la
computadora.
Los lenguajes de alto nivel permiten portabilidad, mejor
expresión de las ideas, facilidad de programar ciertas
clases de problemas, menos posibilidad de cometer errores,
una visión más amplia del problema, etc.
Lenguaje de Alto Nivel

Ejemplos de lenguajes de alto nivel:


 - Java - BASIC
 - C - Visual Basic
 - C++ - Pascal
 - COBOL
 - FORTRAN
 - PROLOG
 - LISP
 - PL/I
 - SMALLTALK
 - ADA
Lenguaje de Alto Nivel
FUENTES DE INFORMACIÓN
 Dato. Esta asociado a un objeto o hecho
concreto.
 Información. Compuesta de datos organizados,
agrupados o clasificados en categorías que le
dotan de significado.
TIPOS DE DATOS
El tipo de un dato es el conjunto de valores que
Puede tomar durante el programa.

La asignación de tipos a los datos tiene dos


objetivos principales:
 Por un lado, detectar errores en las operaciones
 Por el otro, determinar cómo ejecutar estas operaciones

todos los datos deben de tener un tipo declarado explícitamente, y


además que existen ciertas restricciones en las expresiones en cuanto
a los tipos de datos que en ellas intervienen
TIPOS DE DATOS
Entero (Integer) Numeros enteros
El manejo de la información sin parte Decimal
en cualquier lenguaje
Carácter ( Char) Cracteres del
de programación se realiza codigo ASCII
mediante diferentes
Boleano Pueden contener
clases de datos. (Boolean) los valores de falso
o verdadero
Real Números que
pueden incluir una
parte decimal

Cadena (String) En una secuencia


de caracteres que
se trata como un
solo dato.
TIPOS DE DATOS
Un programa debe ser capaz de manejar diferentes tipo de datos,
como pueden ser números enteros, reales, caracteres, cadenas de
caracteres, etc. Para lograr el manejo de toda esta información .

Tipos enteros
En esta categoría generalmente cuenta con 5 tipos diferentes,
cada uno abarca un rango específico de valores y utilizan una
diferente cantidad de memoria dependiendo de ese rango.
Naturalmente el trabajar con rangos menores nos ofrece una
mayor velocidad y menor espacio en memoria, pero si se
utilizan enteros largos se cuenta con mayor presición. Los
tipos de enteros en son:
TIPO DE DATOS ENTEROS
Tipo Rango de valores que acepta

Integer (Entero) -32,768 a 32,767

Word (Palabra) 0 a 65535

ShortInt (Entero corto) -128 a 127

Byte 0 a 255

LongInt (Entero largo) -2,147,483,648 a 2,147,483,648


TIPO DE DATOS REALES
Tipo Rango de valores
Los números reales son aquellos
que acepta
que cuentan con una parte
decimal. En algunos lenguajes de Real 2.9E-39 a 1.7E38
programación se tienen
varios tipos de datos reales, pero Single 1.5E-45 a 3.4E38
no se puede utilizar, mas
que el tipo real, en máquinas que Double 5.0E-324 a 1.7E308
no cuenten con un coprocesador
matemático. Los tipos de datos Extended 1.9E-4851 a 1.1E4932
reales son:
Comp -9.2E18 a 9.2E18

Los números reales deben llevar por fuerza al menos un dígito de cada lado del punto
decimal así sea éste un cero. Como ejemplo, el número 5 debe representarse como: 5.0, el .5
como 0.5 , etc.
TIPO DE DATOS REALES
Ejemplos:

double miPi = 314.16e-2 ; // aproximadamente


float temperatura = (float)36.6; // Paciente sin
fiebre
Se realiza un moldeado a temperatura, porque
todos los literales con decimales por defecto
se consideran double.
TIPOS DE DATO CARACTER
Los caracteres son cada uno de los símbolos que forman el
código ASCII.. Los caracteres se especifican entre apostrofes:

'a' 'B' '2' '#'

El tipo Char es un tipo ordinal en algunos lenguajes de


programacion, ésto quiere decir que sus elementos válidos
siguen una secuencia ordenada de valores individuales. La
secuencia de caracteres para este tipo corresponden al
número del código ASCII, del 0 al 255.
Es posible accesar a cada uno de los caracteres utilizando un
signo # antes de su valor correspondiente, por ejemplo, la letra
A puede ser representada como #65
TIPOS DE DATO CARACTER
Las variables de tipo char se declaran de la
siguiente forma:

char letraMayuscula = 'A'; // Observe la


necesidad de las ' '
TIPO CADENA
Las cadenas son secuencias de caracteres o arreglos que
tienen una longitud máxima de 255 caracteres. Se definen
entre apostrofes.
Nombre : Cadena;
Nombre = 'Ernesto González';

La cadena 'Ernesto González' es almacenada en la variable


nombre definida como tipo cadena.
El tamaño por defecto para un tipo string es de 255
caracteres, pero es posible definir uno mas pequeño
utilizando el siguiente formato:

Variable : Cadena[Tamaño];

Donde Variable es la variable a definir y Tamaño es el número maximo


de caracteres que podrá contener esa variable (naturalmente mayor a
0 y menor a 256).
TIPO CADENA
Por ejemplo:

Nombre : String[30];
{Permite un máximo de 30 caracteres en la variable}
Nombre := 'Ernesto González';
Escribir (Nombre[5]);
{Visualiza el 5to caracter de la cadena}
TIPOS DE DATOS LOGICOS
Este tipo de datos tienen la peculiaridad de que solo pueden tomar
dos tipos de datos: verdadero o falso, el verdadero puede ser
representado por su nombre en inglés: True y el falso por False;
también se representan por 1 y por 0 respectivamente. El tipo
está definido como Boolean.
Los datos lógicos tienen una enorme aplicación en la evaluación
de ciertos procesos, así como en el control de flujo de los
programas.

Ejemplo
Para declarar un dato del tipo booleano se utiliza la palabra
reservada boolean:

boolean reciboPagado = false; // ¡¿Aun no nos han pagado?!


ESTRUCTURA DE DATOS LINEALES

Se derivan del concepto de secuencia. Primero se


definen las secuencias como conjuntos de
elementos entre los que se establece una relación
de predecesor y sucesor. Los diferentes TADs
basados en este concepto se diferenciaran por las
operaciones de acceso a los elementos y manipulación de
la estructura. Desde el punto de vista de la informática,
existen tres estructuras lineales especialmente
importantes: las pilas, las colas y las listas. Su
Importancia radica en que son muy frecuentes en los
esquemas algorítmicos.
ESTRUCTURA DE DATOS LINEALES
La diferencia entre las tres estructuras que se
estudiarán vendrá dada por la posición del
elemento a añadir, borrar y consultar:
 Pilas: las tres operaciones actúan sobre el final de la
secuencia
 Colas: se añade por el final y se borra y consulta por
el principio
 Listas: las tres operaciones se realizan sobre una
posición privilegiada de la secuencia, la cual puede
desplazarse
ESTRUCTURA DE DATOS NO LINEALES

la estructura de datos no lineales se caracteriza por no


existir una relación de sus elementos es decir que un
elemento puede estar con cero uno o mas elementos.
Las estructuras no lineales de datos mas general son los
árboles donde no existe ninguna relación de orden
Predefinida.

Esta estructura se usa principalmente para representar


datos con una relación jerárquica entre sus elementos,
como por ejemplo registros, árboles genealógicos y tablas
de contenidos.