You are on page 1of 9

UNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA

VICERECTORADO ACADEMICO
TRABAJO DE INVESTIGACION: INGENIERIA INDUSTRIAL
ASIGNATURA: COMPUTACION 2

Profesor:

Bachiller:

Luis Extrao

Diego Hernandez
C.I. 26.770.850.

CIUDAD GUAYANA, AGOSTO 2015

OBJETOS DE UN PROGRAMA
En un lenguaje de descripcin de software (SDL) una variable contiene un valor y
puede aceptar un nuevo valor a travs de una asignacin secuencial. Por otro lado, las
constantes tienen valores prefijados a lo largo de toda la ejecucin del programa. Sin
embargo, en VHDL se hace necesaria la utilizacin de un nuevo tipo de objeto que
puede emular las asignaciones concurrentes propias de los circuitos elctricos reales;
este nuevo tipo de objeto son las seales.
Un objeto en VHDL es un elemento que tiene asignado un valor de un tipo
determinado. Segn sea el tipo de dato, el objeto poseer un conjunto de operaciones
que se le podrn aplicar. En general, no ser posible realizar operaciones entre dos
objetos de distinto tipo, a menos que definamos previamente un programa de
conversin de tipos.
Palabras Reservadas
Son un conjunto de identificadores que tienen un significado especfico en VHDL.
Estas palabras son empleadas dentro del lenguaje a la hora de realizar un diseo. Por
esta razn y buscando obtener claridad en el lenguaje, las palabras reservadas no
pueden ser empleadas como identificadores definidos por el usuario.
Las palabras reservadas por VHDL son:
abs
access
after
alias
all
and
architecture
array
asser
attribute
begin
block
body
buffer
bus
case
component
configuration
constant
disconnect
downto

else
elsif
end
entity
exit
file
for
function
generate
generic
guarded
if
in
inout
is
label
library
linkage
loop
map
mod

nand
new
next
nor
not
null
of
on
open
or
others
out
package
port
procedure
process
range
record
register
rem
report

return
select
severity
signal
subtype
then
to
transoprt
type
units
until
use
variable
wait
when
while
with
xor

Constantes
Es un dato que no vara durante la ejecucin de un programa.
constante entera: Estas son nmeros enteros, que se almacenan en la cantidad de
memoria asignada para almacenar una cifra entera. Ejemplo: 48, -125.
Constante carcter: Las constantes de tipo carcter son un carcter escrito entre
comillas, ejemplo: 0, D, ;.
Constante cadena: Las constantes cadena son una cadena de caracteres escrita entre
comillas. Ejemplo lenguaje.
Constante real: Una constante de punto flotante es un nmero escrito en notacin
cientfica o punto decimal. Ejemplo 51.4E+4, 13.78
Constante boolenan. Son aquellas que solo pueden tomar el estado 0 o 1.
Las constantes pueden tomar un nombre con el que se les reconocer a lo largo del
programa. Ejemplo PI = 3.141592.
Variables
Son un conjunto de bytes que se identifican con un nombre nico. Pueden cambiar de
valor durante la ejecucin de un programa. Existen restricciones a la hora de dar
nombre a una variable:
Debe comenzar por una letra.
Puede contener solamente letras o nmeros.
Puede contener ms de ocho caracteres pero solamente para su identificacin,
se tienen en cuenta los primeros 8.
El carcter _ puede tratarse como una letra al definir una variable.
Los nombres de las variables no pueden ser palabras reservadas.
En los siguientes ejemplos identifique cual definicin no es correcta:
Jlm
Sal_men
Sum32
m-n
else
32sum
_salmen
Identificadores

Los identificadores son un conjunto de caracteres dispuestos de una forma adecuada


y siguiendo unas normas propias del lenguaje, para dar un nombre a los elementos en
VHDL, por lo que es aconsejable elegir un nombre que sea representativo y que
facilite la comprensin del cdigo.
Las reglas a tener en cuenta a la hora de elegir un identificador son:

Los identificadores deben empezar con un carcter alfabtico, no pudiendo


terminar con un carcter subrayado, ni tener dos o ms de estos caracteres
subrayados seguidos.
VHDL identifica indistintamente tanto las maysculas como las minsculas,
pudindose emplear por igual el identificador "sumador" o "SUMADOR". Pulsa
aqu para ir a la prctica del sumador, donde se demuestra la indiferencia de
maysculas y minsculas.
El tamao o extensin del identificador no est fijado por VHDL, siendo
recomendable que el usuario elija un tamao que confiera sentido y significado
al identificador, sin llegar a alcanzar longitudes excesivamente largas.
Los identificadores pueden contener caracteres numricos del '0' al '9', sin que
stos puedan aparecer al principio.
No puede usarse como identificador una palabra reservada por VHDL.

TIPOS DE DATOS
El tipo de datos es un elemento bsico que delimita que valores puede tener un objeto
y que operaciones podemos realizar con l. Aparte de los tipos ya creados, podemos
crear nuevos tipos y subconjuntos de tipos.

Dato de tipo entero


Es aquel que puede tomar por valor un nmero perteneciente al conjunto de los
nmeros enteros (Z), el cual est formado por los nmeros naturales, su opuestos
(nmeros negativos) y el cero.
Z = { ..., -3, -2, -1, 0, 1, 2, 3, ... }
Ejemplo: La edad de una persona y el ao en que naci, son dos datos de tipo entero:
Edad...: 29
Ao....: 1976
Z es un conjunto infinito de nmeros enteros, y como el ordenador no puede
representarlos todos, un dato de tipo entero slo puede tomar por valor un nmero
perteneciente a un subconjunto de Z. Los valores mximo y mnimo de dicho
subconjunto varan segn las caractersticas de cada ordenador y del compilador que
se utilice. En pseudocdigo, para indicar que un dato es de tipo real se utiliza la
palabra reservada: entero
Dato de tipo real

Es aquel que puede tomar por valor un nmero perteneciente al conjunto de los
nmeros reales (R), el cual est formado por los nmeros racionales e irracionales.
Ejemplo: El peso de una persona (en kilogramos) y su altura (en centmetros), son
datos que pueden considerarse de tipo real.
Peso.....: 75,3
Altura...: 172,7
R es un conjunto infinito de nmeros reales, y como el ordenador no puede
representarlos todos, un dato de tipo real slo puede tomar por valor un nmero
perteneciente a un subconjunto de R. Los valores de dicho subconjunto varan segn
las caractersticas de cada ordenador y del compilador que se utilice. En
pseudocdigo, para indicar que un dato es de tipo real se utiliza la palabra reservada:
real.
Dato de tipo lgico
Es aquel que puede tomar por valor slo uno de los dos siguientes:
{verdadero, falso }
Los valores "verdadero" y "falso" son contrapuestos, de manera que, un dato de tipo
lgico siempre est asociado a que algo se cumpla o no se cumpla.
Ejemplo: El estado de una barrera de paso de trenes es un dato que puede
considerarse de tipo lgico, por ejemplo, asociando "verdadero" a que est subida y
"falso" a que est bajada.
Estado...: falso (indica que la barrera est bajada)
En pseudocdigo, para indicar que un dato es de tipo lgico se utiliza la palabra
reservada: lgico.
Dato de tipo carcter
Es aquel que puede tomar por valor un carcter perteneciente al conjunto de los
caracteres que puede representar el ordenador.
En pseudocdigo, el valor de un dato de tipo carcter se puede representar entre
comillas simples (') o dobles ("). Pero, en este curso de diseo de algoritmos, se van a
utilizar solamente las comillas simples (al igual que se hace en lenguaje C).
Ejemplo: En un examen con preguntas en las que hay que seleccionar la respuesta
correcta entre varias opciones dadas (a, b, c, d, e), la respuesta correcta de cada una
de las preguntas es un dato de tipo carcter.
Respuesta correcta a la pregunta 3...: 'c'
Dato de tipo cadena
Es aquel que puede tomar por valor una secuencia de caracteres. En pseudocdigo, el
valor de un dato de tipo cadena se puede representar entre comillas simples (') o

dobles ("). Sin embargo, en este curso de diseo de algoritmos, se van a utilizar
solamente las comillas dobles (al igual que se hace en lenguaje C).
Ejemplo: El ttulo de un libro y el nombre de su autor, son datos de tipo cadena.
Ttulo...: "La Odisea" (cadena de 9 caracteres)
Autor....: "Homero" (cadena de 6 caracteres)
Obsrvese que, en la cadena "La Odisea", el carcter espacio en blanco tambin se
cuenta. En pseudocdigo, para indicar que un dato es de tipo cadena se utiliza la
palabra reservada: cadena.
Tipos de datos simples
Se clasifican en predefinidos y definidos por el programador. La clasificacin completa
es:
Tipos de datos simples (sin estructura) en pseudocdigo:
Predefinidos (estndares):
Numricos:
Entero (entero)
Real (real)
Lgico (lgico)
Carcter (carcter)
Definidos por el programador (no estndares):
Subrangos (subrango)
Enumerados (enumerado)
Clasificacin de los tipos de datos simples en pseudocdigo. Los tipos de datos
simples predefinidos (estndares) son aquellos proporcionados por los lenguajes de
programacin. Pero, el programador tambin puede definir sus propios tipos de datos
simples (subrangos y enumerados). Todos los datos simples son ordinales, excepto el
dato de tipo real. Un dato ordinal es aquel que puede tomar por valor un elemento
perteneciente a un conjunto en el que todo elemento tiene un predecesor y un sucesor,
excepto el primero y el ltimo. Por ejemplo, el valor 5, perteneciente al conjunto de los
nmeros enteros, tiene como predecesor al 4, y como sucesor al 6. Sin embargo, entre
dos nmeros reales siempre hay un nmero infinito de nmeros

SENTENCIAS DE ASIGNACIN
Se utiliza para asignar o almacenar valores a variables o constantes. Es una operacin
que sita un valor determinado en una posicin de memoria. La operacin de

asignacin se denota con el signo = algunos lenguajes de programacin admiten


operadores tales como: , := El tipo de expresin debe ser del mismo tipo que el de
la variable, en caso contrario en la fase de compilacin se producira un error de tipos.
Aunque a la fecha existen lenguajes de programacin con una potente herramienta
para la conversin de datos (tal es el caso de Visual Basic), no es recomendable
asignar valores de un tipo diferente a variables de otro tipo.
Reglas De Las Sentencias De Asignacin
1. Una variable al lado derecho de la sentencia de asignacin debe de tener un
valor antes de que la sentencia se ejecute. Hasta que un programa le de un
valor a una variable, esa variable no tiene valor.
Ejemplo:
C = A + 1 Si la variable A no tiene valor antes de ejecutarse la expresin, se
producir un error lgico.
2. En la izquierda de una sentencia de asignacin solo pueden existir
identificadores. Por consiguiente no es vlido lo siguiente:
Sueldo - Descuentos = 425
5=B
Ejemplos vlidos:
A = 10
Pi = 3.1416
NSueldo = Sueldo + aumento
3. La operacin de asignacin es destructiva debido a que el valor almacenado en
una variable se pierde o se destruye y se sustituye por el nuevo valor de la
sentencia de asignacin.
4. Es posible utilizar el mismo nombre de identificador en ambos lados del
operador de asignacin. Ejemplo:
N=2
N=N+4
Desde el punto de vista matemtico carece de sentido.
Clasificacin de Asignacin
Por su Contenido:
- Asignacin Aritmtica
- Asignacin Alfanumrica
- Asignacin Lgica
Por su Uso:
- Asignacin de Trabajo
- Contadores

- Acumuladores
EXPRESIONES Y OPERACIONES ARITMTICAS
El lenguaje de programacin incorpora una serie de operadores que permiten realizar
clculos y escribir expresiones que realicen una serie de operaciones sobre los datos.

+ (suma)
- (resta)

* (multiplicacin)

/ (divisin entera o con decimales segn operandos)

% (resto de la divisin)

Todos estos operadores aritmticos deben utilizarse con dos operandos, situados
delante y detrs de los operadores, pudindose encadenar las operaciones. Se
pueden
incluir
espacios
para
aclarar
ms
el
cdigo.
Los datos usados como operandos deben ser de alguno de los tipos de datos
numricos (byte, short, int, long, float o double). Ejemplos:
4+3
8-5+2

6*2/3

8.5 - 3 + 4.3

El resultado de la divisin tendr decimales o no segn el tipo de operandos que se


utilice. Si los dos son enteros, el resultado no tendr decimales, pero si al menos uno
de los operandos es de tipo numrico real (float o double) el resultado ser de ese
tipo. Ejemplos:
8 / 2 resulta 4
7 / 2 resulta 3

7.0 / 2 resulta 3.5

7 / 2.0 resulta 3.5

7.4 / 2 resulta 3.7

8 / 2.5 resulta 3.2

8.5 / 2.5 resulta 3.4

Es posible modificar el tipo de dato de cualquier operando indicando delante el nuevo


tipo de dato entre parntesis. As se hace una conversin de tipo:
(double)7 / 2 resulta 3.5
7 / (float)2 resulta 3.5
El operador resto se debe utilizar con tipos de datos numricos enteros. El resultado
ser el resto de la divisin entre los dos operandos. Ejemplos:
7 % 2 resulta 1
8 % 3 resulta 2

El resultado de cualquier operacin aritmtica ser del tipo de dato ms grande que se
utilice en los operandos. Por ejemplo, si se hace una operacin entre dos nmeros
enteros (int) el resultado ser del mismo tipo, pero si se hace entre un int y un long es
resultado es de tipo long. Ejemplos:
2147483647 * 2 resulta un dato incorrecto, en concreto -2, porque se estn
multiplicando dos int y el resultado sobrepasa el lmite de los enteros.
2147483647L * 2 resulta 4294967294 porque el primer operando es de tipo
long (se ha indicado L al final).
Al igual que en las expresiones matemticas habituales, los operadores aritmticos y
en general todos los operadores, tienen un orden de precedencia:
1. Multiplicacin (*), Divisin (/) y Resto (%)
2. Suma (+) y Resta (-)
Dentro del mismo orden de precedencia, las operaciones se realizarn en orden de
izquierda a derecha. Si es necesario cambiar el orden de precedencia, se deben
utilizar parntesis de la forma habitual.
Ejemplos:
4 + 3 * 2 resulta 10 (4+6)
(4 + 3) * 2 resulta 14 (7*2)

4 / 2 * 3 resulta 6

Utilizando la sentencia System.out.println(); se muestra, por salida estndar, el


resultado de cualquier expresin aritmtica o de cualquier otro tipo.
Ejemplos:
System.out.println((4 + 3) * 2);
Muestra 14
System.out.println("(4 + 3) * 2");
Muestra (4 + 3) * 2 ya que lo considera una cadena de caracteres
Los caracteres pueden ser utilizados para realizar clculos aritmticos. En caso de que
aparezca algn carcter en una expresin aritmtica, se toma el valor numrico que le
corresponde a cada carcter en la tabla de codificacin Unicode.
Ejemplos:

'A' + 1 resulta 66, ya que el carcter 'A' tiene el cdigo 65.


(char)('A' + 1) resulta 'B' ya que se ha hecho una conversin de tipos del
resultado, convirtiendo el valor 66 a su correspondiente carcter.

Operaciones de entrada y salida


Las operaciones que realiza el computador tienen sentido cuando se pueden ingresar
y obtener datos. Estas operaciones se pueden realizar con dispositivos como teclados,
pantallas, impresoras, etc.

You might also like