
1. Lenguajes de programación
1.1. Conceptos Basicos
1.1.1. Definición de los lenguajes de programación
1.1.1.1. Los lenguajes de programación son un conjunto de reglas, símbolos y convenciones utilizados para escribir programas de computadora. Los programas escritos en un lenguaje de programación pueden ser entendidos y ejecutados por una computadora. Los lenguajes de programación permiten a los programadores expresar ideas y algoritmos de manera más clara y concisa, lo que facilita el desarrollo de programas complejos.
1.1.2. Clasificación de los lenguajes de programación
1.1.2.1. Según su nivel de abstracción
1.1.2.1.1. los lenguajes de programación se pueden clasificar en lenguajes de bajo nivel y lenguajes de alto nivel. Los lenguajes de bajo nivel, como el lenguaje ensamblador, están muy cercanos al lenguaje de la máquina y ofrecen un mayor control sobre el hardware, pero son más difíciles de entender y de programar. Los lenguajes de alto nivel, como Python, C++, Java, entre otros, son más fáciles de entender y de programar, ya que están más cercanos al lenguaje humano y ofrecen una mayor abstracción, pero pueden ser menos eficientes en términos de velocidad y uso de memoria.
1.1.2.2. Según su tipo de paradigma
1.1.2.2.1. los lenguajes de programación también se pueden clasificar según el paradigma que utilizan para describir el comportamiento de los programas. Los paradigmas más comunes son la programación estructurada, la programación orientada a objetos, la programación funcional y la programación lógica.
1.1.2.3. Según su propósito
1.1.2.3.1. los lenguajes de programación se pueden clasificar según el propósito para el cual fueron diseñados. Por ejemplo, existen lenguajes de programación específicos para la creación de páginas web, como HTML y CSS, lenguajes de programación para la creación de bases de datos, como SQL, y lenguajes de programación para la creación de aplicaciones científicas, como MATLAB y R.
1.1.2.4. Según su popularidad
1.1.2.4.1. los lenguajes de programación también se pueden clasificar según su popularidad entre los programadores. Algunos de los lenguajes de programación más populares en la actualidad son Java, Python, C++, JavaScript y PHP.
1.2. Antecedentes Históricos
1.2.1. 1840
1.2.1.1. Los antecedentes históricos de los lenguajes de programación se remontan a la década de 1840, cuando Ada Lovelace, una matemática y escritora británica, colaboró con Charles Babbage en la programación de la Máquina Analítica.
1.2.2. 1950
1.2.2.1. En la década de 1950, se desarrollaron los primeros lenguajes de programación de alto nivel, que permitían a los programadores escribir código en un lenguaje más cercano al lenguaje humano que al lenguaje de máquina. Entre los primeros lenguajes de programación se encuentran Fortran, COBOL y LISP.
1.2.3. 1960
1.2.3.1. A finales de la década de 1950 y principios de la década de 1960, se desarrollaron los primeros compiladores, que permitían traducir el código escrito en un lenguaje de programación de alto nivel a lenguaje de máquina. Esto hizo que los lenguajes de programación fueran más accesibles y fáciles de utilizar.
1.2.4. 1970
1.2.4.1. En la década de 1970, se desarrollaron lenguajes de programación orientados a objetos, como Smalltalk y Simula. Estos lenguajes permitían a los programadores trabajar con objetos y clases, lo que facilitaba la programación y la reutilización de código.
1.2.5. 1980
1.2.5.1. En la década de 1980, se desarrollaron lenguajes de programación más eficientes y rápidos, como C y C++. Estos lenguajes se convirtieron en los más populares para la programación de sistemas y aplicaciones de alto rendimiento.
1.3. Características y principales avances de cada generación de lenguajes de programación
1.3.1. Primera generación
1.3.1.1. Los primeros lenguajes de programación que se utilizaron eran lenguajes de máquina, que consistían en una serie de códigos binarios que representaban las operaciones de la computadora.
1.3.2. Segunda generación
1.3.2.1. En la década de 1950, se desarrollaron los lenguajes de bajo nivel, también conocidos como lenguajes ensambladores.
1.3.3. Tercera generación
1.3.3.1. A finales de la década de 1950 y principios de la década de 1960, se desarrollaron los primeros lenguajes de alto nivel, que se parecían más al lenguaje humano que al lenguaje de máquina.
1.3.4. Cuarta generación
1.3.4.1. En la década de 1970, se desarrollaron los lenguajes de programación de cuarta generación, también conocidos como lenguajes de programación de alto nivel.
1.4. Funcionamiento del computador
1.4.1. arquitectura de von Neumann
1.4.1.1. La arquitectura de von Neumann es un modelo conceptual para la construcción de computadoras digitales que fue propuesto por el matemático y científico de la computación John von Neumann en los años 40 del siglo XX. Es el modelo de arquitectura predominante en la mayoría de los computadores modernos
1.4.1.1.1. Unidad Central de Procesamiento
1.4.1.1.2. Memoria
1.4.1.1.3. Dispositivos de Entrada/Salida
1.4.1.1.4. Bus de datos
1.4.2. fases de ejecución de un programa
1.4.2.1. carga
1.4.2.1.1. En informática, la carga se refiere a la transferencia de un programa o archivo desde un dispositivo de almacenamiento (como un disco duro o una unidad USB) a la memoria de la computadora para que pueda ser ejecutado o utilizado. La carga es un paso fundamental en la ejecución de cualquier programa, ya que sin ella el programa no podría ser ejecutado.
1.4.2.2. interpretación
1.4.2.2.1. En informática, la interpretación es un método de ejecución de código en el que el programa se ejecuta directamente desde su código fuente, sin necesidad de ser compilado primero. La interpretación se lleva a cabo por un programa llamado intérprete, que lee el código fuente y lo traduce a código ejecutable a medida que avanza la ejecución del programa.
1.4.2.3. ejecución
1.4.2.3.1. La ejecución de un programa implica la realización de una secuencia de instrucciones de manera ordenada y controlada por la CPU. Durante la ejecución, la CPU busca en la memoria las instrucciones a ejecutar, las decodifica y las ejecuta.
1.4.2.4. almacenamiento de resultados
1.4.2.4.1. Durante la ejecución de un programa, los resultados de las operaciones realizadas se almacenan en la memoria. Es común que un programa necesite almacenar resultados parciales de cálculo para utilizarlos más tarde, o bien que produzca un resultado final que debe ser almacenado en la memoria para su posterior uso.
1.4.3. papel de la CPU y la memoria durante la ejecución de un programa
1.4.3.1. La CPU es el componente que ejecuta las instrucciones del programa, lo que implica la realización de cálculos y la toma de decisiones. La memoria es el componente que almacena los datos y las instrucciones que necesita el programa. La memoria se organiza en celdas o posiciones de memoria
2. Historia del computador
2.1. Antecedentes Históricos
2.1.1. Abaco
2.1.1.1. El ábaco es un dispositivo de cálculo que consiste en una tabla con varillas o alambres paralelos sobre los que se deslizan cuentas. El ábaco es utilizado desde hace más de 2000 años, y se cree que su origen se encuentra en la antigua China.
2.1.2. Pascalina
2.1.2.1. La Pascalina fue una de las primeras calculadoras mecánicas y fue inventada por el matemático francés Blaise Pascal. La máquina consistía en una serie de ruedas de metal dentadas que podían sumar y restar
2.1.3. Máquina de calcular mecánica
2.1.3.1. Esta máquina consistía en un conjunto de ruedas y engranajes que permitían realizar sumas, restas, multiplicaciones y divisiones. La máquina de Schickard fue diseñada para ayudar en los cálculos matemáticos, especialmente en la multiplicación y división de números grandes.
2.1.4. Máquina analítica de Charles Babbage
2.1.4.1. una máquina mecánica programable que podía realizar cálculos complejos y estaba diseñada para ser capaz de realizar cualquier operación matemática.
2.1.5. Ada Lovelace
2.1.5.1. fue una matemática y escritora inglesa, conocida principalmente por ser la primera programadora de la historia. Hija del poeta Lord Byron y de Annabella Milbanke, Ada fue educada en matemáticas, lenguas y música.
2.1.6. Tabuladora electromecánica de Herman Hollerith
2.1.6.1. La máquina tabuladora desarrollada por Herman Hollerith para el censo de Estados Unidos en 1890 fue un hito importante en la historia de la informática. Hollerith, que había trabajado como empleado del censo en 1880, se dio cuenta de que el proceso de contar manualmente la gran cantidad de datos recopilados era lento, costoso y propenso a errores.
2.1.7. ENIAC
2.1.7.1. El ENIAC (Electronic Numerical Integrator and Computer) fue la primera computadora electrónica de propósito general de la historia. Fue desarrollada por el equipo de John Mauchly y J. Presper Eckert en la Universidad de Pensilvania, Estados Unidos, y fue inaugurada el 14 de febrero de 1946.
2.2. Evolución de la tecnología y el hardware
2.2.1. Válvulas
2.2.1.1. A finales de la década de 1930, los computadores utilizaban tubos de vacío o válvulas para procesar información. Estos dispositivos eran grandes y costosos, y se calentaban rápidamente, lo que provocaba fallos en el hardware.
2.2.2. Transistores
2.2.2.1. En la década de 1950, los transistores reemplazaron a las válvulas como componentes clave en los circuitos electrónicos de los computadores. Los transistores eran más pequeños, más económicos y más eficientes que las válvulas, lo que permitió la creación de dispositivos electrónicos más pequeños y rápidos.
2.2.3. Circuitos integrado
2.2.3.1. En la década de 1960, se desarrollaron los circuitos integrados, que combinan múltiples transistores y otros componentes en un solo chip de silicio
2.2.4. Microprocesadores
2.2.4.1. A principios de la década de 1970, se crearon los primeros microprocesadores, que combinaban múltiples circuitos integrados en un solo chip y permitían la creación de computadores personales.
2.2.5. Computadores personales
2.2.5.1. Los primeros computadores personales aparecieron en la década de 1970 y se popularizaron en la década de 1980. Estos dispositivos se basaban en microprocesadores y eran lo suficientemente pequeños como para ser utilizados en un escritorio.
2.2.6. Computadores portátiles
2.2.6.1. En la década de 1980, aparecieron los primeros computadores portátiles, que se volvieron cada vez más populares en las décadas siguientes.
2.2.7. Dispositivos móviles
2.2.7.1. A principios del siglo XXI, los dispositivos móviles, como los smartphones y las tabletas, se volvieron cada vez más populares. Estos dispositivos utilizan microprocesadores y otros componentes electrónicos avanzados para realizar una amplia variedad de tareas.
2.2.8. Computación en la nube
2.2.8.1. En la última década, la computación en la nube se ha vuelto cada vez más popular. Los servicios de la nube permiten a los usuarios acceder a una amplia variedad de aplicaciones y servicios en línea, sin necesidad de tener un hardware avanzado en su propio dispositivo.
3. Luver Lopez, codigo:20231005155
4. Componentes de un Computador
4.1. CPU (unidad central de procesamiento)
4.1.1. Es el cerebro del ordenador que realiza la mayoría de los cálculos y procesa la información. Los fabricantes más populares de CPUs son Intel y AMD.
4.1.1.1. Interconexión
4.1.1.1.1. Está compuesta por la unidad aritmético-lógica (ALU) y la unidad de control (UC). La CPU se comunica con otros componentes del computador a través de buses.
4.2. Placa madre
4.2.1. Es la pieza de hardware que conecta todos los componentes juntos. Es la base sobre la que se construye el PC.
4.2.1.1. Interconexión
4.2.1.1.1. La tarjeta madre tiene varios puertos y conectores para conectar dispositivos como la CPU, la memoria RAM, el disco duro, la tarjeta de sonido y la tarjeta de video.
4.3. RAM (memoria de acceso aleatorio)
4.3.1. Es donde se almacenan los datos temporales que necesita la CPU para trabajar en tiempo real. Cuanta más RAM tenga un PC, más eficientemente podrá manejar múltiples tareas al mismo tiempo.
4.3.1.1. Interconexión
4.3.1.1.1. La memoria RAM se comunica con la CPU a través de un bus.
4.4. Disco duro
4.4.1. Es donde se almacenan los archivos y el sistema operativo de un PC. Los discos duros pueden ser HDD (unidades de disco duro) o SSD (unidades de estado sólido). Los SSD son más rápidos y eficientes en términos de consumo de energía.
4.4.1.1. Interconexión
4.4.1.1.1. La información en el disco duro se almacena en discos magnéticos que giran a alta velocidad. El disco duro se comunica con la CPU a través de un controlador de disco y un bus.
4.5. Fuente de alimentación
4.5.1. Es la unidad que proporciona energía a todos los componentes del PC. Debe ser lo suficientemente potente para alimentar todos los componentes del PC.
4.5.1.1. Interconexión
4.5.1.1.1. La fuente de alimentación se interconecta con la placa madre, por medio del conector de alimentación principal ubicado en la misma placa
4.6. Tarjeta gráfica
4.6.1. Es el componente que procesa los gráficos y proporciona la salida de vídeo. Las tarjetas gráficas dedicadas son más potentes que las integradas en la placa madre.
4.6.1.1. Interconexión
4.6.1.1.1. La tarjeta de video se comunica con la CPU a través de un bus de expansión y tiene su propia memoria RAM dedicada para el procesamiento de gráficos.
4.7. Tarjeta de sonido
4.7.1. Es el dispositivo que permite leer y grabar CD, DVD y Blu-ray.
4.7.1.1. Interconexión
4.7.1.1.1. La tarjeta de sonido se comunica con la CPU a través de un bus de expansión y tiene su propio procesador de audio y memoria RAM dedicada para el procesamiento de sonido.
4.8. Teclado y ratón
4.8.1. Son los dispositivos de entrada que permiten al usuario interactuar con el PC.
4.8.1.1. Interconexión
5. Generaciones del computador
5.1. Primera generación (1940-1956)
5.1.1. Durante esta época, se utilizaban tubos de vacío para procesar información. El ejemplo más representativo de esta época es la computadora ENIAC, desarrollada en 1945. Estas computadoras eran grandes y pesadas y consumían mucha energía eléctrica.
5.1.1.1. Características
5.1.1.1.1. Utilizaban tubos de vacío como componente principal para procesar información.
5.1.1.1.2. Eran grandes, costosas y consumían mucha energía eléctrica.
5.2. Segunda generación (1956-1963)
5.2.1. En esta generación se utilizan transistores en lugar de tubos de vacío, lo que resultó en una mayor velocidad de procesamiento y menor consumo de energía. La IBM 7090, desarrollada en 1959, es un ejemplo representativo de esta generación.
5.2.1.1. Características
5.2.1.1.1. Utilizaban transistores en lugar de tubos de vacío, lo que permitió una mayor velocidad de procesamiento y menor consumo de energía.
5.2.1.1.2. Eran más pequeñas, más rápidas y más confiables que las computadoras de la primera generación.
5.3. Tercera generación (1964-1971)
5.3.1. En esta época se utilizan circuitos integrados, lo que permitió una mayor miniaturización de los componentes y mayor eficiencia energética. Los lenguajes de programación de alto nivel, como COBOL y FORTRAN, también surgieron en esta época.
5.3.1.1. Características
5.3.1.1.1. Utilizaban circuitos integrados, lo que permitió una mayor miniaturización de los componentes y mayor eficiencia energética.
5.3.1.1.2. Se desarrollaron los sistemas de tiempo compartido, que permitieron a varios usuarios trabajar en una misma computadora al mismo tiempo.
5.4. Cuarta generación (1971-2010)
5.4.1. En esta época se utilizan los microprocesadores, que combinan miles de circuitos integrados en un solo chip. Esto permitió una mayor miniaturización y portabilidad de los computadores. Los computadores personales y las laptops se desarrollaron en esta época, y surgieron lenguajes de programación más avanzados, como C++ y Java.
5.4.1.1. Características
5.4.1.1.1. Se desarrollaron los microprocesadores, que combinan miles de circuitos integrados en un solo chip, lo que permitió una mayor miniaturización y portabilidad de los computadores.
5.4.1.1.2. Surgieron las computadoras personales y las laptops, lo que permitió una mayor difusión de los computadores entre la población general.
5.5. Quinta generación (desde 2010)
5.5.1. En esta época, se están desarrollando tecnologías de inteligencia artificial y computación cuántica. Estas tecnologías están permitiendo avances significativos en el procesamiento de grandes cantidades de datos y en la simulación de procesos complejos.
5.5.1.1. Características
5.5.1.1.1. Se están desarrollando tecnologías de inteligencia artificial y computación cuántica, que están permitiendo avances significativos en el procesamiento de grandes cantidades de datos y en la simulación de procesos complejos.
5.5.1.1.2. Se están utilizando nuevas arquitecturas de procesamiento, como las Unidades de Procesamiento Gráfico (GPU) y los Sistemas en Chip (SoC), para mejorar el rendimiento de los computadores.