You are on page 1of 5

Universidad de Colima

Ingeniera en Telemtica
Facultad de Telemtica

Historia de C y su evolucin a C++

Alumnos
Jos Efrn De la mora Osorio
Luis Armando Durn Vega

Grupo
3B

Maestro
Humberto Ramirez Gonzalez

Fecha de Entrega
17/08/2015

INDICE
Historia de C y su evolucin a C++3
Lenguaje C++: la evolucin.3
Operadores Aritmticos5
Operadores Relacionales.5
Operadores Lgicos: AND, OR, NOT

Jerarqua de Operadores..5

Matemticos...5
Relacionales...5
Lgicos....5

Historia de C y su evolucin a C++


El lenguaje C cambi la historia de la programacin. Todo comenz en los laboratorios Bell (luego
convertido en AT&T) en los 1960s. Tenan una computadora PDP-7 (con sus tremendos 8K de
memoria y sin ningn software, porque no exista). Se necesitaba software y como te podrs
imagina, el software ms importante es el sistema operativo. Sin embargo, el problema es que el
nico lenguaje de programacin que tenan era el ensamblador y pensar en crear un programa
sencillo en este lenguaje, deja un sistema operativo completo, es una tarea herclea. Por lo tanto
lo primero que se hizo necesario fue hacer un lenguaje de programacin lo suficientemente
potente como para crear un proyecto de esta envergadura. Ken Thompson estaba a cargo de
crear este sistema operativo, que luego se llam Unix. Un cuate suyo que trabajaba con l,
Dennis Ritchie dise un lenguaje, llamado C porque tena influencia de un lenguaje anterior
llamado B, hecho por Thompson, la cual es una versin simplificada de un lenguaje ms viejo
llamado BCPL. Ritchie trabaj en un servidor PDP-11 (ms moderno que el anterior) durante los
1970s.
Antes de C, los lenguajes de programacin generalmente se creaban con fines acadmicos o por
comits burocrticos (como el COBOL que est hecho por administradores de negocios donde
tienes que escribir chorrocientos mil lneas de cdigo para hacer una simple suma). C fue
diseado, implementado y desarrollado por programadores que trabajaban en problemas reales,
lo cual lo hizo muy usado por programadores en todos lados y durante los 1980s y parte de los
90s.
Un gran avance de C era debido a que es un lenguaje estructurado (al igual que el Pascal), lo cual
permite hacer programas grandes (cosa casi imposible con ensamblador u otros) y en su tiempo,
era una innovacin tremenda.

Lenguaje C++: la evolucin


Saliendo del mbito computacional, la teora de la evolucin de Darwin, pese a la que piensan
algunos radicales religiosos, rifa y explica muchas cosas que el creacionismo no puede.
Bsicamente nos dice que la especies sufren modificaciones aleatorias en sus genes (bueno, lo
de los genes fue aportacin de Dobzhansky porque la gentica no exista en tiempos de Darwin) y
solo subsisten los que mejor se adaptan a su medio ambiente.
Y para qu les digo esto? Uno, para ampliar un poco la cultura de algunos lectores en materia
de biologa, pero principalmente porque con el C sucedi algo similar. Los sistemas se iban
haciendo cada vez ms complejos y hacerlos en C implicaba mucho trabajo, as que C++ es el
siguiente paso de la evolucin que va desde BCPL hasta C++.
Pero en qu consista esta evolucin? Principalmente en encontrar otra manera de hacer las
cosas. Algunos llaman a esto paradigmas de programacin (nota cultura: el trmino paradigma
fue acuada por Thomas Kuhn en su libro La estructura de las revoluciones cientficas. En el
texto usa la palabra paradigma para significar cosas diferentes, o sea que nadie realmente sabe lo
que significa esa palabra, jeje). Escrib algo sobre paradigmas de programacin en mi post
Paradigmas de Programacin y muchos objetos en C++. Como dije antes, el C es programacin
estructurada. Bsicamente en este tipo de programacin, se ejecuta un programa lnea por lnea
en orden. El programa se ejecuta de principio a fin. Sin embargo, en la programacin orientada a
objetos la idea es solucionar problemas de forma similar a como resolvemos problemas en el
mundo real, es decir, contamos con muchos objetos, cada uno con sus caractersticas y
acciones que puede realizar (por ejemplo, mi mano tiene ciertas caractersticas: nmero de dedos,
tamao, color, etc., y cosas que puede hacer: cerrar dedos, agarrar algo, etc.). Resolvemos
problemas al tomar objetos y ponerlos a funcionar (siguiendo con el ejemplo de mi mano, si mi

problema consiste en escribir, puedo usar mi objeto mano y ejecutar acciones que me permiten
agarrar un objeto lpiz y colocarlo sobre un objeto papel y moverlo de tal manera que escriba).
Este paradigma ayuda a reducir la complejidad de sistemas grandes
Realmente no existen lenguajes 100% orientados a objetos (el nico que conozco es SmallTalk),
pero lenguajes como C++ o Java combinan lo orientado a objetos con un poco de programacin
estructurada.
C++ fue inventada por Bjarne Stroustrup en 1979. Al inicio lo llam C con clases, pero en el 83 lo
cambi a C++. Lo hizo basndose en C, incluyendo todas sus caractersticas, atributos y
beneficios. Lo que agreg fue el soporte a programacin orientada a objetos. Esto haca que la
transicin hacia la programacin orientada a objetos (o OOP por sus siglas en ingls, o POO por
su acrnimo en castellano) sea fcil y sencilla.
Pero aqu no termina nuestra historia feliz. C++ fue sujeta a revisiones y en 1994 un comit de
ANSI e ISO desarrollaron el C++ estndar que es el que se usa en todos los compiladores.
Algunas compaas agregan libreras y funciones, pero todos deben respetar el C++ como fue
definida por el comit ANSI/ISO (por esta razn no me gusta el Dev-Cpp porque tiene muchas
cosas que no son estndares y no funciona en otros compiladores).
Una nota final. El C++ no hizo que el C cayera en desuso. Todava hay muchas aplicaciones
donde se usa el C, por ejemplo en el campo de la robtica y otros usos en la industria
manufacturera.
Valderrama, T. (2009, 06). Historia de C y su evolucin a C++. tony-valderrama.blogspot.mx/.
Recuperado 08, 2015, de http://tony-valderrama.blogspot.mx/2009/06/historia-del-c-y-c.html

Operadores Aritmticos
+

*
/
MOD
^

Suma
Resta
Multiplicacin
Divisin
Residuo
potencia

Operadores Relacionales
==
<=
>=
<=
>=
!=

Igual a
Menor que
Mayor que
Menor o igual
Mayor o igual
Diferente de

Operadores Lgicos: AND, OR, NOT


A
T
F
A
T
T
F
F
A
T
T
F
F

NOT A
F
T
B
A AND B
T
T
F
F
F
F
F
F
B
A OR B
T
T
F
T
F
T
F
T

Jerarqua de Operadores
1. ( )

Matemticos
1. ^
2. *
3. +

MOD
/

Relacionales
1. ==
2. <=
3. >=
4. <=
5. >=
6. !=

Lgicos
1. NOT
2. AND
3. OR

You might also like