No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

D茅cada de los 40: primeras computadoras y lenguajes ensambladores

14/21
Recursos

Ya que conoces conceptos sobre paradigmas de programaci贸n, es buen momento para conocer la historia y cronolog铆a de algunos lenguajes de programaci贸n, empezando por los a帽os 40.

Primeras computadoras

La primera computadora no fue una m谩quina abstracta, eso es un concepto te贸rico. Sin embargo, sab铆amos que las computadoras 茅pocas atr谩s, ten铆an tama帽os enormes, ocupaban canchas de tenis y trabajaban con switches. Hay distintos criterios para definir cu谩l fue la primer computadora y algunos autores mencionan que fue la EDSAC, que cont贸 con las siguientes caracter铆sticas

  • Era electr贸nica y digital.
  • Realizaba 4 operaciones b谩sicas.
  • Era programable.
  • Almacenaba programas y datos.

Las precursoras de la EDSAC carec铆an de herramientas ling眉铆sticas para ser programadas al nivel de la EDSAC. Estas iniciaron con c贸digo m谩quina, llamados first-generation languages (1GL).

Lenguajes ensambladores

Los lenguajes ensambladores son representaciones simb贸licas del lenguaje m谩quina. Un programa 鈥渆nsamblador鈥 traduce las instrucciones a c贸digo m谩quina. Cada m谩quina ten铆a su propio lenguaje, hab铆a nula portabilidad. Son llamados second-generation languages (2GL)

Contribuci贸n creada por: Ciro Villafraz con los aportes de Valentina Barrios.

Aportes 29

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

De hecho, si nos vamos m谩s all谩, la primera computadora no fue ninguna m谩quina, las primeras computadoras eran humanos, las primeras computadoras eran mujeres que hac铆an sus c谩lculos a manos 馃憖
.

.
Aunque claro, si hablamos de m谩quinas, ya todos sabemos la historia, desde computadoras enormes que trabajaban con tarjetas perforadas hasta lo que tenemos hoy en d铆a 馃槃

El Curso de Introducci贸n al Desarrollo de Lenguajes de Programaci贸n cuenta de manera brutal la historia de los int茅rpretes, compiladores y lenguajes de programaci贸n m谩s importantes en la historia.

Hola Platzinauta. 馃憢
Te comparto mis apuntes para que #NuncaParesDeAprender. 馃憖鉁

Historia de algunos lenguajes de programaci贸n.

D茅cada de los 40: primeras computadoras y lenguajes ensambladores.

La primer computadora no fue una maquina abstracta, eso es un concepto te贸rico, sin embargo, sab铆amos que las computadoras 茅pocas atr谩s, ten铆an tama帽os enormes, ocupaban canchas de tennis, trabajaban con switches.

Hay distintos criterios para definir cu谩l fue la primer computadora y algunos autores mencionan que fue la EDSAC. Sus caracter铆sticas:

  • Electr贸nica y digital.
  • Realiza 4 operaciones b谩sicas.
  • Es programable.
  • Almacena programas y datos.

Las precursoras

Carec铆an de herramientas ling眉铆sticas para ser programadas al nivel de la EDSAC.

Iniciaron con c贸digo m谩quina, llamados first-generation languages (1GL)

Lenguajes ensambladores

  • Representaciones simb贸licas del lenguaje m谩quina.
  • Un programa 鈥渆nsamblador鈥 traduce las instrucciones.
  • Cada maquina ten铆a su propio lenguaje, hab铆a nula portabilidad.
  • Son llamados second-generation languages (2GL)

"En el principio Turing cre贸 la M谩quina.

Y la M谩quina era enrevesada y artificiosa, existiendo solamente en teor铆a. Y von Neuman mir贸 hacia la M谩quina, y vi贸 que era enrevesada. 脡l dividi贸 la m谩quina en dos Abstracciones, el Dato y el C贸digo, y los dos eran una misma Arquitectura. Este es un gran Misterio, y el principio de la sabidur铆a Y von Neumann habl贸 a la Arquitectura, y la bendijo diciendo: "Sal y reprod煤cete, intercambiando libremente datos y c贸digo, y puebla la tierra con todo tipo de dispositivos. Y as铆 fu茅 hecho, y era bueno. La Arquitectura prosper贸 y fu茅 realizada en hardware y software. Y pobl贸 la tierra con muchos Sistemas"
Fragmento del Evangelio de Tux 2005

En esta clase del curso de Introducci贸n al Pensamiento Computacional con Python se hace un lindo recorrido por la historia de los c贸mputos.
https://platzi.com/clases/1764-python-cs/25228-introduccion-al-computo/

Tarjeta Perforada

No s茅 ustedes, pero esa chaqueta con logos est谩 fenomenal

1801 El primer lenguaje de programaci贸n
Joseph Marie Jacquard fue el inventor del telar programable. Este inventor franc茅s es el responsable de la programaci贸n. No es el inventor de la misma, ya que las cosas han cambiado mucho desde entonces, pero cre贸 el primer sistema de instrucciones para un 鈥樷榗omputador鈥欌. La m谩quina del telar de Jacquard, creada en 1801, utilizaba los orificios en tarjetas perforadas para representar los movimientos de un brazo de la m谩quina de tejer, con el objetivo de generar patrones decorativos autom谩ticamente. sus tarjetas programables se introduc铆an en un telar que le铆a el c贸digo, las instrucciones, de dichas tarjetas y automatizaba procesos. Esto permiti贸 que cualquiera con el telar y las tarjetas perforadas crearan estos dise帽os sin ser expertos en la materia. este fue el primer lenguaje de programaci贸n, ya que estas tarjetas perforadas se utilizaron en las primeras m谩quinas computacionales creadas por Charles Babbage, y posteriormente por los primeros ordenadores.

1842 El primer lenguaje de programaci贸n, el de Ada Lovelace
Durante un per铆odo de nueve meses entre 1842 y 1843, Ada Lovelace tradujo las memorias del matem谩tico italiano Luigi Menabrea acerca de la nueva m谩quina propuesta por Charles Babbage, la M谩quina Anal铆tica. Con estos escritos, ella a帽adi贸 unas notas en las cuales especificaba en detalle un m茅todo para calcular los n煤meros de Bernoulli con esta m谩quina. mientras lo hac铆a, cre贸 un lenguaje de programaci贸n a mano para calcular la serie de n煤meros de Bernoulli con la m谩quina de Babbage. la primera programadora de computadoras fue AdaByron, condesa de Lovelace. lleg贸 a trabajar con Charles Babbage, mientras estese concentraba en dise帽ar el hardware de la m谩quina anal铆tica, una calculadora mec谩nica que fue dise帽ada para realizar c谩lculos complejos. Por esta relaci贸n con Babbage, Ada Byron se convirti贸 en la primera persona en desarrollar un conjunto de instrucciones para la m谩quina anal铆tica de Babbage, que luego se llam贸 programa de computadora. Ada nunca pudo ver funcionar un programa en una computadora, ya que faltar铆an todav铆a m谩s de un siglo para que estas se construyeran por primera vez. Con el tiempo, el 茅nfasis paso de hacer las instrucciones lo suficientemente simples para que la computadora entendiera, a hacerlas lo suficientemente parecida a la lengua hablada para que las personas lo pudieran escribir y fueran ejecutados por una computadora.

1890 Hollerith codific贸 los datos del censo en tarjetas perforadas.
Herman Hollerith se percat贸 de que pod铆a codificar la informaci贸n en tarjetas perforadas cuando observ贸 a los conductores de trenes que identificaban a los pasajeros seg煤n el orificio que hac铆an en su respectivo ticket. Los primeros c贸digos de computadora estaban especializados seg煤n sus aplicaciones.

1900 los c谩lculos num茅ricos estaban basados en los n煤meros decimales.
se dieron cuenta de que la l贸gica pod铆a ser representada con n煤meros, no s贸lo con palabras. Alonzo Church fue capaz de expresar el c谩lculo lambda a trav茅s de f贸rmulas.

1936 Alan Turing
Turing revolucion贸 la computaci贸n con su M谩quina de Turing. Se trata de una m谩quina que demostraba que, con un algoritmo, pod铆an resolver cualquier problema matem谩tico. Si hab铆a un algoritmo, la m谩quina pod铆a resolver el problema. La m谩quina de Turing estableci贸 las bases para almacenar programas como datos en la arquitectura de von Neuman de una computadora. A diferencia del c谩lculo lambda, el c贸digo de Turing no servir铆a satisfactoriamente como base para lenguajes de m谩s alto nivel- su principal uso es en el an谩lisis riguroso en la complejidad algor铆tmica.

Decada de los 40: primeras computadoras y lenguajes ensambladores

  • Ten铆an tama帽os gigantes (varias canchas de tenis)
  • Ten铆an switches
  • Hab铆a decenas de miles de combinaciones para reemplazar un solo cable

EDSAC
Fue la primera computadora que cumpli贸 las siguientes caracter铆sticas:

  • Electr贸nica y digital
  • Realizaba las 4 operaciones b谩sicas aritm茅ticas
  • Programable
  • Almacenaba programas y datos (ya implementaba algunas ideas de Von Neumann)

Precursoras (ENIAC, MARK I)

  • Carec铆an de herramientas ling眉铆sticas para ser programadas al nivel de la EDSAC
  • Iniciaron con c贸digo m谩quina, se les llama 1GL o first generation languages

Lenguajes ensambladores

  • Representaciones simb贸licas del lenguaje m谩quina
  • Un programa traductor de las instrucciones
  • Al principio cada fabricante usaba su propio ensamblador, lo que hac铆a imposible la portabilidad
  • Se les conoce como 2GL o second generation languages
  • Los primeros dispositivos fueron las tarjetas perforadas

1946: en la Universidad de Pensilvania se pone en funcionamiento la ENIAC (Electronic Numerical Integrator And Calculator), que funcionaba a v谩lvulas y fue la primera computadora electr贸nica de prop贸sito general.

Y uno creyendo desde ni帽o que los inventores de las computadoras fueron estos dos se帽ores:

Digo cre铆a, porque cuando yo era ni帽o apenas hab铆a televisi贸n en mi casa.

El futuro ser谩 maravilloso!

馃 Los primeros computadores electr贸nicos se programaban directamente usando el conjunto de instrucciones del procesador, en c贸digo m谩quina.

Introducci贸n a la programaci贸n
Los lenguajes de programaci贸n surgieron de lad ideas de Charles Babagge, porfesor de la universida de Cambrige.
Babagge dise帽o la m谩quina anal铆tica (primera calculadora universal)

La maquian de Babagge fue construido por Ada Augusta Byron o Ada Lovelace. quien es conciderada primera programadora de la historia.

genial!

cuando estaba en bachillerato, mi vecina trabajaba como 鈥減erforadora de tarjetas鈥. Las tarjetas se ponian en un tipo de maquina de escribir y asi pasaban el c贸digo.
Un programa requeria muchas tarjetas y se numeraban secuencialmente. Asi que que todo el dia se llevaba para escribir un programa que otra persona se encargaba de alimentar a la mainframe. Si habia algun error de sintaxis o logico, habia que desechar y capturar todo, me contaba鈥

Un dato curioso es que el t茅rmino 鈥渂ug鈥 se empezo a utilizar y popularizar por los operadores del ordenador Mark III que lo utilizaron para referirse a los fallos del ordenador y al revisarlo se dieron cuenta que uno de los rel茅s ten铆a un comportamiento extra帽o y decidieron sustituirlo. AL hacerlo, se encontraron con una polilla(bug o insecto) atascada en su interior鈥 de ah铆 viene el t茅rmino que utilizamos hoy en d铆a para referirnos a los errores de software.

Se dice la primera computadora, no la 鈥減rimer鈥 computadora. El adjetivo siempre debe concordar con el g茅nero del sustantivo.

Decada de los 40s: primeras computadoras y ensamblador

La primera computadora

  • Se dice que la primera computadora fu茅 la EDSAC (Electronic Delay Storage Automatic Calculator), ya que fue la primera electronica y digital, realizar operaciones aritmeticas b谩sicas, ser programable y almacenar datos y programas.

  • Tambien existieron precursoras como la MARK I y ENIAC, pero estos no poseian herramientas para ser programadas como la EDSAC. Es decir, no se podia programar a traves de 0s y 1s, sino que se usaban partes del hardware.

  • El uso de 0s y 1s fue la primera generaci贸n de lenguajes (1GL)

Lenguaje ensamblador

  • El segundo lenguaje en nacer. Se podr铆a decir que es un binario simbolico. (2GL)

  • Cuando hablamos de lenguaje ensamblador no hablamos de un solo lenguaje, ya que pod铆a varias de maquina en maquina. Es decir, ten铆a nula portabilidad.

un poco de historia

yo tenido con cistas de video jijiji

creo que tambein el 脕baco fue una de las principales

DECADAS DE LOS 40s
PRIMERAS COMPUTADORAS Y LENGUAJES ENSAMBLADORES

.
La primer computadora no era una maquina abstracta ya que este es un concepto te贸rico.
.
Existen distintos criterios para definir cual fue la primera computadora algunos autores mencionan que fue la EDSAC (Electronic Delay Storage Automatic Calculator) ya que cumpl铆a con las caracter铆sticas de la arquitectura de Von Neumann.
.

  • Electronica y digital.
  • Realizar 4 operaciones b谩sicas.
  • Es programable.
  • Almacena programas y datos.
    .

La EDSAC fue inspirada en la EDBAC ya que implementaba algunas de las ideas de Von Neumann.
.
Las computadoras MARK I y ENIAC carec铆an de las herramientas ling眉铆sticas para ser programadas al nivel de la EDSAC ya que la EDSAC pod铆a ser programada a trav茅s de c贸digo binario.
.
A lo largo de la historia las computadoras utilizaron varios m茅todos de entrada de la informaci贸n como
.

  • Switches.
  • Perillas.
  • Bulbos.
  • Cables.
  • Etc.
    .

Estos permit铆an comunicarse con las computadoras atraves贸 del c贸digo binario y estos son conocidos como 1GL (First Generation Lenguages).
.
Posteriormente surgieron un conjunto de lenguajes llamados lenguajes ensambladores. Son un conjunto de lenguajes debido a que cada uno estaba limitado por las caracter铆sticas del hardware de la computadora y esto hacia que varias computadoras de distintos modelos o tipos usara un lenguaje ensamblador distinto lo que hacia imposible la portabilidad de un programa.
.
El lenguaje embalador es una representaci贸n simb贸lica del lenguaje binario. Esto permiti贸 llevar a otro nivel 2GL(Second Generation Lenguages) ya que con la evoluci贸n de estos lenguajes hacia posible la portabilidad de un programa, los primeros dispositivos que permitan hacer la potabilidad de un programa eran las tarjetas perforadas.

a primera generaci贸n de computadoras eran usualmente construidas a mano usando circuitos que conten铆an rel茅s y tubos de vac铆o, y a menudo usaron tarjetas perforadas (punched cards) o cinta de papel perforado (punched paper tape) para la entrada de datos [input] y como medio de almacenamiento principal (no vol谩til).

1940 computadoras modernas, con alimentaci贸n el茅ctrica.
La velocidad y capacidad de memoria limitadas forzaron a los programadores a escribir programas, en lenguaje ensamblador muy afinados. la programaci贸n en lenguaje ensamblador requer铆a de un gran esfuerzo intelectual y era muy propensa a errores. las restricciones de hardware defin铆an el lenguaje. Las tarjetas perforadas permit铆an 80 columnas, pero algunas de estas ser铆an utilizadas para una clasificaci贸n de cada tarjeta.
El uso del tambor magn茅tico para la memoria implicaba que los programas inform谩ticos tuvieran que estar intercalados con las rotaciones del tambor. Por lo tanto los programas eran muy dependientes del hardware.

1943 - Plankalk眉l (Respetad a Konrad), dise帽ado, pero sin implementar durante medio siglo
1946: Konrad Zuse , un ingeniero Alem谩n mientras trabajaba en los Alpes de Bavaria, desarroll贸 el lenguaje Plankalkul, el cual, fue aplicado entre otras cosas para jugar al ajedrez. En 1948, Konrad Zuse public贸 un art铆culo acerca de su lenguaje de programaci贸n Plankalk眉l. no fue implementado en su vida y sus contribuciones fueron aisladas de otros desarrollos.

1943 - se crea el sistema de codificaci贸n ENIAC.
Computadoras como ENIAC y EDVAC almacenaban informaci贸n, tanto n煤meros como instrucciones de programa, como grupos de d铆gitos binarios 0 y 1. Un programa consist铆a en una serie de instrucciones escritas en este lenguaje de m谩quina. Cada instrucci贸n se compone a menudo de dos partes, un grupo de bits (d铆gitos binarios) que representan la operaci贸n a realizar, y un grupo que representa el operando (la direcci贸n de m谩quina de los datos a ser operados). 1949 - 1954 鈥 una serie de conjuntos de instrucciones nemot茅cnicas como la de ENIAC, comenzando en 1949 con C-10 para BINAC (que luego evolucionar铆a en UNIVAC). Cada conjunto de instrucciones estaba destinado a un fabricante espec铆fico el lenguaje de m谩quina requer铆a que se escribieran series muy largas de instrucciones numeradas y con los c贸digos binarios para los diferentes comandos que ten铆a el set de instrucci贸n de la m谩quina. se deb铆a llevar un registro de las direcciones de almacenamiento de los datos y las instrucciones. un solo programa, tomaba meses para escribirse Y no eran raro que tuvieran errores dif铆ciles de encontrar.

Esta clase la rompio!

Interesante