SlideShare ist ein Scribd-Unternehmen logo
1 von 14
1
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
2
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Introducción a la asignatura.
La programación está en todas partes. desde los motores de búsqueda que nos ayudan a encontrar
información pasando por las cajas registradoras de los supermercados, hasta llegar a los software qu
se usan en el diseño de estructuras y mucho más; vivimos en un mundo construido con los resultados
de la programación de computadores.
Pero si la computadora pudiera leer nuestra mente y realizar de forma automática las acciones que
queremos que haga, el mundo sería otro (y no existirían los programadores.)
Afortunadamente esto sólo ocurre en la ciencia ficción. En la vida real las cosas suceden de una forma
más primitiva, la computadora sólo hace aquello que el programador le indica hacer; si el programador
es bueno, la computadora es útil; si no, la computadora es un gasto inútil.
Verdaderamente es importante que el programador sepa darle instrucciones a la computadora. El fin
último para aprender a programar es la programación, es decir darle órdenes a una herramienta llamada
computadora. Internamente estas manejan los datos en formato binario (0 y 1) y desconocen si lo
almacenado es importante o no, incluso desconocen el significado de lo que almacenan.
La finalidad básica de la programación es solucionar problemas mediante el ordenador. Al igual que
cualquier disciplina debe ser progresivo su aprendizaje, Primero hay que aprender a resolver problemas
sencillos y más adelante intentar resolver problemas complejos que requieran más herramientas.
Por ello es importante comprender los conceptos paso por paso Y luego seguir adelante emprendiendo
el desarrollo de programas para convertirse en un excelente profesional, porque la programación se
considera una disciplina que se fundamenta en una teoría y una propuesta metodológica y en un
conjunto de técnicas de diseño; las cuales han surgido de la investigación y experiencia a lo largo de
los años para que la programación sea una tarea eficaz (que brinde los resultados esperados) y
eficiente (en un tiempo de desarrollo razonable).
Evidentemente en el campo laboral, la eficacia y eficiencia son valores muy apreciados en las empresas
y por este motivo es necesario aprender a programar con cierto grado de destreza, construyendo
programas correctos en un tiempo razonable. Para conseguirlo necesitaremos practicar mucho.
3
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Unidad 1. Conceptos básicos de la
programación.
Tema 1. Introducción a la programación.
Los lenguajes de los humanos y los lenguajes de la máquina son muy diferentes,
ya que las característica de las personas y de las máquinas son muy diferentes.
Una computadora es una máquina y como cualquiera debe encenderse y luego
conducirse o controlarse para hacer la tarea que se pretende realizar. En un
automóvil el control es proporcionado por el conductor quien se sienta en su
interior y lo dirige. En una computadora, el conductor es un conjunto de
instrucciones llamado programa de computadora que opera la computadora con
el fin de producir un resultado específico.
Los lenguajes de programación sirven para escribir programas que permiten la
comunicación entre el usuario y la máquina, los programadores escriben
instrucciones en diversos lenguajes de programación, algunos de estos
lenguajes los comprende directamente la computadora, mientras que otros
requieren pasos intermedios de traducción. en la actualidad se utilizan cientos de
lenguajes de computación, los cuales pueden dividirse en:
1. Lenguajes de máquina.
2. Lenguajes ensambladores.
3. Lenguajes de alto nivel.
En su nivel más fundamental los únicos programas que pueden usarse en
realidad para operar una computadora, son los programas en lenguaje de
máquina, los cuales también se conocen como programas ejecutables o
ejecutables que consisten en una secuencia de instrucciones compuestas por
números binarios:
4
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
● 11000000 00000000001 000000000010
● 11110000 00000000010 000000000011
Los lenguajes máquina están escritos en lenguaje directamente inteligibles por la
computadora ya que sus instrucciones son cadenas binarias (Cadenas por series
de caracteres - dígitos - 0 y 1 buenos días) que especifican una operación y las
posición (dirección) de memoria implicada en la operación. El código máquina es
el conocido código binario.
Los bits son los ceros y unos manejados internamente por la computadora. Son
la unidad básica de almacenamiento y comunicación de información dentro de la
computadora, y son procesados con suma eficiencia por el procesador de la
computadora. Una operación tan simple como una suma o una comparación
puede consumir grandes recursos de procesamiento, de ahí que los
procesadores actuales deben realizar millones de operaciones por segundo.
Las instrucciones en lenguaje máquina, constan de dos partes una instrucción y
una dirección. La instrucción, - opcode, código de operación -, Es el conjunto de
bits en el extremo izquierdo de la instrucción e indica a la computadora la
operación a realizar, tal como sumar, restar, multiplicar, etc. mientras que los bits
en el extremo derecho especifican la dirección de memoria de los datos que se
usarán.
Pero como cada clase de computadora como IBM, Apple, Hewlet Packard tenían
su propio lenguaje de máquina particular era muy tedioso y tardado escribir
programas en lenguaje máquina.
La programación en lenguaje máquina era demasiado lenta y tediosa para la
mayoría de los programadores. en lugar de utilizar cadenas de números, los
programadores comenzaron a utilizar abreviaturas del inglés para representar
operaciones básicas de la computadora y formaron las bases de los lenguajes
ensambladores. estos programas traductores se desarrollaron para convertir
programas del lenguaje ensamblador al lenguaje máquina.
5
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Así fue como surgieron los lenguajes de programación ensambladores que
usaban símbolos en forma de palabras en vez de códigos binarios y etiquetas
para direcciones de memoria; pero luego estos programas en lenguaje
ensamblador deben traducirse a un programa de lenguaje de máquina antes de
poderse ejecutar en las computadoras. El lenguaje de bajo nivel por excelencia
es el ensamblador (assembly language)
Tanto los lenguajes de máquina como los ensambladores se clasifican como
lenguajes de bajo nivel, y están limitados por qué sólo pueden usarse con un
tipo de computadora específica para la cual fueron escritos. Por contraste surgen
los lenguajes de alto nivel y cuyas instrucciones parecen lenguajes escritos como
Inglés y pueden ejecutarse en una variedad de tipos de computadoras. Visual
Basic, C, C++, Java, etc. son ejemplos de lenguajes de alto nivel y sus
instrucciones son parecidas a:
● resultado = (primero + segundo) * tercero;
Los lenguajes de alto nivel son los más utilizados por los programadores. Están
diseñados para que las personas escriban y entiendan los programas de un modo
mucho más fácil que los lenguajes máquina y ensambladores. Otra razón es que
un programa escrito en lenguaje de alto nivel es independiente de la máquina es
decir las instrucciones del programa de la computadora no dependen del
hardware o de la computadora en particular. Por tanto, los programas escritos en
lenguaje de alto nivel son portables o transportables lo que significa poder
ejecutarse con poca o ninguna modificación en diferentes tipos de computadora.
Ventajas de los lenguajes de alto nivel.
1. La formación de los programadores es relativamente más corta en tiempo.
2. La escrituras de los programas se basa en reglas sintácticas similares a los
lenguajes humanos.
3. Las modificaciones y puesta a punto son más fáciles.
4. Se reduce el costo de los programas.
5. Facilidad en la transportación.
6
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Inconvenientes de los lenguajes de alto nivel:
1. Mayor tiempo de puesta a punto al necesitarse diferentes traducciones del
programa fuente para conseguir el programa definitivo.
2. No se aprovechan los recursos internos de la máquina, que se explotan
mejor en los lenguajes máquina y ensambladores.
3. Aumento del uso de memoria.
4. El tiempo de ejecución de los programas es mucho mayor.
Los programas escritos en un lenguaje de computadora de alto o bajo nivel se
conocen como programas fuentes y código fuente. Una vez escrito un programa
en lenguaje de alto nivel también debe traducirse como un programa
ensamblador de bajo nivel a lenguaje máquina de la computadora en que se
ejecuta esta traducción puede lograrse de forma interpretada o de forma
compilada.
Cada declaración en un programa fuente de alto nivel es traducida de manera
individual y ejecutada inmediatamente después de la traducción del lenguaje de
programación usado, esto se llama lenguaje interpretado y el programa que hace
la traducción se llama intérprete.
Intérprete es un traductor que toma un programa fuente, lo traduce y a
continuación lo ejecuta. Cuando todas las instrucciones en un programa fuente
de alto nivel son producidas como una unidad completa antes que cualquier
declaración sea ejecutada, el lenguaje de programación usado se llama
compilado. En este caso el programa que hace la traducción se llama compilador.
Pueden existir tanto versiones compiladas como interpretadas de un lenguaje,
aunque predomina una. C++ es predominantemente compilado.
El programa fuente debe ser introducido usando un programa editor, el cual es
un procesador de palabras que forma parte del ambiente de desarrollo
proporcionado por el compilador. La introducción del código sólo puede
comenzar después que una aplicación se ha analizado y comprendido en forma
minuciosa y el diseño del programa ha sido planeado con cuidado.
7
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Pasar un programa fuente a un programa en lenguaje máquina comienza con el
compilador, la salida producida por el compilador se llama programa objeto, el
cual es una versión en lenguaje máquina del código fuente. En casi todos los
casos su código fuente usará código preprogramado existente con códigos que
ha escrito con anterioridad o código proporcionado por el compilador, éste podría
incluir código matemático para encontrar una raíz cuadrada o código que se está
utilizando de otra aplicación.
Fases de la compilación:
1. Escritura del programa fuente con un editor (programa que permite a una
computadora actuar de modo similar a una máquina de escribir) y guardarlo
en un dispositivo de almacenamiento.
2. Introducir el programa fuente en memoria.
3. Compilar el programa con el compilador del lenguaje.
4. Verificar y corregir errores de compilación.
5. Obtener el programa objeto.
6. Obtener el programa ejecutable.
7. Ejecutar el programa y, si no existen errores, obtener la salida del
programa.
Además de clasificar los lenguajes de programación como de alto nivel y bajo
nivel, también se clasifican por su orientación a procedimientos u objetos. En un
lenguaje orientado procedimientos, las instrucciones disponible se usan para
crear unidades independientes, conocidas como procedimientos. El propósito de
un procedimiento es aceptar datos como entrada y transformarlos de alguna
manera para producir resultados específicos como una salida. Hasta la década
de los años noventa, la mayor parte de los lenguajes de programación de alto
nivel eran orientados a procedimientos.
En un lenguaje de procedimientos un programa se construye a partir de conjuntos
de instrucciones, con cada conjunto nombrado como un procedimiento. Cada
procedimiento mueve los datos un paso más cerca de la salida final deseada.
8
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Los programas estructurados se crean usando un conjunto de estructura bien
definidas, organizadas en secciones de programación individuales, Cada una de
las cuales ejecuta una tarea específica que puede probarse y modificarse sin
perturbar otras secciones del programa.
Otro enfoque es la orientación a objetos, la motivación para los lenguajes
orientados a objetos fue el desarrollo de pantallas gráficas y soporte para
interfaces gráficas de usuario (GUI), Capaces de desplegar múltiples ventanas
conteniendo formato gráfico y texto. En tal ambiente cada ventana en la pantalla
puede considerarse un objeto con características asociadas como color posición
y tamaño. Usando enfoque orientado a objetos, un programa debe definir
primero los objetos que manipulara incluyendo una descripción de las
características generales de los objetos y unidades específicas para manipularlos
cómo cambiar el tamaño y la posición y transferir los datos entre objetos.
Los lenguajes orientados a objetos también deben soportar la reutilización de
código existente, lo cual elimina la necesidad de rivalidad y reexaminar código
nuevo o modificado.
Actividades:
1. Define los siguientes términos:
1.1. Programa de computadora.
1.2. Programación.
1.3. Lenguaje de programación.
1.4. Lenguaje de alto nivel.
1.5. Lenguaje de bajo nivel.
1.6. Lenguaje máquina.
1.7. Lenguaje ensamblador.
1.8. Lenguaje orientado a
procedimientos.
1.9. Lenguaje orientado a
objetos.
1.10. Programa fuente.
1.11. Compilador.
1.12. Intérprete.
2. Explique:
2.1. La diferencia entre lenguaje
de alto y bajo nivel.
2.2. La diferencia entre lenguaje
orientado a objetos y a
procedimientos.
2.3. Semejanzas y diferencias
entre ensambladores,
intérpretes y compiladores.
1
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Algoritmos.
También, en esta asignatura se pretenden desarrollar las estrategias para crear algoritmos que se
aplicarán en la resolución de problemas reales presentes a menudo en
aplicaciones para computadora. Casi todos los algoritmos son de utilidad práctica
y tienen un buen comportamiento y desempeño según su análisis por medio del
cual se hayan desarrollado.
Lo fundamental al iniciar el aprendizaje de la programación de computadoras, es
desarrollar la lógica necesaria para solucionar problemas en forma algorítmica,
independientemente de algún lenguaje de programación; esto es, aprender a
diseñar algoritmos usando un pseudolenguaje, y no hacerlo directamente con un
lenguaje.
Hoy día las personas sienten la necesidad de hacer uso de computadoras para
la solución de problemas y, debido a ésto, aprenden lenguajes y técnicas de
programación. Por eso para llegar a la solución de un problema se deben dar los
siguientes pasos:
1. Definición o análisis del problema.
2. Diseño del algoritmo.
3. Transformación del algoritmo en un programa.
4. Ejecución y validación del programa.
Lo que se pretende es lograr un diálogo permanente entre el usuario y la
máquina. Algoritmo viene de
Mohammed al-kowarizmi, un matemático persa que introdujo este término al
mundo, su apellido fue traducido al latín como algorismus, el que posteriormente
se conoció como algoritmo.
Un algoritmo es un método para resolver un problema. Debe presentarse como
una secuencia ordenada de instrucciones que siempre se ejecutan en tiempo
finito y con una cantidad de esfuerzo también finito. Los algoritmos tienen un
inicio y un final, son únicos y deben ser fácilmente identificables.
2
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Decir que un problema puede resolverse algorítmicamente implica, que es
posible escribir un programa de computadora que producirá la respuesta correcta
para cualquier entrada si se ejecuta durante un tiempo suficiente y se le da el
espacio de almacenamiento necesario.
Antiguamente se definía la Computadora como: “Una máquina provista de
dispositivos electrónicos, los que eran capaces de ejecutar operaciones
repetitivas de gran complejidad y a grandes velocidades”. Hoy, la idea ha
cambiado y se define como: “procesador de datos y sistemas de procesamiento
de la información”
La definición general de sistema se da como “conjunto de componentes
conectados e interactivos, con un propósito o fin único”, mientras que sistemas
de procesamiento de información son sistemas que transforman datos brutos en
información ordenada, con un significado lógico y útil.
Por la década de 1930 antes de la llegada de las computadoras, los matemático
trabajaban para Romanizar y estudiar el concepto de algoritmo como un conjunto
especificado de instrucciones sencillas a resolver para calcular una función. se
idearon e investigaron varios modelos de cómputos formales en este campo
llamado teoría de la computabilidad, describiendo y caracterizando los problemas
que podían resolverse algorítmicamente y los que no podían resolverse de esta
manera.
Aunque según la teoría de la computabilidad obviamente puede conocerse si los
problemas se resuelven con computadora no basta para decirnos si resulta
práctico hacerlo o no. Por ejemplo en un programa para jugar ajedrez las formas
de acomodar las piezas en el tablero son finitas y bajo ciertas reglas que una
partida debe terminar después de un número finito de movimientos. Entonces
dado que la computadora conocer resultado final de cada movimiento podrá
escoger la mejor opción según estimaciones y números de acomodo distintos de
las piezas en el tablero a medida que se va desarrollando el juego examinando
todas y cada una de las posibles combinaciones a ejecutar.
3
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Al describir un algoritmo para diversos problemas veremos que hay varias
técnicas de diseño que a menudo resultan útiles.
Antes que se escriba un programa, el programador debe comprender con
claridad qué datos se usarán, el resultado deseado y el procedimiento a utilizar
para producir este resultado. El procedimiento de solución se conoce como
algoritmo, el cual se define como una secuencia de paso a paso de instrucciones
que deben realizarse y describe cómo se procesarán los datos para producir las
salidas desearás. Un algoritmo responde la pregunta ¿qué método se usará para
resolver este problema?
Sólo después de comprender con claridad los datos que se usarán y seleccionar
los pasos específicos requeridos para producir el resultado deseado, podremos
codificar el programa. Es decir la programación es la traducción de un algoritmo
seleccionado a un lenguaje que pueda usar la computadora.
Los diferentes pasos o acciones de un algoritmo se expresan en los programas
como instrucciones, sentencias o proposiciones (normalmente, el término
instrucción se suele referir a los lenguajes de máquina y bajo nivel, reservando
la sentencia o proposición para los lenguajes de alto nivel.) La elaboración de un
programa requerirá conocer el juego o repertorio de instrucciones del lenguaje,
adelantaremos los tipos fundamentales de instrucciones que una computadora
es capaz de manipular y ejecutar. Las instrucciones básicas y comunes a todos
los lenguajes de programación se pueden resumir en cuatro grupos:
1. Instrucciones de entrada o salida. instrucciones de transferencia de información y datos
entre dispositivos periféricos ( teclado, impresora, unidad de disco, entre otros) y la
memoria central.
2. Instrucciones aritmético-lógica. instrucciones que ejecutan operaciones aritméticas
(suma, resta, multiplicación, división, potencia) o lógica (operaciones and, or, not, entre
otras.)
3. Instrucciones selectivas. Instrucciones que permiten la selección de tareas alternativas
en función de los resultados de diferentes expresiones condicionales.
4. Instrucciones repetitivas. instrucciones que permiten la repetición de secuencias de
instrucciones un número determinado de veces.
4
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Pasos a seguir para la solución de problemas:
1. Diseño del algoritmo que describe la secuencia ordenada de pasos que
conducen a la solución de un problema dado (Análisis del problema y
desarrollo del programa.)
2. Expresar el algoritmo como un programa en un lenguaje de programación
adecuado (fase de codificación.)
3. Ejecución y validación del programa por la computadora.
Sin algoritmo no podrá existir un programa, por eso es necesario diseñar el
algoritmo previamente, para su realización. En cada problema el algoritmo se
puede expresar como un lenguaje diferente de programación y ejecutarse en una
computadora distinta; sin embargo el algoritmo será siempre el mismo.
Los algoritmos son muy importantes, ya que de éstos va a depender el buen
funcionamiento de un programa. Los lenguajes de programación sólo expresan
lo que un algoritmo quiere decir y las computadoras llevan a cabo la ejecución.
Características de los algoritmos:
1. Debe ser preciso indicando la realización de cada paso ordenadamente.
2. Debe estar bien definido. Si se sigue un algoritmo más de una vez, los
resultados deben ser los mismos.
3. Debe tener un fin; es decir deberá ser finito. Si se sigue un algoritmo, éste
debe terminar en algún momento, o sea debe tener un número determinado
de pasos.
5
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Técnicas para representar un algoritmo.
Las más conocidas para el desarrollo de un algoritmo son:
1. Pseudocódigo.
2. Diagrama de flujo o flujograma.
● Pseudocódigo: Es la representación de un algorítmo en una secuencia
lógica de actividades, a que llevarán en conjunto a la solución de un
problema.
● Diagrama de flujo: Son símbolos gráficos que representan a un algoritmo.
Estos símbolos están estandarizados, teniendo cada uno un significado
universal.
● Diagrama N-S (Nassi Schneiderman.)
Los lenguajes de programación.
Para la realización de un proceso, el procesador deberá recibir el algoritmo
adecuado, siendo éste capaz de interpretarlo.
1. Entender las instrucciones que cada paso expresa.
2. Ejecutar las operaciones correspondientes.
El algoritmo se expresará por medio de un formato que se denomina programa.
El programa se desarrolla en un lenguaje de programación y las operaciones que
llevarán a expresar un algoritmo en forma de programa se llama programación.
Existen importantes razones para el estudio de las Técnicas de Programación, y
éstas son:
1. El desarrollo de algoritmos eficientes es una habilidad que se trata de mejorar siempre.
2. Se busca la mejora en el uso del lenguaje de programación disponible.
3. Enriquecer el vocabulario con construcciones útiles sobre programación.
4. Tener la capacidad para elegir el mejor lenguaje de programación.
5. Facilitar el aprendizaje de cualquier otro lenguaje.
6. Facilitar el diseño de un lenguaje nuevo.
6
INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
Como ya se mencionó, actualmente existen tres tipos de lenguaje utilizados:
1. Lenguaje de máquina.
2. Lenguaje de bajo nivel.
3. Lenguaje de alto nivel.
Variables y tipos de datos primitivos.
El motivo principal de la computadora es, primordialmente, el manejo de los datos
o de la información ingresada para luego de procesarla arrojar los resultados. La
computadora opera con objetos, los cuales son descritos por expresiones
denominados datos. Son varios los tipos de datos con los que la computadora
puede trabajar.
Existen dos grupos de tipos de datos: Los que no tienen estructura, llamados
Simples, y los que son estructurados, llamados Compuestos. La variedad con
respecto a los tipos de datos son representados de distintas formas en la
computadora. A nivel de máquina un dato es una secuencia o conjunto de bits
(dígitos 0 ó 1).
Dato: Cuando se habla de dato, o se da la expresión general de dato, el cual
describe los objetos con los que opera una computadora. Los algoritmos y
programas correspondientes operan sobre datos. Los datos de entrada se
transforman gracias al programa y se traducen a lenguaje máquina, los mismos
que son ejecutados por la computadora. Los tipos de datos que existen son dos:
Simples y Compuestos.
1. Datos numéricos.
1.1. Tipo de dato numérico entero (integer.)
1.2. Tipo de dato numérico real (real.)
2. Datos lógicos.
3. Datos de tipo carácter.
4. Datos de tipo cadena.
5. Constantes y variables.
6. Expresiones.

Weitere ähnliche Inhalte

Was ist angesagt?

TIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACIONTIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACIONPEDRO Borja
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacionElder Giron
 
Máquinas de Turing
Máquinas de TuringMáquinas de Turing
Máquinas de TuringTania Arroyo
 
Cuadro comparativo.
Cuadro comparativo.Cuadro comparativo.
Cuadro comparativo.carmenmc2017
 
Presentacion de algoritmos
Presentacion de algoritmosPresentacion de algoritmos
Presentacion de algoritmossistemas2011
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.pptEliezer Cordova
 
Introducción a la Programación :: Unidad 01 :: Parte 01
Introducción a la Programación :: Unidad 01 :: Parte 01Introducción a la Programación :: Unidad 01 :: Parte 01
Introducción a la Programación :: Unidad 01 :: Parte 01Facultad de Ciencias y Sistemas
 
Estructura de Datos: Recursividad
Estructura de Datos: RecursividadEstructura de Datos: Recursividad
Estructura de Datos: RecursividadYanahui Bc
 
Programacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a EventosProgramacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a EventosNICK
 
Conceptos basicos de la programacion
Conceptos basicos de la programacionConceptos basicos de la programacion
Conceptos basicos de la programacionyamy matin
 
Fundamentos del computador
Fundamentos del computadorFundamentos del computador
Fundamentos del computadorlgordian
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacionyamy matin
 
Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Fj Lezama
 
tipos de lenguaje de programación
tipos de lenguaje de programacióntipos de lenguaje de programación
tipos de lenguaje de programaciónpefrayo5
 
3. Representación del conocimiento y razonamiento.
3. Representación del conocimiento y razonamiento.3. Representación del conocimiento y razonamiento.
3. Representación del conocimiento y razonamiento.Humberto Chalate Jorge
 
Proyecto para programacion y estructura
Proyecto para programacion y estructuraProyecto para programacion y estructura
Proyecto para programacion y estructuraChristian Torres
 
Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++Diego Maxdj Chicaiza
 

Was ist angesagt? (20)

TIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACIONTIPOS DE LENGUAJES DE PROGRAMACION
TIPOS DE LENGUAJES DE PROGRAMACION
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Máquinas de Turing
Máquinas de TuringMáquinas de Turing
Máquinas de Turing
 
Cuadro comparativo.
Cuadro comparativo.Cuadro comparativo.
Cuadro comparativo.
 
Presentacion de algoritmos
Presentacion de algoritmosPresentacion de algoritmos
Presentacion de algoritmos
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.ppt
 
Introducción a la Programación :: Unidad 01 :: Parte 01
Introducción a la Programación :: Unidad 01 :: Parte 01Introducción a la Programación :: Unidad 01 :: Parte 01
Introducción a la Programación :: Unidad 01 :: Parte 01
 
Estructura de Datos: Recursividad
Estructura de Datos: RecursividadEstructura de Datos: Recursividad
Estructura de Datos: Recursividad
 
Programacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a EventosProgramacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a Eventos
 
Conceptos basicos de la programacion
Conceptos basicos de la programacionConceptos basicos de la programacion
Conceptos basicos de la programacion
 
Fundamentos del computador
Fundamentos del computadorFundamentos del computador
Fundamentos del computador
 
Calculadora con operaciones básicas en java
Calculadora con operaciones básicas en javaCalculadora con operaciones básicas en java
Calculadora con operaciones básicas en java
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacion
 
Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.
 
tipos de lenguaje de programación
tipos de lenguaje de programacióntipos de lenguaje de programación
tipos de lenguaje de programación
 
3. Representación del conocimiento y razonamiento.
3. Representación del conocimiento y razonamiento.3. Representación del conocimiento y razonamiento.
3. Representación del conocimiento y razonamiento.
 
Proyecto para programacion y estructura
Proyecto para programacion y estructuraProyecto para programacion y estructura
Proyecto para programacion y estructura
 
Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++
 
Analisis Semantico
Analisis Semantico Analisis Semantico
Analisis Semantico
 
python
pythonpython
python
 

Ähnlich wie Introducción a la Programación :: Unidad 01 :: Parte 01

Ähnlich wie Introducción a la Programación :: Unidad 01 :: Parte 01 (20)

Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de Algoritmos
 
Lenguajes de desarrollo (programación)
Lenguajes de desarrollo (programación)Lenguajes de desarrollo (programación)
Lenguajes de desarrollo (programación)
 
Introduccion a la prgrmacion.
Introduccion a la prgrmacion.Introduccion a la prgrmacion.
Introduccion a la prgrmacion.
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
Ts101924450
Ts101924450Ts101924450
Ts101924450
 
BRANDON VELASQUEZ
BRANDON VELASQUEZBRANDON VELASQUEZ
BRANDON VELASQUEZ
 
Ts101924450
Ts101924450Ts101924450
Ts101924450
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
QUE ES PROGRAMACION DE SISTEMAS
QUE ES PROGRAMACION DE SISTEMASQUE ES PROGRAMACION DE SISTEMAS
QUE ES PROGRAMACION DE SISTEMAS
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACION
 
Universidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programaciónUniversidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programación
 
Tema 1.3.- Programación
Tema 1.3.- ProgramaciónTema 1.3.- Programación
Tema 1.3.- Programación
 
Investigación Ensambladores y Decompiladores
Investigación Ensambladores y DecompiladoresInvestigación Ensambladores y Decompiladores
Investigación Ensambladores y Decompiladores
 
Ensambladores y Compiladores
Ensambladores y CompiladoresEnsambladores y Compiladores
Ensambladores y Compiladores
 
02- Clase 1 - UD2 - Lenguajes.pdf
02- Clase 1 - UD2 -  Lenguajes.pdf02- Clase 1 - UD2 -  Lenguajes.pdf
02- Clase 1 - UD2 - Lenguajes.pdf
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Programacion
ProgramacionProgramacion
Programacion
 

Mehr von Facultad de Ciencias y Sistemas

Introducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaIntroducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaFacultad de Ciencias y Sistemas
 

Mehr von Facultad de Ciencias y Sistemas (20)

Ejercicios HTML 5
Ejercicios HTML 5Ejercicios HTML 5
Ejercicios HTML 5
 
CSS3
CSS3CSS3
CSS3
 
09 ordenamiento-en-vectores-en-c
09 ordenamiento-en-vectores-en-c09 ordenamiento-en-vectores-en-c
09 ordenamiento-en-vectores-en-c
 
08 mas-de-vectores-en-c
08 mas-de-vectores-en-c08 mas-de-vectores-en-c
08 mas-de-vectores-en-c
 
07 vectores-en-c final
07 vectores-en-c final07 vectores-en-c final
07 vectores-en-c final
 
06 clases-en-c
06 clases-en-c06 clases-en-c
06 clases-en-c
 
05 cadenas-de-caracteres-en-c
05 cadenas-de-caracteres-en-c05 cadenas-de-caracteres-en-c
05 cadenas-de-caracteres-en-c
 
04 mas-estructuras-iterativas-en-c
04 mas-estructuras-iterativas-en-c04 mas-estructuras-iterativas-en-c
04 mas-estructuras-iterativas-en-c
 
03 estructuras-iterativas-en-c
03 estructuras-iterativas-en-c03 estructuras-iterativas-en-c
03 estructuras-iterativas-en-c
 
02 mas-de-las-estructuras-de-programacion-en-c
02 mas-de-las-estructuras-de-programacion-en-c02 mas-de-las-estructuras-de-programacion-en-c
02 mas-de-las-estructuras-de-programacion-en-c
 
01 estructuras-de-programacion-en-c
01 estructuras-de-programacion-en-c01 estructuras-de-programacion-en-c
01 estructuras-de-programacion-en-c
 
Procesamiento del lenguaje natural con python
Procesamiento del lenguaje natural con pythonProcesamiento del lenguaje natural con python
Procesamiento del lenguaje natural con python
 
Actividades de aprendizaje en Moodle
Actividades de aprendizaje en MoodleActividades de aprendizaje en Moodle
Actividades de aprendizaje en Moodle
 
Creación de grupos en Moodle
Creación de grupos en MoodleCreación de grupos en Moodle
Creación de grupos en Moodle
 
Introducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaIntroducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con Java
 
Como crear un diagrama de clases
Como crear un diagrama de clasesComo crear un diagrama de clases
Como crear un diagrama de clases
 
Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02
 
Diagrama de clases - Ejemplo monográfico 01
Diagrama de clases - Ejemplo monográfico 01Diagrama de clases - Ejemplo monográfico 01
Diagrama de clases - Ejemplo monográfico 01
 
Otro ejemplo de diagrama de clases UML
Otro ejemplo de diagrama de clases UMLOtro ejemplo de diagrama de clases UML
Otro ejemplo de diagrama de clases UML
 
Un ejemplo de diagrama de clases
Un ejemplo de diagrama de clasesUn ejemplo de diagrama de clases
Un ejemplo de diagrama de clases
 

Kürzlich hochgeladen

Tema 4 Rocas sedimentarias, características y clasificación
Tema 4 Rocas sedimentarias, características y clasificaciónTema 4 Rocas sedimentarias, características y clasificación
Tema 4 Rocas sedimentarias, características y clasificaciónIES Vicent Andres Estelles
 
Escrito administrativo técnico y comerciales
Escrito administrativo técnico y comercialesEscrito administrativo técnico y comerciales
Escrito administrativo técnico y comercialesmelanieteresacontrer
 
PPT Protocolo de desregulación emocional.pptx
PPT Protocolo de desregulación emocional.pptxPPT Protocolo de desregulación emocional.pptx
PPT Protocolo de desregulación emocional.pptxKarenSepulveda23
 
SECUENCIA DIDÁCTICA Matemática 1er grado
SECUENCIA  DIDÁCTICA Matemática 1er gradoSECUENCIA  DIDÁCTICA Matemática 1er grado
SECUENCIA DIDÁCTICA Matemática 1er gradoAnaMara883998
 
U2_EA2_descargable TICS PRESENCIAL 2.pdf
U2_EA2_descargable TICS PRESENCIAL 2.pdfU2_EA2_descargable TICS PRESENCIAL 2.pdf
U2_EA2_descargable TICS PRESENCIAL 2.pdfJavier Correa
 
La poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didáctica
La poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didácticaLa poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didáctica
La poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didácticaIGNACIO BALLESTER PARDO
 
GUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdf
GUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdfGUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdf
GUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdfNELLYKATTY
 
Herbert James Drape. Erotismo y sensualidad.pptx
Herbert James Drape. Erotismo y sensualidad.pptxHerbert James Drape. Erotismo y sensualidad.pptx
Herbert James Drape. Erotismo y sensualidad.pptxArs Erótica
 
CIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCERO
CIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCEROCIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCERO
CIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCEROCEIP TIERRA DE PINARES
 
EL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLA
EL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLAEL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLA
EL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...
La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...
La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...Unidad de Espiritualidad Eudista
 
Tecnología educativa en la era actual .pptx
Tecnología educativa en la era actual .pptxTecnología educativa en la era actual .pptx
Tecnología educativa en la era actual .pptxJulioSantin2
 
ficha de aplicacion para estudiantes El agua para niños de primaria
ficha de aplicacion para estudiantes El agua para niños de primariaficha de aplicacion para estudiantes El agua para niños de primaria
ficha de aplicacion para estudiantes El agua para niños de primariamichel carlos Capillo Dominguez
 
explicacionsobrelasemanasanta-190411100653.ppt
explicacionsobrelasemanasanta-190411100653.pptexplicacionsobrelasemanasanta-190411100653.ppt
explicacionsobrelasemanasanta-190411100653.pptjosemanuelcremades
 
21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdf
21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdf21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdf
21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdfceeabarcia
 

Kürzlich hochgeladen (20)

Actividad de bienestar docente 2016 Pereira
Actividad de bienestar docente 2016 PereiraActividad de bienestar docente 2016 Pereira
Actividad de bienestar docente 2016 Pereira
 
Tema 4 Rocas sedimentarias, características y clasificación
Tema 4 Rocas sedimentarias, características y clasificaciónTema 4 Rocas sedimentarias, características y clasificación
Tema 4 Rocas sedimentarias, características y clasificación
 
Escrito administrativo técnico y comerciales
Escrito administrativo técnico y comercialesEscrito administrativo técnico y comerciales
Escrito administrativo técnico y comerciales
 
VISITA DE ESTUDO À CRUZ VERMELHA _
VISITA DE ESTUDO À CRUZ VERMELHA                   _VISITA DE ESTUDO À CRUZ VERMELHA                   _
VISITA DE ESTUDO À CRUZ VERMELHA _
 
PPT Protocolo de desregulación emocional.pptx
PPT Protocolo de desregulación emocional.pptxPPT Protocolo de desregulación emocional.pptx
PPT Protocolo de desregulación emocional.pptx
 
SECUENCIA DIDÁCTICA Matemática 1er grado
SECUENCIA  DIDÁCTICA Matemática 1er gradoSECUENCIA  DIDÁCTICA Matemática 1er grado
SECUENCIA DIDÁCTICA Matemática 1er grado
 
U2_EA2_descargable TICS PRESENCIAL 2.pdf
U2_EA2_descargable TICS PRESENCIAL 2.pdfU2_EA2_descargable TICS PRESENCIAL 2.pdf
U2_EA2_descargable TICS PRESENCIAL 2.pdf
 
La poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didáctica
La poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didácticaLa poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didáctica
La poesía del encarcelamiento de Raúl Zurita en el aula: una propuesta didáctica
 
GUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdf
GUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdfGUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdf
GUÍA SIANET - Agenda - Tareas - Archivos - Participaciones - Notas.pdf
 
Conducta ética en investigación científica.pdf
Conducta ética en investigación científica.pdfConducta ética en investigación científica.pdf
Conducta ética en investigación científica.pdf
 
Herbert James Drape. Erotismo y sensualidad.pptx
Herbert James Drape. Erotismo y sensualidad.pptxHerbert James Drape. Erotismo y sensualidad.pptx
Herbert James Drape. Erotismo y sensualidad.pptx
 
CIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCERO
CIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCEROCIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCERO
CIENCIAS SOCIALES SEGUNDO TRIMESTRE TERCERO
 
EL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLA
EL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLAEL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLA
EL ECLIPSE DE LA PAZ (cuento literario). Autor y diseñador JAVIER SOLIS NOYOLA
 
La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...
La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...
La Congregación de Jesús y María, conocida también como los Eudistas, fue fun...
 
Tecnología educativa en la era actual .pptx
Tecnología educativa en la era actual .pptxTecnología educativa en la era actual .pptx
Tecnología educativa en la era actual .pptx
 
Power Point E. Sab: Adoración sin fin...
Power Point E. Sab: Adoración sin fin...Power Point E. Sab: Adoración sin fin...
Power Point E. Sab: Adoración sin fin...
 
Tema 5.- BASES DE DATOS Y GESTIÓN DE LA INF. PARA EL MARKETING.pdf
Tema 5.- BASES DE DATOS Y GESTIÓN DE LA INF. PARA EL MARKETING.pdfTema 5.- BASES DE DATOS Y GESTIÓN DE LA INF. PARA EL MARKETING.pdf
Tema 5.- BASES DE DATOS Y GESTIÓN DE LA INF. PARA EL MARKETING.pdf
 
ficha de aplicacion para estudiantes El agua para niños de primaria
ficha de aplicacion para estudiantes El agua para niños de primariaficha de aplicacion para estudiantes El agua para niños de primaria
ficha de aplicacion para estudiantes El agua para niños de primaria
 
explicacionsobrelasemanasanta-190411100653.ppt
explicacionsobrelasemanasanta-190411100653.pptexplicacionsobrelasemanasanta-190411100653.ppt
explicacionsobrelasemanasanta-190411100653.ppt
 
21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdf
21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdf21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdf
21 MARZO DIA INTERNACIONAL DOS BOSQUES.pdf
 

Introducción a la Programación :: Unidad 01 :: Parte 01

  • 1. 1 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT
  • 2. 2 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Introducción a la asignatura. La programación está en todas partes. desde los motores de búsqueda que nos ayudan a encontrar información pasando por las cajas registradoras de los supermercados, hasta llegar a los software qu se usan en el diseño de estructuras y mucho más; vivimos en un mundo construido con los resultados de la programación de computadores. Pero si la computadora pudiera leer nuestra mente y realizar de forma automática las acciones que queremos que haga, el mundo sería otro (y no existirían los programadores.) Afortunadamente esto sólo ocurre en la ciencia ficción. En la vida real las cosas suceden de una forma más primitiva, la computadora sólo hace aquello que el programador le indica hacer; si el programador es bueno, la computadora es útil; si no, la computadora es un gasto inútil. Verdaderamente es importante que el programador sepa darle instrucciones a la computadora. El fin último para aprender a programar es la programación, es decir darle órdenes a una herramienta llamada computadora. Internamente estas manejan los datos en formato binario (0 y 1) y desconocen si lo almacenado es importante o no, incluso desconocen el significado de lo que almacenan. La finalidad básica de la programación es solucionar problemas mediante el ordenador. Al igual que cualquier disciplina debe ser progresivo su aprendizaje, Primero hay que aprender a resolver problemas sencillos y más adelante intentar resolver problemas complejos que requieran más herramientas. Por ello es importante comprender los conceptos paso por paso Y luego seguir adelante emprendiendo el desarrollo de programas para convertirse en un excelente profesional, porque la programación se considera una disciplina que se fundamenta en una teoría y una propuesta metodológica y en un conjunto de técnicas de diseño; las cuales han surgido de la investigación y experiencia a lo largo de los años para que la programación sea una tarea eficaz (que brinde los resultados esperados) y eficiente (en un tiempo de desarrollo razonable). Evidentemente en el campo laboral, la eficacia y eficiencia son valores muy apreciados en las empresas y por este motivo es necesario aprender a programar con cierto grado de destreza, construyendo programas correctos en un tiempo razonable. Para conseguirlo necesitaremos practicar mucho.
  • 3. 3 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Unidad 1. Conceptos básicos de la programación. Tema 1. Introducción a la programación. Los lenguajes de los humanos y los lenguajes de la máquina son muy diferentes, ya que las característica de las personas y de las máquinas son muy diferentes. Una computadora es una máquina y como cualquiera debe encenderse y luego conducirse o controlarse para hacer la tarea que se pretende realizar. En un automóvil el control es proporcionado por el conductor quien se sienta en su interior y lo dirige. En una computadora, el conductor es un conjunto de instrucciones llamado programa de computadora que opera la computadora con el fin de producir un resultado específico. Los lenguajes de programación sirven para escribir programas que permiten la comunicación entre el usuario y la máquina, los programadores escriben instrucciones en diversos lenguajes de programación, algunos de estos lenguajes los comprende directamente la computadora, mientras que otros requieren pasos intermedios de traducción. en la actualidad se utilizan cientos de lenguajes de computación, los cuales pueden dividirse en: 1. Lenguajes de máquina. 2. Lenguajes ensambladores. 3. Lenguajes de alto nivel. En su nivel más fundamental los únicos programas que pueden usarse en realidad para operar una computadora, son los programas en lenguaje de máquina, los cuales también se conocen como programas ejecutables o ejecutables que consisten en una secuencia de instrucciones compuestas por números binarios:
  • 4. 4 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT ● 11000000 00000000001 000000000010 ● 11110000 00000000010 000000000011 Los lenguajes máquina están escritos en lenguaje directamente inteligibles por la computadora ya que sus instrucciones son cadenas binarias (Cadenas por series de caracteres - dígitos - 0 y 1 buenos días) que especifican una operación y las posición (dirección) de memoria implicada en la operación. El código máquina es el conocido código binario. Los bits son los ceros y unos manejados internamente por la computadora. Son la unidad básica de almacenamiento y comunicación de información dentro de la computadora, y son procesados con suma eficiencia por el procesador de la computadora. Una operación tan simple como una suma o una comparación puede consumir grandes recursos de procesamiento, de ahí que los procesadores actuales deben realizar millones de operaciones por segundo. Las instrucciones en lenguaje máquina, constan de dos partes una instrucción y una dirección. La instrucción, - opcode, código de operación -, Es el conjunto de bits en el extremo izquierdo de la instrucción e indica a la computadora la operación a realizar, tal como sumar, restar, multiplicar, etc. mientras que los bits en el extremo derecho especifican la dirección de memoria de los datos que se usarán. Pero como cada clase de computadora como IBM, Apple, Hewlet Packard tenían su propio lenguaje de máquina particular era muy tedioso y tardado escribir programas en lenguaje máquina. La programación en lenguaje máquina era demasiado lenta y tediosa para la mayoría de los programadores. en lugar de utilizar cadenas de números, los programadores comenzaron a utilizar abreviaturas del inglés para representar operaciones básicas de la computadora y formaron las bases de los lenguajes ensambladores. estos programas traductores se desarrollaron para convertir programas del lenguaje ensamblador al lenguaje máquina.
  • 5. 5 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Así fue como surgieron los lenguajes de programación ensambladores que usaban símbolos en forma de palabras en vez de códigos binarios y etiquetas para direcciones de memoria; pero luego estos programas en lenguaje ensamblador deben traducirse a un programa de lenguaje de máquina antes de poderse ejecutar en las computadoras. El lenguaje de bajo nivel por excelencia es el ensamblador (assembly language) Tanto los lenguajes de máquina como los ensambladores se clasifican como lenguajes de bajo nivel, y están limitados por qué sólo pueden usarse con un tipo de computadora específica para la cual fueron escritos. Por contraste surgen los lenguajes de alto nivel y cuyas instrucciones parecen lenguajes escritos como Inglés y pueden ejecutarse en una variedad de tipos de computadoras. Visual Basic, C, C++, Java, etc. son ejemplos de lenguajes de alto nivel y sus instrucciones son parecidas a: ● resultado = (primero + segundo) * tercero; Los lenguajes de alto nivel son los más utilizados por los programadores. Están diseñados para que las personas escriban y entiendan los programas de un modo mucho más fácil que los lenguajes máquina y ensambladores. Otra razón es que un programa escrito en lenguaje de alto nivel es independiente de la máquina es decir las instrucciones del programa de la computadora no dependen del hardware o de la computadora en particular. Por tanto, los programas escritos en lenguaje de alto nivel son portables o transportables lo que significa poder ejecutarse con poca o ninguna modificación en diferentes tipos de computadora. Ventajas de los lenguajes de alto nivel. 1. La formación de los programadores es relativamente más corta en tiempo. 2. La escrituras de los programas se basa en reglas sintácticas similares a los lenguajes humanos. 3. Las modificaciones y puesta a punto son más fáciles. 4. Se reduce el costo de los programas. 5. Facilidad en la transportación.
  • 6. 6 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Inconvenientes de los lenguajes de alto nivel: 1. Mayor tiempo de puesta a punto al necesitarse diferentes traducciones del programa fuente para conseguir el programa definitivo. 2. No se aprovechan los recursos internos de la máquina, que se explotan mejor en los lenguajes máquina y ensambladores. 3. Aumento del uso de memoria. 4. El tiempo de ejecución de los programas es mucho mayor. Los programas escritos en un lenguaje de computadora de alto o bajo nivel se conocen como programas fuentes y código fuente. Una vez escrito un programa en lenguaje de alto nivel también debe traducirse como un programa ensamblador de bajo nivel a lenguaje máquina de la computadora en que se ejecuta esta traducción puede lograrse de forma interpretada o de forma compilada. Cada declaración en un programa fuente de alto nivel es traducida de manera individual y ejecutada inmediatamente después de la traducción del lenguaje de programación usado, esto se llama lenguaje interpretado y el programa que hace la traducción se llama intérprete. Intérprete es un traductor que toma un programa fuente, lo traduce y a continuación lo ejecuta. Cuando todas las instrucciones en un programa fuente de alto nivel son producidas como una unidad completa antes que cualquier declaración sea ejecutada, el lenguaje de programación usado se llama compilado. En este caso el programa que hace la traducción se llama compilador. Pueden existir tanto versiones compiladas como interpretadas de un lenguaje, aunque predomina una. C++ es predominantemente compilado. El programa fuente debe ser introducido usando un programa editor, el cual es un procesador de palabras que forma parte del ambiente de desarrollo proporcionado por el compilador. La introducción del código sólo puede comenzar después que una aplicación se ha analizado y comprendido en forma minuciosa y el diseño del programa ha sido planeado con cuidado.
  • 7. 7 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Pasar un programa fuente a un programa en lenguaje máquina comienza con el compilador, la salida producida por el compilador se llama programa objeto, el cual es una versión en lenguaje máquina del código fuente. En casi todos los casos su código fuente usará código preprogramado existente con códigos que ha escrito con anterioridad o código proporcionado por el compilador, éste podría incluir código matemático para encontrar una raíz cuadrada o código que se está utilizando de otra aplicación. Fases de la compilación: 1. Escritura del programa fuente con un editor (programa que permite a una computadora actuar de modo similar a una máquina de escribir) y guardarlo en un dispositivo de almacenamiento. 2. Introducir el programa fuente en memoria. 3. Compilar el programa con el compilador del lenguaje. 4. Verificar y corregir errores de compilación. 5. Obtener el programa objeto. 6. Obtener el programa ejecutable. 7. Ejecutar el programa y, si no existen errores, obtener la salida del programa. Además de clasificar los lenguajes de programación como de alto nivel y bajo nivel, también se clasifican por su orientación a procedimientos u objetos. En un lenguaje orientado procedimientos, las instrucciones disponible se usan para crear unidades independientes, conocidas como procedimientos. El propósito de un procedimiento es aceptar datos como entrada y transformarlos de alguna manera para producir resultados específicos como una salida. Hasta la década de los años noventa, la mayor parte de los lenguajes de programación de alto nivel eran orientados a procedimientos. En un lenguaje de procedimientos un programa se construye a partir de conjuntos de instrucciones, con cada conjunto nombrado como un procedimiento. Cada procedimiento mueve los datos un paso más cerca de la salida final deseada.
  • 8. 8 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Los programas estructurados se crean usando un conjunto de estructura bien definidas, organizadas en secciones de programación individuales, Cada una de las cuales ejecuta una tarea específica que puede probarse y modificarse sin perturbar otras secciones del programa. Otro enfoque es la orientación a objetos, la motivación para los lenguajes orientados a objetos fue el desarrollo de pantallas gráficas y soporte para interfaces gráficas de usuario (GUI), Capaces de desplegar múltiples ventanas conteniendo formato gráfico y texto. En tal ambiente cada ventana en la pantalla puede considerarse un objeto con características asociadas como color posición y tamaño. Usando enfoque orientado a objetos, un programa debe definir primero los objetos que manipulara incluyendo una descripción de las características generales de los objetos y unidades específicas para manipularlos cómo cambiar el tamaño y la posición y transferir los datos entre objetos. Los lenguajes orientados a objetos también deben soportar la reutilización de código existente, lo cual elimina la necesidad de rivalidad y reexaminar código nuevo o modificado. Actividades: 1. Define los siguientes términos: 1.1. Programa de computadora. 1.2. Programación. 1.3. Lenguaje de programación. 1.4. Lenguaje de alto nivel. 1.5. Lenguaje de bajo nivel. 1.6. Lenguaje máquina. 1.7. Lenguaje ensamblador. 1.8. Lenguaje orientado a procedimientos. 1.9. Lenguaje orientado a objetos. 1.10. Programa fuente. 1.11. Compilador. 1.12. Intérprete. 2. Explique: 2.1. La diferencia entre lenguaje de alto y bajo nivel. 2.2. La diferencia entre lenguaje orientado a objetos y a procedimientos. 2.3. Semejanzas y diferencias entre ensambladores, intérpretes y compiladores.
  • 9. 1 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Algoritmos. También, en esta asignatura se pretenden desarrollar las estrategias para crear algoritmos que se aplicarán en la resolución de problemas reales presentes a menudo en aplicaciones para computadora. Casi todos los algoritmos son de utilidad práctica y tienen un buen comportamiento y desempeño según su análisis por medio del cual se hayan desarrollado. Lo fundamental al iniciar el aprendizaje de la programación de computadoras, es desarrollar la lógica necesaria para solucionar problemas en forma algorítmica, independientemente de algún lenguaje de programación; esto es, aprender a diseñar algoritmos usando un pseudolenguaje, y no hacerlo directamente con un lenguaje. Hoy día las personas sienten la necesidad de hacer uso de computadoras para la solución de problemas y, debido a ésto, aprenden lenguajes y técnicas de programación. Por eso para llegar a la solución de un problema se deben dar los siguientes pasos: 1. Definición o análisis del problema. 2. Diseño del algoritmo. 3. Transformación del algoritmo en un programa. 4. Ejecución y validación del programa. Lo que se pretende es lograr un diálogo permanente entre el usuario y la máquina. Algoritmo viene de Mohammed al-kowarizmi, un matemático persa que introdujo este término al mundo, su apellido fue traducido al latín como algorismus, el que posteriormente se conoció como algoritmo. Un algoritmo es un método para resolver un problema. Debe presentarse como una secuencia ordenada de instrucciones que siempre se ejecutan en tiempo finito y con una cantidad de esfuerzo también finito. Los algoritmos tienen un inicio y un final, son únicos y deben ser fácilmente identificables.
  • 10. 2 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Decir que un problema puede resolverse algorítmicamente implica, que es posible escribir un programa de computadora que producirá la respuesta correcta para cualquier entrada si se ejecuta durante un tiempo suficiente y se le da el espacio de almacenamiento necesario. Antiguamente se definía la Computadora como: “Una máquina provista de dispositivos electrónicos, los que eran capaces de ejecutar operaciones repetitivas de gran complejidad y a grandes velocidades”. Hoy, la idea ha cambiado y se define como: “procesador de datos y sistemas de procesamiento de la información” La definición general de sistema se da como “conjunto de componentes conectados e interactivos, con un propósito o fin único”, mientras que sistemas de procesamiento de información son sistemas que transforman datos brutos en información ordenada, con un significado lógico y útil. Por la década de 1930 antes de la llegada de las computadoras, los matemático trabajaban para Romanizar y estudiar el concepto de algoritmo como un conjunto especificado de instrucciones sencillas a resolver para calcular una función. se idearon e investigaron varios modelos de cómputos formales en este campo llamado teoría de la computabilidad, describiendo y caracterizando los problemas que podían resolverse algorítmicamente y los que no podían resolverse de esta manera. Aunque según la teoría de la computabilidad obviamente puede conocerse si los problemas se resuelven con computadora no basta para decirnos si resulta práctico hacerlo o no. Por ejemplo en un programa para jugar ajedrez las formas de acomodar las piezas en el tablero son finitas y bajo ciertas reglas que una partida debe terminar después de un número finito de movimientos. Entonces dado que la computadora conocer resultado final de cada movimiento podrá escoger la mejor opción según estimaciones y números de acomodo distintos de las piezas en el tablero a medida que se va desarrollando el juego examinando todas y cada una de las posibles combinaciones a ejecutar.
  • 11. 3 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Al describir un algoritmo para diversos problemas veremos que hay varias técnicas de diseño que a menudo resultan útiles. Antes que se escriba un programa, el programador debe comprender con claridad qué datos se usarán, el resultado deseado y el procedimiento a utilizar para producir este resultado. El procedimiento de solución se conoce como algoritmo, el cual se define como una secuencia de paso a paso de instrucciones que deben realizarse y describe cómo se procesarán los datos para producir las salidas desearás. Un algoritmo responde la pregunta ¿qué método se usará para resolver este problema? Sólo después de comprender con claridad los datos que se usarán y seleccionar los pasos específicos requeridos para producir el resultado deseado, podremos codificar el programa. Es decir la programación es la traducción de un algoritmo seleccionado a un lenguaje que pueda usar la computadora. Los diferentes pasos o acciones de un algoritmo se expresan en los programas como instrucciones, sentencias o proposiciones (normalmente, el término instrucción se suele referir a los lenguajes de máquina y bajo nivel, reservando la sentencia o proposición para los lenguajes de alto nivel.) La elaboración de un programa requerirá conocer el juego o repertorio de instrucciones del lenguaje, adelantaremos los tipos fundamentales de instrucciones que una computadora es capaz de manipular y ejecutar. Las instrucciones básicas y comunes a todos los lenguajes de programación se pueden resumir en cuatro grupos: 1. Instrucciones de entrada o salida. instrucciones de transferencia de información y datos entre dispositivos periféricos ( teclado, impresora, unidad de disco, entre otros) y la memoria central. 2. Instrucciones aritmético-lógica. instrucciones que ejecutan operaciones aritméticas (suma, resta, multiplicación, división, potencia) o lógica (operaciones and, or, not, entre otras.) 3. Instrucciones selectivas. Instrucciones que permiten la selección de tareas alternativas en función de los resultados de diferentes expresiones condicionales. 4. Instrucciones repetitivas. instrucciones que permiten la repetición de secuencias de instrucciones un número determinado de veces.
  • 12. 4 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Pasos a seguir para la solución de problemas: 1. Diseño del algoritmo que describe la secuencia ordenada de pasos que conducen a la solución de un problema dado (Análisis del problema y desarrollo del programa.) 2. Expresar el algoritmo como un programa en un lenguaje de programación adecuado (fase de codificación.) 3. Ejecución y validación del programa por la computadora. Sin algoritmo no podrá existir un programa, por eso es necesario diseñar el algoritmo previamente, para su realización. En cada problema el algoritmo se puede expresar como un lenguaje diferente de programación y ejecutarse en una computadora distinta; sin embargo el algoritmo será siempre el mismo. Los algoritmos son muy importantes, ya que de éstos va a depender el buen funcionamiento de un programa. Los lenguajes de programación sólo expresan lo que un algoritmo quiere decir y las computadoras llevan a cabo la ejecución. Características de los algoritmos: 1. Debe ser preciso indicando la realización de cada paso ordenadamente. 2. Debe estar bien definido. Si se sigue un algoritmo más de una vez, los resultados deben ser los mismos. 3. Debe tener un fin; es decir deberá ser finito. Si se sigue un algoritmo, éste debe terminar en algún momento, o sea debe tener un número determinado de pasos.
  • 13. 5 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Técnicas para representar un algoritmo. Las más conocidas para el desarrollo de un algoritmo son: 1. Pseudocódigo. 2. Diagrama de flujo o flujograma. ● Pseudocódigo: Es la representación de un algorítmo en una secuencia lógica de actividades, a que llevarán en conjunto a la solución de un problema. ● Diagrama de flujo: Son símbolos gráficos que representan a un algoritmo. Estos símbolos están estandarizados, teniendo cada uno un significado universal. ● Diagrama N-S (Nassi Schneiderman.) Los lenguajes de programación. Para la realización de un proceso, el procesador deberá recibir el algoritmo adecuado, siendo éste capaz de interpretarlo. 1. Entender las instrucciones que cada paso expresa. 2. Ejecutar las operaciones correspondientes. El algoritmo se expresará por medio de un formato que se denomina programa. El programa se desarrolla en un lenguaje de programación y las operaciones que llevarán a expresar un algoritmo en forma de programa se llama programación. Existen importantes razones para el estudio de las Técnicas de Programación, y éstas son: 1. El desarrollo de algoritmos eficientes es una habilidad que se trata de mejorar siempre. 2. Se busca la mejora en el uso del lenguaje de programación disponible. 3. Enriquecer el vocabulario con construcciones útiles sobre programación. 4. Tener la capacidad para elegir el mejor lenguaje de programación. 5. Facilitar el aprendizaje de cualquier otro lenguaje. 6. Facilitar el diseño de un lenguaje nuevo.
  • 14. 6 INTRODUCCIÓN A LA PROGRAMACIÓN: - AECT Como ya se mencionó, actualmente existen tres tipos de lenguaje utilizados: 1. Lenguaje de máquina. 2. Lenguaje de bajo nivel. 3. Lenguaje de alto nivel. Variables y tipos de datos primitivos. El motivo principal de la computadora es, primordialmente, el manejo de los datos o de la información ingresada para luego de procesarla arrojar los resultados. La computadora opera con objetos, los cuales son descritos por expresiones denominados datos. Son varios los tipos de datos con los que la computadora puede trabajar. Existen dos grupos de tipos de datos: Los que no tienen estructura, llamados Simples, y los que son estructurados, llamados Compuestos. La variedad con respecto a los tipos de datos son representados de distintas formas en la computadora. A nivel de máquina un dato es una secuencia o conjunto de bits (dígitos 0 ó 1). Dato: Cuando se habla de dato, o se da la expresión general de dato, el cual describe los objetos con los que opera una computadora. Los algoritmos y programas correspondientes operan sobre datos. Los datos de entrada se transforman gracias al programa y se traducen a lenguaje máquina, los mismos que son ejecutados por la computadora. Los tipos de datos que existen son dos: Simples y Compuestos. 1. Datos numéricos. 1.1. Tipo de dato numérico entero (integer.) 1.2. Tipo de dato numérico real (real.) 2. Datos lógicos. 3. Datos de tipo carácter. 4. Datos de tipo cadena. 5. Constantes y variables. 6. Expresiones.