Programación

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 4

Informtica & Software

Una Nueva Forma De Aprender Computacin.


Programacin
La programacin es el proceso de disear, codificar, depurar y mantener el cdigo
fuente de programas computacionales. El cdigo fuente es escrito en un lenguaje de
programacin.- El propsito de la programacin es crear programas que exhiban un
comportamiento deseado. El proceso de escribir cdigo requiere frecuentemente
conocimientos en varias reas distintas, adems del dominio del lenguaje a utilizar, algoritmos
especializados y lgica formal. Programar no involucra necesariamente otras tareas tales como
el anlisis y diseo de la aplicacin (pero s el diseo del cdigo), aunque s suelen estar
fusionadas en el desarrollo de pequeas aplicaciones.

Historia de la programacin

Para crear un programa, y que la computadora lo interprete y ejecute las instrucciones escritas
en l, debe usarse un lenguaje de programacin. En sus inicios las computadoras interpretaban
slo instrucciones en un lenguaje especfico, del ms bajo nivel, conocido como cdigo
mquina, siendo ste excesivamente complicado para programar. De hecho slo consiste en
cadenas de nmeros 1 y 0 (sistema binario). Para facilitar el trabajo de programacin, los
primeros cientficos que trabajaban en el rea decidieron reemplazar las instrucciones,
secuencias de unos y ceros, por palabras o letras provenientes del ingls; las codificaron y
crearon as un lenguaje de mayor nivel, que se conoce como Assembly o lenguaje
ensamblador. Por ejemplo, para sumar se usa la letra A de la palabra inglesa add (sumar). En
realidad escribir en lenguaje ensamblador es bsicamente lo mismo que hacerlo en lenguaje
mquina, pero las letras y palabras son bastante ms fciles de recordar y entender que
secuencias de nmeros binarios. A medida que la complejidad de las tareas que realizaban las
computadoras aumentaba, se hizo necesario disponer de un mtodo sencillo para programar.
Entonces, se crearon los lenguajes de alto nivel. Mientras que una tarea tan trivial como
multiplicar dos nmeros puede necesitar un conjunto de instrucciones en lenguaje
ensamblador, en un lenguaje de alto nivel bastar con solo una. Una vez que se termina de
escribir un programa, sea en ensamblador o en un lenguaje de alto nivel, es
necesario compilarlo, es decir, traducirlo a lenguaje mquina.
Lenguaje Maquina
El lenguaje de mquina o cdigo mquina es el sistema de cdigos
directamente interpretable por un circuito microprogramable, como
el microprocesador de unacomputadora o el microcontrolador de
un Robot. Este lenguaje est compuesto por un conjunto de
instruccionesque determinan acciones al ser tomadas por la mquina.
Unprograma consiste en una cadena de estas instrucciones ms un
conjunto de datos sobre el cual se trabaja. Estas instrucciones son
normalmente ejecutadas en secuencia, con eventuales cambios de
flujo causados por el propio programa o eventos externos. El lenguaje
de mquina es especfico de la arquitectura de la mquina, aunque
el conjunto de instrucciones disponibles pueda ser similar entre
arquitecturas distintas.
Los circuitos microprogramables son sistemas digitales, lo que
significa que trabajan con dos nicos niveles de tensin. Dichos
niveles, por abstraccin, se simbolizan con los nmeros 0 y 1, por
eso el lenguaje de mquina slo utiliza dichos signos. Esto permite el
empleo de las teoras del lgebra booleana y del sistema binario en
el diseo de este tipo de circuitos y en su programacin.
Arquitectura De
Computadoras Como Una
Serie De Capas De
Abstraccin: Hardware,
Firmware, Ensamblador,
Kernel, Sistema
Operativo Y Aplicaciones.
Informtica & Software
Una Nueva Forma De Aprender Computacin.
Compilador
Un compilador es un programa informtico que traduce un programa escrito en un lenguaje de
programacin a otro lenguaje de programacin, generando un programa equivalente que la
mquina ser capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de mquina,
pero tambin puede ser un cdigo intermedio (bytecode), o simplemente texto. Este proceso
de traduccin se conoce como compilacin.

Un compilador es un programa que permite traducir el cdigo fuente de un programa
en lenguaje de alto nivel, a otro lenguaje de nivel inferior (tpicamentelenguaje de mquina).
De esta manera un programador puede disear un programa en un lenguaje mucho ms
cercano a como piensa un ser humano, para luego compilarlo a un programa ms manejable
por una computadora.

Como parte importante de este proceso de traduccin, el compilador informa a su usuario de
la presencia de errores en el programa fuente.

ByteCode
El bytecode es un cdigo intermedio ms abstracto que el cdigo mquina. Habitualmente es
tratado como un archivo binario que contiene un programa ejecutable similar a un mdulo
objeto, que es un archivo binario producido por el compilador cuyo contenido es elcdigo
objeto o cdigo mquina .

El bytecode recibe su nombre porque usualmente cada cdigo de operacin tiene una longitud
de un byte, si bien la longitud del cdigo de las instrucciones vara. Cada instruccin tiene un
cdigo de operacin entre 0 y 255 seguido de parmetros tales como los registros o las
direcciones de memoria. Esta sera la descripcin de un caso tpico, si bien la especificacin del
bytecode depende ampliamente del lenguaje.

Como cdigo intermedio, se trata de una forma de salida utilizada por los implementadores de
lenguajes para reducir la dependencia respecto del hardware especfico y facilitar la
interpretacin. Menos frecuentemente se utiliza el bytecode como cdigo intermedio en un
compilador. Algunos sistemas, llamados traductores dinmicos o compiladores just-in-
time (Sobre Demanda) JIT,traducen el bytecode a cdigo mquina inmediatamente antes de su
ejecucin para mejorar la velocidad de ejecucin.

Los programas en bytecode suelen ser interpretados por un intrprete de bytecode (en
general llamado mquina virtual, dado que es anlogo a un ordenador). Su ventaja es
su portabilidad: el mismo cdigo binario puede ser ejecutado en diferentes plataformas y
arquitecturas. Es la misma ventaja que presentan los lenguajes interpretados. Sin embargo,
como el bytecode es en general menos abstracto, ms compacto y ms orientado a la mquina
que un programa pensado para su modificacin por humanos, su rendimiento suele ser mejor
que el de los lenguajes interpretados.
Cdigo Binario
El cdigo binario es el sistema de representacin de textos, o procesadores de instrucciones
de computadora utilizando el sistema binario (sistema numrico de dos dgitos, o bit: el "0"
(cerrado) y el "1" (abierto)). En informtica y telecomunicaciones, el cdigo binario se utiliza
con variados mtodos de codificacin de datos, tales como cadenas de caracteres, o cadenas
de bits.- El byte es un grupo de 8 bits, es decir en l tenemos 256 posibles estados binarios.

Informtica & Software
Una Nueva Forma De Aprender Computacin.
Programacin Estructurada
La programacin estructurada es un paradigma de programacin orientado a mejorar la
claridad, calidad y tiempo de desarrollo de un programa de computadora, utilizando
nicamente subrutinas y tres estructuras: secuencia, seleccin (if y switch)
e iteracin (buclesfor y while), considerando innecesario y contraproducente el uso de la
instruccin de transferencia incondicional (GOTO), que podra conducir a "cdigo espagueti",
que es mucho ms difcil de seguir y de mantener, y era la causa de muchos errores de
programacin.
Cdigo Spaghetti
El cdigo Spaghetti es un trmino para los programas de computacin que tienen una
estructura de control de flujo compleja e incomprensible. Su nombre deriva del hecho que
este tipo de cdigo parece asemejarse a un plato de espaguetis, es decir, un montn de hilos
intrincados y anudados.- Tradicionalmente suele asociarse este estilo de programacin con
lenguajes bsicos y antiguos, donde el flujo se controlaba mediante sentencias de control muy
primitivas comogoto y utilizando nmeros de lnea. Un ejemplo de lenguaje que invitaba al uso
de cdigo Spaghetti es el QBasic de Microsoft en sus primeras versiones.

Ventajas De La Programacin Estructurada
Ventajas de la programacin estructurada comparada con el modelo anterior (hoy llamado
despectivamente cdigo espagueti).

Los programas son ms fciles de entender, pueden ser ledos de forma secuencial y no hay
necesidad de hacer engorrosos seguimientos en saltos de lneas (GOTO) dentro de los bloques
de cdigo para intentar entender la lgica.

La estructura de los programas es clara, puesto que las instrucciones estn ms ligadas o
relacionadas entre s.

Reduccin del esfuerzo en las pruebas y depuracin. El seguimiento de los fallos o errores del
programa ("debugging") se facilita debido a su estructura ms sencilla y comprensible, por lo
que los errores se pueden detectar y corregir ms fcilmente.

Reduccin de los costos de mantenimiento. Anlogamente a la depuracin, durante la fase de
mantenimiento, modificar o extender los programas resulta ms fcil.

Los programas son ms sencillos y ms rpidos de confeccionar.

Se incrementa el rendimiento de los programadores, comparado con la forma anterior que
utiliza GOTO.


Sistema Binario
El sistema binario, en ciencia de la computacin, es un sistema de numeracin en el que
los nmeros se representan utilizando solamente las cifras cero y uno (0 y 1). Es el que se
utiliza en las computadoras, debido a que trabajan internamente con dos niveles de voltaje,
por lo cual su sistema de numeracin natural es el sistema binario (encendido 1, apagado 0).


Informtica & Software
Una Nueva Forma De Aprender Computacin.
Algoritmos
Es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que
permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba
realizar dicha actividad.
Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y
se obtiene una solucin. Los algoritmos son el objeto de estudio de la algoritmia.

En general, no existe ningn consenso definitivo en cuanto a la definicin formal de algoritmo.
Muchos autores los sealan como listas de instrucciones para resolver un clculo o
un problema abstracto, es decir, que un nmero finito de pasos convierten los datos de un
problema (entrada) en una solucin (salida). Sin embargo cabe notar que algunos algoritmos
no necesariamente tienen que terminar o resolver un problema en particular.

También podría gustarte