Vous êtes sur la page 1sur 5

DuocUC Ingeniera de Ejecucin en Electricidad y Electrnica Programacin Lenguaje C Prof. Rodrigo Del Canto 2004.

Introduccin a La Programacin

PROGRAMACIN LENGUAJE C

RODRIGO DEL CANTO


VALPARASO 2004

-1-

DuocUC Ingeniera de Ejecucin en Electricidad y Electrnica Programacin Lenguaje C Prof. Rodrigo Del Canto 2004.

Introduccin a La Programacin

CAPITULO 1. Introduccin a La Programacin


ualquier usuario de un computador es consciente de la existencia de distintos
programas. Cada programa realiza una tarea especfica. Por ejemplo, un
procesador de texto, una hoja de clculo o un simple juego. Pero existen distintos
juegos (Street Fighters, Killer Instinc, etc.)o distintos procesadores de texto (Microsoft
Word, Corel Word Perfect, etc.), en definitiva: distintos programas, aunque su funcin
sea la misma.

El concepto de programa puede quedar en el aire sin definir la programacin. Si, como es
evidente, existen muchos juegos en el mercado, deben provenir de algn lugar. La
programacin es el proceso mediante el que se desarrolla un programa. Un juego, implica
la existencia de uno o varios programadores que conozcan las tcnicas necesarias para la
realizacin de ste.

1.1. LENGUAJE DE PROGRAMACIN


El lenguaje de programacin es la herramienta bsica de que dispone un programador a la
hora de crear un programa.
Un computador tan solo entiende secuencias de nmeros binarios, es decir, unos y ceros.
La combinacin adecuada de unos y ceros, forma los programas. Esta afirmacin puede
resultar chocante, pero se ajusta completamente a la realidad. Aqu es donde surge el
concepto de programacin.
Cada computador (microprocesador)
posee un conjunto de instrucciones bsicas
(lenguaje de mquina), que no son ms que distintas combinaciones determinadas de
unos y ceros, forma los programas. Estas instrucciones son lo nico que el ordenador
entiende. Lgicamente, un programa debe formarse a partir de estas instrucciones. Esto
quiere decir que los programas se forman escribiendo unos y ceros. As era en los aos
cincuenta. El programador no solo deba conocer las instrucciones del computador para el
que estaba diseando el programa, sino que adems deba traducir esas instrucciones a
sus correspondientes combinaciones de unos y ceros.
El primer paso para simplificar la escritura de un programa se produce en este punto. Se
crean programas para cada computador, que traducen automticamente las instrucciones
del computador a sus correspondientes combinaciones de unos y ceros. Haba nacido el
lenguaje Ensamblador (Assembler). Los programas siguen siendo dependientes de la
mquina, puesto que cada procesador posee sus propias instrucciones.
Ms tarde, Backus comienza a trabajar en un lenguaje que permita escribir formulas
matemtica, y que estas frmulas matemticas puedan ser convertidas a lenguaje de
mquina. Nace as el lenguaje Fortran, el primer lenguaje de programacin de alto nivel.
El lenguaje se define como un estndar, ellos es posible pues solo es necesario escribir un
intrprete adecuado de cada lenguaje para cada procesador. Surge as el concepto de

-2-

DuocUC Ingeniera de Ejecucin en Electricidad y Electrnica Programacin Lenguaje C Prof. Rodrigo Del Canto 2004.

Introduccin a La Programacin
compilador. Un compilador es un intrprete de un lenguaje de programacin para cada
mquina. Es el encargado de traducir el lenguaje de programacin al lenguaje de mquina
que cada que cada ordenador entiende. Cualquier lenguaje de programacin de alto nivel
debe ser vlido para cualquier computador, tan solo vara el compilador, los lenguajes
han de ser estndar, para ello existen determinados organismos internacionales que se
encargan de dictaminar normas y reglas de estandarizacin.
Comienza a partir de aqu una nueva revolucin del mundo de los computadores. Se
crean multitud de lenguajes de programacin y de sistemas operativos. Entre ellos, surge
el lenguaje C.

1.2. EL LENGUAJE C
Este lenguaje de programacin es el resultado de la combinacin de muchos elementos de
lenguajes ya existentes:
< ALGOL, creado por el consenso de un comit internacional en el ao 1960. En
su diseo, se incluyen prcticamente todas las caractersticas de un lenguaje de
programacin de alto nivel.
< CPL, desarrollado en 1963 en las Universidades de Cambridge y de Londres. En
su diseo, se intenta trasladar el ALGOL a las mquinas reales que entonces
existan.
< BCPL, definido en 1967 por Martn Richarden Cambridge. Est basado en el
CPL, pero reduce el mismo a sus conceptos ms bsicos.
< B, ideado por Ken Thompson en 1970 en los laboratorios Bell. Se destina
proncipalmente al desarrollo del promer sistema UNS, en un DEC PDP-7. Es
similar al BCPL.
< C, llevado a cabo por Dennis Ritchie en 1972, en los laboratorios Bell. Es
influenciado por el B y el BCPL, pero le devuelve al lenguaje un funcionamiento
ms general. Los lenguajes BCPL y B, se intentan simplificar hasta el punto que
pierden gran parte de su funcionalidad, y dejan de ser adecuados para
determinado tipo de problemas. Esto es solventado con gran brillantez por el
lenguaje C que disea Ritchie.
Las ideas bsicas del C, y su difusin como lenguaje de programacin se concretan a
partir de 1978, cuando Brian Kernighan y Dennis Ritchie escriben The C Programing
Language.
El lenguaje C, desde su origen, se encuentra muy ligado al UNS. Despus se traslada a
otros sistemas operativos. La principal causa del xito de este lenguaje de programacin
se su nivel intermedio. Esto es, el lenguaje C no es un lenguaje de alto nivel, pero
tampoco es un lenguaje mquina. Fue diseado como un lenguaje de sistemas apto para
el desarrollo de stos. A ello contribuye la amplia experiencia de su creador en este
campo, en el desarrollo de sistemas operativos. De hecho, la mayor parte del sistema
operativo UNS est escrito en C.
Algunas de las caractersticas peculiares del C son:

-3-

DuocUC Ingeniera de Ejecucin en Electricidad y Electrnica Programacin Lenguaje C Prof. Rodrigo Del Canto 2004.

Introduccin a La Programacin
< Tan solo define como parte del lenguaje las estructuras bsicas. Por ejemplo,
para que se produzca una salida (imprimir un mensaje en pantalla), es necesario
incluir una librera, diferenciando al C de muchos otros lenguajes de
programacin.
< Estructuracin modular, posibilidad de dividir el programa en mdulos que se
compilan independientemente.
< Concepto de puntero como tipo de dato que contiene una direccin de
memoria.
< Paso de argumentos por valor.
< Lenguaje MUY reducido, con tan solo 27 palabras clave.
< Ausencia de tipos estrictos.
< Facilidades para la manipulacin de datos a nivel de bits.

1.3. El estndar ANSI C


La nica descripcin generalizada del lenguaje C hasta 1983 es la que se realiza en el
libro de Kernighan y Ritchie. Sin embargo, este libro no describe totalmente algunos
conceptos del lenguaje, y las distintas interpretaciones del libro dan lugar a diferentes
compiladores, en algunas ocasiones no compatibles entre s.
En el ao 1983, el instituto nacional americano de estndares (ANSI) comienza a estudiar
la publicacin de un estndar sobre el lenguaje C. El principal propsito de este estndar
es unificar las interpretaciones existentes sobre el C, y por lo tanto el lenguaje que
interpretan los compiladores.
La principal innovacin del estndar es un cambio en la definicin de los prototipos de
las funciones. Adems aade cinco palabras reservadas al lenguaje.

1.4. Creacin de un programa en C.


Para crear un programa bajo este lenguaje de programacin, la condicin indispensable es
conocer el lenguaje C. De su estudio nos encargaremos a lo largo de estos apuntes.
Suponiendo que ya conozca este lenguaje de programacin, la creacin de un programa
sigue los siguientes pasos:
< Escritura del programa. Para ello se puede usar cualquier editor de texto.
Simplemente consiste en escribir en un archivo de texto el programa que
queramos crear, en lenguaje C. Este archivo de texto es vlido para cualquier
computador que posea un compilador de C, y por lo tanto, el programa en C
debera ser vlido para cualquier computador.
< Compilacin del programa. Para ello se usa un compilador de C. Debemos
disponer de un compilador especfico para nuestro computador. De este proceso
se obtiene un archivo objeto, que ya es especfico para el computador en el que
es compilado.

-4-

DuocUC Ingeniera de Ejecucin en Electricidad y Electrnica Programacin Lenguaje C Prof. Rodrigo Del Canto 2004.

Introduccin a La Programacin
< Enlace (Link) del programa. Para ello se usa otro de los programas que debe
incluir el compilador de C. Este proceso se encarga de obetener un archivo
ejecutable partiendo de un archivo objeto.
Cada compilador posee sus propios programas para realizar estas funciones, en definitiva,
los pasos a seguir son siempre los mismo. En muchos casos, los compiladores realizan los
dos ltimos pasos con un solo programa, como es el caso del Watcom C++, Borland
C++, Turbo C++, Visual C++.
Estos son tambin los pasos que hay que seguir para crear archivos ejecutables a partir de
todos los ejemplos del libro. Si para ello se usa el compilador de dominio pblico GNU:
< Compilador : GCC.EXE
< Linker: COFF2EXE.EXE

-5-

Vous aimerez peut-être aussi