Contenido Checked

Computadora

Sabías ...

Esta selección wikipedia ha sido elegido por los voluntarios que ayudan Infantil SOS de Wikipedia para esta Selección Wikipedia para las escuelas. Para comparar obras de caridad de patrocinio este es el mejor vínculo de patrocinio .

Computadora
Acer Aspire 8920 Gemstone por Georgy.JPG Supercomputadora Columbia - NASA Advanced Supercomputing Facility.jpg Intertec Superbrain.jpg
2010-01-26-technikkrempel por RalfR-05.jpg Thinking Machines Conexión a máquina CM-5 Frostburg 2.jpg G5 suministro de Wikipedia a través de Gigabit en el Lange Nacht der Wissenschaften 2006 en Dresden.JPG
DM IBM S360.jpg Acorn BBC Maestro Serie Microcomputer.jpg Dell PowerEdge Servers.jpg

Un ordenador es un dispositivo de propósito general que puede ser programado para llevar a cabo un conjunto finito de operaciones aritméticas o lógicas. Desde una secuencia de operaciones se puede cambiar fácilmente, el ordenador puede resolver más de un tipo de problema.

Convencionalmente, un ordenador consta de al menos un elemento de procesamiento, típicamente una unidad de procesamiento central (CPU) y alguna forma de la memoria. El elemento de procesamiento realiza operaciones aritméticas y lógicas, y una unidad de secuenciación y el control que puede cambiar el orden de las operaciones sobre la base de la información almacenada. Los dispositivos periféricos permiten que la información que se recupera de una fuente externa, y el resultado de operaciones guardan y se recuperan.

El primero electrónica las computadoras digitales se desarrollaron entre 1940 y 1945 en el Reino Unido y Estados Unidos. Originalmente eran del tamaño de una habitación grande, que consume tanta energía como varios cientos de computadoras personales modernas (PC). En esta era mecánico computadoras analógicas fueron usadas para aplicaciones militares.

Los ordenadores modernos basados en circuitos integrados son millones a miles de millones de veces más capaces que las primeras máquinas, y ocupan una fracción del espacio. Ordenadores simples son lo suficientemente pequeño como para caber en dispositivos móviles, y computadoras móviles pueden ser alimentados por pequeña baterías. Computadoras personales en sus diversas formas son iconos de la Era de la Información y son lo que la mayoría de la gente considera como "ordenadores". Sin embargo, el ordenadores integrados se encuentran en muchos dispositivos de Reproductores de MP3 a aviones de combate y desde juguetes hasta robots industriales son los más numerosos.

Historia de la informática

La Telar de Jacquard, en exhibición en el Museo de Ciencia e Industria de Manchester, Inglaterra, fue uno de los primeros dispositivos programables.

El primer uso de la palabra "equipo" fue grabado en 1613 en un libro llamado "Los rebusca yong mans" por Inglés escritor Richard Braithwait me Haue leí el equipo más verdadero de Times, y la mejor aritmético que euer respiraba, y él reduceth tus Dayes en un número corto. Se refirió a una persona que lleva a cabo cálculos o cálculos, y la palabra continuó con el mismo significado, hasta mediados del siglo 20. A partir de finales del siglo 19 la palabra comenzó a adquirir su significado más familiar, una máquina que realiza cálculos.

Limited-función primeros ordenadores

La historia de la computadora moderna comienza con dos tecnologías diferentes, el cálculo automático y capacidad de programación. Sin embargo no existe ningún aparato puede ser identificado como el primer equipo, en parte a causa de la aplicación incoherente de ese término. Unos dispositivos están Cabe mencionar, sin embargo, al igual que algunas ayudas mecánicas a la informática, que eran muy exitosa y sobrevivieron durante siglos hasta la llegada de la calculadora electrónica , como la sumeria ábaco , diseñado alrededor de 2500 AC de que un descendiente ganó una competencia de velocidad contra un escritorio moderno máquina calculadora en Japón en 1946, el reglas de cálculo, inventado en la década de 1620, que se llevaron a cinco Misiones espaciales Apolo, incluyendo a la Luna y posiblemente el astrolabio y la Mecanismo de Antikythera, un antiguo ordenador astronómico construido por los griegos alrededor del 80 aC. El matemático griego Herón de Alejandría (c. 10-70 dC) construyó un teatro mecánico que lleva a cabo una obra de teatro que dura 10 minutos y fue operado por un complejo sistema de cuerdas y tambores que podrían ser considerados como un medio para decidir que realizan las partes del mecanismo que acciones y cuándo. Esta es la esencia de la programabilidad.

Hacia el final del siglo 10, el monje francés Gerbert d'Aurillac trajo de España los dibujos de una máquina inventada por el Moros que contestaron Sí o No a las preguntas que se le pidió. De nuevo en el siglo 13, los monjes Alberto Magno y Roger Bacon construyó hablar androides sin cualquier desarrollo ulterior (Albertus Magnus se quejaron de que había perdido cuarenta años de su vida en que Tomás de Aquino , aterrorizada por su máquina, destruido).

En 1642, el Renacimiento vio la invención de la calculadora mecánica, un dispositivo que podría realizar todas las cuatro operaciones aritméticas sin depender de la inteligencia humana. La calculadora mecánica fue la raíz del desarrollo de las computadoras de dos maneras distintas. Inicialmente, fue en tratar de desarrollar calculadoras más potentes y más flexibles que la computadora fue teorizado por primera vez por Charles Babbage y luego desarrolló. En segundo lugar, el desarrollo de un bajo costo calculadora electrónica , sucesora de la calculadora mecánica, resultó en el desarrollo de Intel de la primera disponible en el mercado microprocesador circuito integrado.

Primeros ordenadores de propósito general

En 1801, Joseph Marie Jacquard hizo una mejora a la telar textil mediante la introducción de una serie de tarjetas perforadas de papel como una plantilla que permitió su telar para tejer patrones intrincados automáticamente. El telar de Jacquard resultante fue un paso importante en el desarrollo de las computadoras porque el uso de tarjetas perforadas para definir patrones de tejido puede ser visto como una solución pronta, aunque limitada, forma de programación.

La imagen más famosa en la historia temprana de la Computación

Este retrato de Jacquard fue tejida en seda en un telar de Jacquard y requirió 24.000 tarjetas perforadas para crear (1839). Sólo se produce por encargo. Charles Babbage poseía uno de estos retratos; que le inspiró en el uso de tarjetas perforadas en su motor analítico
La Zuse Z3 de 1941, examinó por primera vez trabajando programable, máquina de computación totalmente automático del mundo.

Fue la fusión de cálculo automático con capacidad de programación que produjo los primeros ordenadores reconocibles. En 1837, Charles Babbage fue el primero en conceptualizar y diseñar un totalmente programable computadora mecánica, su motor analítico. Finanzas limitadas y la incapacidad de Babbage para resistir juguetear con el diseño significa que el dispositivo nunca fue terminado, sin embargo, su hijo, Henry Babbage, completó una versión simplificada de la unidad de cálculo de la máquina analítica (la planta) en 1888. Él hizo una demostración con éxito de su utilizar en mesas de computación en 1906. Esta máquina fue dada a los Museo de la ciencia en South Kensington en 1910.

A finales de la década de 1880, Herman Hollerith inventó la grabación de datos en un soporte legible por máquina. Usos anteriores de soportes legibles por máquina había sido para el control, no datos. "Después de algunos ensayos iniciales con cinta de papel, se instaló en tarjetas perforadas ... "Para procesar estas tarjetas perforadas que inventó el tabulador, y el máquinas perforadora. Estos tres inventos fueron la base de la moderna industria de procesamiento de la información. A gran escala de procesamiento automatizado de datos de tarjetas perforadas se realizó para la 1890 Estados Unidos Censo por la compañía de Hollerith, que más tarde se convirtió en el núcleo de IBM . A finales del siglo 19 una serie de ideas y tecnologías, que más tarde resultar útil en la realización de las computadoras prácticos, habían comenzado a aparecer: Álgebra de Boole, la tubo de vacío (válvula termoiónica), tarjetas y cintas perforadas, y el teletipo.

Durante la primera mitad del siglo 20, muchos científicos necesidades de computación fueron recibidos por cada vez más sofisticados equipos analógicos, que utilizan un modelo mecánico o eléctrico directo del problema de base para cálculo. Sin embargo, estos no eran programable y generalmente carecen de la versatilidad y la precisión de los ordenadores digitales modernos.

Alan Turing es ampliamente considerado como el padre de la moderna ciencia de la computación . En 1936 Turing proporcionó una formalización influyente del concepto de algoritmo y cómputo con el Máquina de Turing, que proporciona un modelo para la computadora digital electrónica. Por su papel en la creación de la computadora moderna, La revista Time en el nombramiento de Turing uno de los 100 personas más influyentes del siglo 20, establece: "El hecho es que todo el que golpea a un teclado, la apertura de una hoja de cálculo o un programa de procesamiento de texto, está trabajando en una encarnación de una máquina de Turing".

La ENIAC, que entró en funcionamiento en 1946, es considerada como la primera computadora electrónica de propósito general.
EDSAC fue uno de los primeros ordenadores para implementar el programa almacenado ( von Neumann) arquitectura.

La Atanasoff Berry Computer (ABC) fue la primera computadora digital electrónica del mundo, aunque no programable . Atanasoff es considerado como uno de los padres de la computadora. Concebido en 1937 por el profesor de física Iowa State College John Atanasoff, y construido con la ayuda de los estudiantes de posgrado Clifford Berry, la máquina no era programable, está diseñado sólo para resolver sistemas de ecuaciones lineales. El equipo empleó computación paralela. La 1973 Tribunal del Jurado en una disputa de patentes encontró que la patente para el 1946 ENIAC equipo derivado de la Atanasoff-Berry Computer.

La primera computadora controlada por programa fue inventado por Konrad Zuse, que construyó el Z3, una máquina de computación electromecánica, en 1941. El primer ordenador electrónico programable fue la Coloso, construido en 1943 por Flores Tommy.

George Stibitz es reconocido internacionalmente como un padre de la computadora digital moderna. Mientras trabajaba en los Laboratorios Bell en noviembre de 1937, Stibitz inventó y construyó una calculadora basada en relés que llamó el "Modelo K" (de "mesa de la cocina", en el que había montado él), que fue el primero en usar binarios circuitos para realizar una operación aritmética. Los modelos posteriores añaden una mayor sofisticación incluyendo aritmética compleja y capacidad de programación.

Una sucesión de manera constante más potente y flexible dispositivos informáticos se construyeron en los años 1930 y 1940, añadiendo poco a poco las características clave que se ven en las computadoras modernas. El uso de la electrónica digital (en gran parte inventada por Claude Shannon en 1937) y capacidad de programación más flexible eran pasos de vital importancia, pero la definición de un punto a lo largo de este camino como "la primera computadora electrónica digital" es difícil Shannon 1940 los logros importantes figura.:

  • Konrad Zuse de electromecánicos "máquinas Z". La Z3 (1941) fue la primera máquina que trabaja con binaria aritmética, incluyendo flotante aritmética de punto y una medida de la capacidad de programación. En 1998, el Z3 fue demostrado ser Turing completo, por lo tanto, ser el primer equipo operativo del mundo.
  • El no programable Atanasoff Berry Computer (comenzado en 1937, terminado en 1941), que utiliza basa tubo de vacío cálculo, números binarios, y memoria condensador regenerativa. El uso de la memoria regenerativa le ha permitido ser mucho más compacto que sus compañeros (que son aproximadamente del tamaño de un amplio escritorio o mesa de trabajo), ya que los resultados intermedios podrían ser almacenados y luego alimentaron de nuevo en el mismo conjunto de elementos de computación.
  • El secreto británico Ordenadores Colossus (1943), que había programabilidad limitada, pero demostraron que un dispositivo que utiliza miles de tubos podría ser razonablemente fiable y electrónicamente reprogramable. Fue utilizado para romper los códigos de tiempo de guerra alemanes.
  • La Harvard Mark I (1944), un equipo electromecánico de gran escala con capacidad de programación limitada.
  • Del Ejército de los EE.UU. Laboratorio de Investigación Balística ENIAC (1946), que utiliza decimal aritmética y, a veces se llama el primer propósito general electrónica equipo (ya Konrad Zuse de Z3 de 1941 utilizado electroimanes en lugar de la electrónica ). Inicialmente, sin embargo, ENIAC tenía una arquitectura que requiere un recableado panel de conexiones para cambiar su programación.

Arquitectura de programa almacenado

Varios desarrolladores de ENIAC, reconociendo sus defectos, se acercó con un diseño mucho más flexible y elegante, que llegó a ser conocido como la "arquitectura de programa almacenado" o arquitectura von Neumann. Este diseño primero fue descrito formalmente por John von Neumann en el papel Primer borrador de un informe sobre el EDVAC, distribuido en 1945. Una serie de proyectos para el desarrollo de las computadoras basadas en la arquitectura de programa almacenado iniciado por estas fechas, la primera de las cuales se completó en 1948 en la Universidad de Manchester, en Inglaterra, la Máquina Manchester Pequeña Escala Experimental (SSEM o "Baby"). La Almacenamiento Electronic Delay calculadora automática (EDSAC), completó un año después de la SSEM en la Universidad de Cambridge, fue la primera aplicación práctica, no experimental del diseño de programa almacenado y se empezó a utilizar inmediatamente para el trabajo de investigación en la universidad. Poco después, la máquina descrita originalmente por papel- de von Neumann EDVAC-se completó pero no vio el uso de tiempo completo por un período adicional de dos años.

Casi todos los ordenadores modernos implementan alguna forma de la arquitectura de programa almacenado, por lo que es el único rasgo por el cual el "ordenador" palabra se define ahora. Mientras que las tecnologías utilizadas en los ordenadores han cambiado dramáticamente desde los primeros ordenadores, de propósito general electrónica de la década de 1940, la mayoría todavía utilizar la arquitectura von Neumann.

Muere de un Intel 80486DX2 microprocesador (tamaño real: 12 × 6,75 mm) en su embalaje

A partir de la década de 1950, la Unión Soviética científicos Sergei Sobolev y Nikolay Brusentsov realizó investigaciones sobre ternarias ordenadores, dispositivos que operaron en un sistema de numeración en base a tres de -1, 0, y 1 en lugar de la convencional de numeración binario sistema sobre el que se basan la mayoría de los ordenadores. Diseñaron el Setun, un ordenador ternario funcional, en Universidad Estatal de Moscú. El dispositivo se puso en producción limitada en la Unión Soviética, pero suplantada por la arquitectura binaria más común.

Semiconductores y microprocesadores

Los ordenadores que utilizan tubos de vacío como sus elementos electrónicos estaban en uso en toda la década de 1950, pero por la década de 1960 habían sido reemplazados en gran medida por máquinas basados en transistores, que eran más pequeños, más rápido, más barato para producir, requiere menos energía y son más fiables. El primer ordenador transistorizado se demostró en el Universidad de Manchester en 1953. En la década de 1970, circuito integrado la tecnología y la posterior creación de microprocesadores, tales como el Intel 4004, se redujo aún más el tamaño y el costo y mayor aumento de la velocidad y la fiabilidad de los equipos. A finales de la década de 1970, muchos productos tales como grabadoras de video contenían ordenadores dedicados llamados microcontroladores, y empezaron a aparecer como un reemplazo para los controles mecánicos en aparatos domésticos como lavadoras. La década de 1980 fue testigo ordenadores personales y el ordenador personal ahora omnipresente. Con la evolución de Internet, los ordenadores personales se están volviendo tan común como la televisión y el teléfono en la casa.

Moderno smartphones son totalmente computadoras programables por derecho propio, ya partir de 2009 también puede ser la forma más común de este tipo de equipos en existencia.

Programas

La característica definitoria de las computadoras modernas que las distingue de todas las demás máquinas es que pueden ser programados . Es decir que algún tipo de instrucciones (la programa) se puede dar a la computadora, y los procesará. Las computadoras modernas basadas en el von Neumann arquitectura a menudo tienen código de máquina en forma de un lenguaje de programación imperativo.

En términos prácticos, un programa de ordenador puede ser sólo unas pocas instrucciones o extenderse a muchos millones de instrucciones, al igual que los programas de procesadores de texto y navegadores web, por ejemplo. Una computadora típica moderna puede ejecutar miles de millones de instrucciones por segundo ( gigaflops) y rara vez comete un error lo largo de muchos años de funcionamiento. Programas de ordenador grande que consiste de varios millones de instrucciones pueden tomar los equipos de programadores años para escribir, y debido a la complejidad de la tarea casi seguro que contienen errores.

Arquitectura programa almacenado

Réplica de la Máquina Experimental de Pequeña Escala (SSEM), el mundo de primera computadora de programa almacenado, en el Museo de Ciencia e Industria de Manchester, Inglaterra

Esta sección se aplica a más común RAM de la máquina-basados computadoras.

En la mayoría de los casos, instrucciones de ordenador son simples: añadir un número a otro, mover algunos datos de un lugar a otro, enviar un mensaje a algún dispositivo externo, etc. Estas instrucciones son leídas desde el equipo de memoria y generalmente se llevan a cabo ( ejecutado) en el orden que se les dio. Sin embargo, por lo general hay instrucciones especiales para decirle al ordenador para saltar hacia adelante o hacia atrás a algún otro lugar en el programa y para llevar a cabo la ejecución de allí. Estos se llaman instrucciones "salto" (o ramas). Además, se pueden realizar operaciones de salto a suceder condicionalmente para que diferentes secuencias de instrucciones se pueden usar dependiendo del resultado de algún cálculo anterior o algún evento externo. Muchos ordenadores apoyan directamente subrutinas, proporcionando un tipo de salto que "recuerda" la localización saltó desde y otra instrucción para volver a la instrucción siguiente a aquél instrucción de salto.

La ejecución del programa se puede comparar a la lectura de un libro. Mientras que una persona normalmente leer cada palabra y línea en secuencia, pueden a veces saltar de nuevo a un lugar más temprano en el texto o saltar secciones que no son de interés. Del mismo modo, un equipo a veces puede volver atrás y repetir las instrucciones de alguna sección del programa una y otra vez hasta que se cumpla alguna condición interna. Esto se llama el flujo de control dentro del programa y es lo que permite a la computadora para realizar tareas en varias ocasiones sin la intervención humana.

Comparativamente, una persona que utiliza un bolsillo calculadora puede realizar una operación aritmética básica como la adición de dos números con unas cuantas pulsaciones de botón. Pero al sumar todos los números de 1 a 1000 tomaría miles de pulsaciones de botón y una gran cantidad de tiempo, con una certeza casi absoluta de cometer un error. Por otro lado, un ordenador puede ser programado para hacer esto con sólo una pocas instrucciones simples. Por ejemplo:

       mov No. 0, suma;  establecer suma a 0 mov No. 1, num;  establecer num 1 bucle: añadir num, suma;  añadir num resumir agregar No. 1, num;  añadir 1 al num cmp num, # 1000;  comparar num 1000 bucle ble;  si num <= 1000, vuelve a detenerse 'loop';  final del programa.  dejar de correr 

Una vez le dijo a ejecutar este programa, el equipo llevará a cabo la tarea, además repetitivo sin necesidad de intervención humana. Casi nunca cometerá un error y un PC moderno puede completar la tarea en alrededor de una millonésima de segundo.

Errores

El primer error real ordenador, una polilla encontró atrapado en un relé de la computadora Harvard Mark II

Los errores en los programas informáticos se llaman " bugs ". Ellos pueden ser benignos y no afecta a la utilidad del programa, o tienen efectos sólo sutiles. Sin embargo, en algunos casos, pueden provocar que el programa o el sistema completo para" colgar "- no responder a la entrada como clics del ratón o pulsaciones de teclado - falle por completo, o al accidente. De lo contrario insectos benignos a veces pueden ser aprovechadas para la mala intención de un usuario sin escrúpulos escribir un explotar, código diseñado para aprovechar un error y perturbar la correcta ejecución de una computadora. Errores por lo general no son culpa de la computadora. Dado que los ordenadores sólo ejecutan las instrucciones que se les dan, los errores son casi siempre el resultado de error del programador o un descuido hizo en el diseño del programa.

Grace Hopper es acreditado por haber primero utilizó el término "errores" en la computación después de que se encontró una polilla muerta cortocircuito de un relé en el Computadora Harvard Mark II en septiembre de 1947.

Código máquina

En la mayoría de las computadoras, las instrucciones individuales se almacenan como código de máquina con cada instrucción que se le asigna un número único (su código de operación o código de operación para abreviar). El comando para sumar dos números tendría un código de operación, el comando para multiplicarlos tendría un código de operación diferentes y así sucesivamente. Las computadoras más simples son capaces de realizar cualquiera de un puñado de diferentes instrucciones; los equipos más complejos tienen varios cientos para elegir, cada uno con un código numérico único. Dado que la memoria de la computadora es capaz de almacenar números, también puede almacenar los códigos de instrucción. Esto nos lleva al hecho importante que programas enteros (que son simplemente listas de estas instrucciones) pueden ser representados como listas de números y pueden a su vez ser manipulados dentro de la computadora de la misma manera como datos numéricos. El concepto fundamental de almacenar programas en la memoria de la computadora junto con los datos que operan en es el quid de la von Neumann, o programa almacenado, la arquitectura. En algunos casos, un ordenador puede almacenar parte o la totalidad de su programa en la memoria que se mantiene separada de los datos que opera sobre. Esto se llama el Arquitectura Harvard después de la Computadora Harvard Mark I. Modernos equipos von Neumann muestran algunos rasgos de la arquitectura de Harvard en sus diseños, tal como en los cachés de CPU .

Si bien es posible escribir programas de ordenador como largas listas de números ( lenguaje de máquina) y mientras que esta técnica se utilizó con muchas primeras computadoras, es muy tedioso y potencialmente propenso a errores de hacerlo en la práctica, especialmente para programas complicados. En lugar de ello, cada instrucción básica se le puede dar un nombre corto que es indicativa de su función y fácil de recordar - una mnemotécnico como ADD, SUB, MULT o saltar. Estos mnemotecnia se conocen colectivamente como una computadora de lenguaje ensamblador. La conversión de los programas escritos en lenguaje ensamblador en algo la computadora pueda entender realmente (lenguaje de máquina) se suele hacer mediante un programa informático llamado ensamblador.

A 1970 tarjeta perforada que contiene una línea de un Programa FORTRAN. La carta dice: "Z (1) = S + W (1)" y está etiquetada "PROJ039" para propósitos de identificación.

Lenguaje de programación

Los lenguajes de programación proporcionan varias formas de especificar los programas de ordenador para funcionar. Desemejante las lenguas naturales, los lenguajes de programación están diseñadas para permitir ninguna ambigüedad y ser conciso. Son lenguas puramente escrito y con frecuencia son difíciles de leer en voz alta. Por lo general, se traducen, ya sea en código de máquina por una compilador o un ensamblador antes de ser ejecutado, o traducido directamente en tiempo de ejecución por un intérprete. A veces los programas son ejecutados por un método híbrido de las dos técnicas.

Lenguajes de bajo nivel

Lenguas de máquinas y los lenguajes ensambladores que los representan (colectivamente denominados lenguajes de programación de bajo nivel) tienden a ser único para un determinado tipo de equipo. Por ejemplo, una Computadora arquitectura ARM (tal como se puede encontrar en una PDA o un videojuego de mano) no puede entender el lenguaje de máquina de un Intel Pentium o la AMD Athlon 64 equipo que podría estar en un PC .

Lenguajes de alto nivel

Aunque considerablemente más fácil que en lenguaje de máquina, escribir programas largos en lenguaje ensamblador es a menudo difícil y es también propenso a errores. Por lo tanto, los programas más prácticos están escritos en más abstracto lenguajes de programación de alto nivel que son capaces de expresar las necesidades de la programador más conveniente (y por lo tanto ayudar a reducir error del programador). Los lenguajes de alto nivel son por lo general "compilados" en lenguaje de máquina (o, a veces en lenguaje ensamblador y luego en lenguaje de máquina) usando otro programa de computadora llamado compilador. Lenguajes de alto nivel son menos relacionados con el funcionamiento del equipo de destino de lenguaje ensamblador, y más relacionado con el lenguaje y la estructura del problema (s) para ser resueltos por el programa final. Por tanto, es a menudo posible utilizar diferentes compiladores para traducir el mismo programa de lenguaje de alto nivel en el lenguaje de máquina de muchos tipos diferentes de equipo. Esto es parte de los medios por los que el software como los videojuegos de estos fondos para diferentes arquitecturas de computadora, tales como computadoras personales y varias consolas de videojuegos .

El diseño del programa

El diseño del programa de pequeños programas es relativamente simple y consiste en el análisis del problema, el cobro de entradas, usando las construcciones de programación en lenguas, la elaboración o el uso de procedimientos y algoritmos establecidos, proporcionando datos para dispositivos de salida y las soluciones al problema según corresponda. Dado que los problemas se hacen más grandes y más complejos, se encuentran características tales como subprogramas, módulos, documentación formal, y los nuevos paradigmas como la programación orientada a objetos. Los programas grandes con miles de líneas de código y más requieren metodologías de software formales. La tarea de desarrollar grandes sistemas de software presenta un desafío intelectual significativa. La producción de software con un aceptablemente alta fiabilidad dentro de un horario predecible y el presupuesto ha sido históricamente difícil; la disciplina académica y profesional de los ingeniería de software se concentra específicamente en este desafío.

Componentes

Un ordenador de propósito general tiene cuatro componentes principales: la unidad lógica aritmética (ALU), el unidad de control, la la memoria y los dispositivos de entrada y de salida (denominados colectivamente I / O). Estas partes están interconectadas por autobuses, a menudo hechas de grupos de cables.

Dentro de cada una de estas partes son miles de millones de millones de pequeños circuitos eléctricos que se puede apagar o por medio de un interruptor electrónico. Cada circuito representa una bit (dígito binario) de información de modo que cuando el circuito está en que representa un "1", y cuando fuera de él representa un "0" (en la representación lógica positiva). Los circuitos están dispuestos en puertas lógicas de manera que uno o más de los circuitos pueden controlar el estado de uno o más de los otros circuitos.

La unidad de control, ALU, registra, y E / S básica (y, a menudo otro hardware estrechamente vinculado con estos) son conocidos colectivamente como una unidad central de procesamiento (CPU). Los primeros CPU se componen de muchos componentes separados pero ya que las CPUs mediados de la década de 1970 se han construido típicamente en un solo circuito integrado llamado microprocesador.

Unidad de control

Diagrama que muestra cómo un particular, Instrucción de arquitectura MIPS sería decodificada por el sistema de control.

La unidad de control (a menudo llamado un sistema de control o controlador central) gestiona varios componentes del ordenador; se lee e interpreta (decodifica) las instrucciones del programa, transformándolos en una serie de señales de control que activan otras partes de la computadora. Los sistemas de control en los ordenadores avanzados pueden cambiar el orden de algunas instrucciones a fin de mejorar el rendimiento.

Un componente clave común a todas las CPU es el contador de programa, una celda de memoria especial (una registro) que realiza un seguimiento de los cuales ubicación en la memoria de la siguiente instrucción se va a leer.

La función del sistema de control es el siguiente-en cuenta que esta es una descripción simplificada, y algunas de estas etapas se pueden realizar simultáneamente o en un orden diferente dependiendo del tipo de CPU:

  1. Leer el código para la siguiente instrucción de la célula indicada por el contador de programa.
  2. Decodificar el código numérico para la instrucción en un conjunto de comandos o señales para cada uno de los otros sistemas.
  3. Incrementar el contador de programa para que apunte a la siguiente instrucción.
  4. Leer todos los datos que la instrucción requiere de las células en la memoria (o tal vez desde un dispositivo de entrada). La ubicación de esta información requerida se almacena típicamente dentro del código de instrucción.
  5. Proporcionar los datos necesarios para una ALU o registrarse.
  6. Si la instrucción requiere una ALU o hardware especializado para completar, instruir el hardware para realizar la operación solicitada.
  7. Escriba el resultado de la ALU de nuevo a una posición de memoria o en un registro o tal vez un dispositivo de salida.
  8. Ir de nuevo al paso (1).

Puesto que el contador de programa es (conceptualmente) sólo otro conjunto de células de memoria, que se puede cambiar por cálculos realizados en la ALU. Adición de 100 al contador de programa causaría la siguiente instrucción a ser leída desde un lugar 100 lugares más abajo en el programa. Instrucciones que modifican el contador de programa son a menudo conocidos como "saltos" y permiten bucles (instrucciones que se repiten por el ordenador) y ejecución de la instrucción a menudo condicional (ambos ejemplos de flujo de control).

La secuencia de operaciones que la unidad de control pasa a través de procesar una instrucción es en sí mismo como un programa de ordenador corto, y de hecho, en algunos diseños de CPU más complejos, hay otro ordenador todavía más pequeña llamada una microsecuenciador, que dirige una programa de microcódigo que hace que todos estos eventos ocurra.

Unidad lógica aritmética (ALU)

La ALU es capaz de realizar dos clases de operaciones: aritméticas y lógicas.

El conjunto de operaciones aritméticas que una determinada soportes ALU pueden estar limitados a la suma y la resta, o podrían incluir multiplicación, división, trigonometría funciones tales como seno, coseno, etc., y raíces cuadradas . Algunas sólo pueden operar en números enteros ( números enteros ), mientras que otros utilizan punto flotante para representar números reales , aunque con una precisión limitada. Sin embargo, cualquier equipo que es capaz de realizar sólo las operaciones más simples se puede programar para derribar las operaciones más complejas en pasos sencillos que puede realizar. Por lo tanto, cualquier equipo puede ser programado para realizar cualquier operación aritmética, aunque se necesitará más tiempo para hacerlo si su ALU no soporta directamente la operación. Una ALU también puede comparar números y retorno valores de verdad booleanos (verdadero o falso) dependiendo de si uno es igual a, mayor o menor que el otro ("es 64 mayor que 65?").

Operaciones lógicas implican la lógica booleana : Y, O, XOR y NO. Estos pueden ser útiles para crear complicado sentencias condicionales y procesamiento de la lógica booleana .

Ordenadores superescalares pueden contener múltiples ALU, lo que les permite procesar varias instrucciones simultáneamente. Los procesadores gráficos y computadoras con SIMD y MIMD características a menudo contienen ALU que pueden realizar operaciones aritméticas con vectores y matrices .

Memoria

Memoria de núcleo magnético fue la memoria de la computadora de elección en toda la década de 1960, hasta que fue sustituido por la memoria de semiconductores.

La memoria de un ordenador se puede ver como una lista de números de células en las que se pueden colocar o leen. Cada celda tiene una "dirección" numerada y puede almacenar un único número. El ordenador puede ser instruido para "poner el número 123 en la celda numerada 1357" o "agregar el número que está en la celda 1357 al número que está en la celda 2468 y poner la respuesta en la celda 1595". La información almacenada en la memoria puede representar prácticamente cualquier cosa. Letras, números, incluso instrucciones de ordenador se pueden colocar en la memoria con la misma facilidad. Dado que la CPU no distingue entre los diferentes tipos de información, es responsabilidad del software para dar importancia a lo que la memoria ve como nada más que una serie de números.

En casi todos los ordenadores modernos, cada celda de memoria está configurado para almacenar números binarios en grupos de ocho bits (llamado byte). Cada byte es capaz de representar 256 números diferentes (2 ^ 8 = 256); ya sea de 0 a 255 o -128 a 127. Para almacenar números más grandes, se pueden utilizar varios bytes consecutivos (típicamente, dos, cuatro u ocho). Cuando se requieren números negativos, por lo general se almacenan en notación de complemento de dos. Otros acuerdos son posibles, pero por lo general no se ven fuera de aplicaciones especializadas o contextos históricos. Un ordenador puede almacenar cualquier tipo de información en la memoria si se puede representar numéricamente. Las computadoras modernas tienen miles de millones o incluso billones de bytes de memoria.

La CPU contiene un conjunto especial de células de memoria llamada registros que se pueden leer y escribir a mucho más rápidamente que la principal zona de memoria. Hay típicamente entre dos y cien registros dependiendo del tipo de CPU. Los registros se utilizan para los elementos de datos más frecuentemente necesarias para evitar tener que acceder a la memoria principal se necesita cada datos de tiempo. Como datos constantemente se está trabajando, lo que reduce la necesidad de acceder a la memoria principal (que a menudo es lento en comparación con las unidades de UTA y de control) aumenta considerablemente la velocidad de la computadora.

La memoria principal del ordenador viene en dos variedades principales: memoria de acceso aleatorio o RAM y memoria o ROM de sólo lectura. RAM se puede leer y escribir en cualquier momento la CPU ordena, pero ROM está pre-cargado con los datos y software que nunca cambia, por lo tanto, la CPU sólo puede leer de él. ROM se suele utilizar para almacenar las instrucciones de puesta en marcha inicial de la computadora. En general, el contenido de la memoria RAM se borran cuando el poder de la computadora está apagada, pero ROM conserva sus datos indefinidamente. En un PC, la memoria ROM contiene un programa especializado llamado BIOS que orquesta la carga de la computadora del sistema operativo de la unidad de disco duro en la memoria RAM cuando el ordenador está encendido o se restablece. En ordenadores integrados, que con frecuencia no tienen unidades de disco, toda la software requerido puede ser almacenado en ROM. Software almacenado en la ROM es a menudo llamado firmware, porque es teóricamente más como el hardware de software. La memoria flash desdibuja la distinción entre ROM y RAM, ya que conserva sus datos cuando están apagados pero también es regrabable. Es típicamente mucho más lento que ROM convencional y RAM sin ​​embargo, por lo que su uso está restringido a las aplicaciones donde la alta velocidad es innecesaria.

En los ordenadores más sofisticados puede haber uno o más de memoria RAM memorias caché , que son más lentos que los registros pero más rápido que la memoria principal. Generalmente los equipos con este tipo de caché están diseñados para mover los datos con frecuencia necesarios en la caché de forma automática, a menudo sin la necesidad de ninguna intervención por parte del programador.

Entrada / salida (I / O)

Los discos duros son dispositivos de almacenamiento comunes que se utilizan con los ordenadores.

I / O es el medio por el cual la información a los intercambios informáticos con el mundo exterior. Los dispositivos que proporcionan entrada o salida a la computadora se denominan periféricos. En un ordenador personal típico, periféricos incluyen dispositivos de entrada como el teclado y el ratón, y los dispositivos de salida, tales como los de visualización y impresora. unidades de disco duro, unidades de disquete y unidades de disco óptico servir de ambos dispositivos de entrada y salida. Las redes de computadoras es otra forma de I / O.

Dispositivos I / O son a menudo los equipos complejos por derecho propio, con su propia CPU y la memoria. La unidad de procesamiento gráfico puede contener cincuenta o más pequeños ordenadores que realizan los cálculos necesarios para mostrargráficos en 3D. Moderno computadoras de escritorio contienen muchos equipos más pequeños que asisten a la principal CPU en la realización de I / O.

Multitarea

Mientras que un ordenador puede ser visto como que ejecuta un programa gigantesco almacenada en su memoria principal, en algunos sistemas es necesario para dar la apariencia de ejecutar varios programas simultáneamente. Esto se logra mediante la multitarea es decir, con el interruptor de la computadora rápidamente entre ejecutar cada programa a su vez.

Un medio por el que se hace esto es con una señal especial llamado interrupción, lo que puede provocar periódicamente el equipo para detener la ejecución de instrucciones de donde era y hacer otra cosa en su lugar. Al recordar donde estaba ejecutando antes de la interrupción, el equipo puede volver a esa tarea más tarde. Si varios programas se están ejecutando "al mismo tiempo", entonces el generador de interrupción podría estar causando varios cientos de interrupciones por segundo, haciendo un programa de cambiar cada vez. Dado que los ordenadores modernos normalmente ejecutan instrucciones en varios órdenes de magnitud más rápido que la percepción humana, puede parecer que muchos programas se están ejecutando al mismo tiempo, a pesar de que sólo una vez que se ejecuta en un momento dado. Este método de la multitarea a veces se denomina "tiempo compartido", ya que cada programa se le asigna una "rebanada" de vez en vez.

Antes de la era de las computadoras baratas, el uso principal para la multitarea era permitir a muchas personas a compartir el mismo equipo.

Al parecer, la multitarea causaría un equipo que está cambiando entre varios programas para funcionar más lentamente, en proporción directa a la cantidad de programas que se está ejecutando, pero la mayoría de los programas de pasar gran parte de su tiempo a la espera de los dispositivos de entrada / salida lentos para completar sus tareas. Si un programa está a la espera de que el usuario haga clic en el ratón o pulse una tecla del teclado, entonces no va a tomar un "intervalo de tiempo" hasta que el evento se espera se ha producido. Esto libera tiempo para otros programas que se ejecutan de manera que muchos programas se pueden ejecutar simultáneamente sin pérdida de velocidad inaceptable.

Multiprocesamiento

Cray diseñado muchos superordenadores que solían multiprocesamiento pesadamente.

Algunos equipos están diseñados para distribuir su trabajo a través de varias CPUs en una configuración de multiprocesamiento, una técnica, una vez utilizado sólo en máquinas grandes y poderosos como supercomputadoras, computadoras centrales y servidores. Multiprocesador y equipos multi-core (varias CPU en un solo circuito integrado) personales y portátiles son ahora ampliamente disponible, y se están utilizando cada vez más en los mercados de gama baja como resultado.

Las supercomputadoras, en particular, a menudo tienen arquitecturas altamente singulares que difieren significativamente de la arquitectura básica de programa almacenado y desde ordenadores de propósito general. A menudo cuentan con miles de CPUs, interconexiones de alta velocidad a medida y hardware especializado de computación. Tales diseños tienden a ser útil sólo para tareas especializadas debido a la gran escala de la organización programa requerido para utilizar con éxito la mayor parte de los recursos disponibles a la vez. Las supercomputadoras suelen ver en el uso a gran escala de simulación, representación de gráficos y criptografía aplicaciones, así como con otras llamadas " tareas vergonzosamente paralelas ".

Redes y la Internet

La visualización de una parte de lasrutas en el Internet.

Las computadoras han sido utilizadas para coordinar la información entre múltiples ubicaciones desde la década de 1950. Del ejército de Estados Unidos sistema SAGE fue el primer ejemplo a gran escala de un sistema de este tipo, lo que llevó a una serie de sistemas comerciales para fines especiales tales como Sabre.

En la década de 1970, los ingenieros informáticos en las instituciones de investigación en los Estados Unidos comenzaron a vincular sus ordenadores, así como el uso de la tecnología de las telecomunicaciones. El esfuerzo fue financiado por ARPA (hoy DARPA) y la red informática que resultó fue llamado ARPANET. Las tecnologías que hacen posible la propagación Arpanet y evolucionaron.

Con el tiempo, la red se extendió más allá de las instituciones académicas y militares y se hizo conocido como Internet. La aparición de las redes implicó una redefinición de la naturaleza y los límites de la computadora. Sistemas operativos para PC y aplicaciones fueron modificados para incluir la capacidad de definir y acceder a los recursos de otros equipos de la red, tales como los dispositivos periféricos, la información almacenada, y similares, como extensiones de los recursos de un equipo individual. Inicialmente estas instalaciones estaban disponibles principalmente para las personas que trabajan en ambientes de alta tecnología, pero en la década de 1990 la propagación de aplicaciones como el correo electrónico y la World Wide Web , en combinación con el desarrollo de las tecnologías de redes baratas, rápidas como Ethernet y ADSL vieron redes de computadoras vuelto casi omnipresentes. De hecho, el número de equipos que están conectados en red está creciendo fenomenalmente. Una proporción muy grande de computadoras personales conectar regularmente a Internet para comunicarse y recibir información. La creación de redes de redes "wireless", a menudo utilizando redes de telefonía móvil, ha significado se está convirtiendo cada vez más omnipresente, incluso en entornos de computación móvil.

Arquitectura de Computadores paradigmas

Hay muchos tipos dearquitecturas de computadora:

  • Ordenador cuánticovsequipo químico
  • Procesador escalar vsprocesador vectorial
  • El acceso a memoria no uniforme (NUMA) ordenadores
  • Registrar máquina vsmáquina Pila
  • Arquitectura Harvard vsarquitectura von Neumann
  • Arquitectura celular

La arquitectura de la computadora cuántica tiene la mayor promesa de revolucionar la computación.

Las puertas lógicas son una abstracción común que puede aplicarse a la mayoría de los anterioresdigitales oanalógicas paradigmas.

La capacidad de almacenar y ejecutar listas de instrucciones llamados programas de computadoras hace extremadamente versátil, distinguiéndolos de las calculadoras . La Tesis de Church-Turing es un enunciado matemático de esta versatilidad: cualquier ordenador con una capacidad mínima (ser-Turing completo) es, en principio, capaz de realizar las mismas tareas que cualquier otro equipo puede realizar. Por lo tanto cualquier tipo de ordenador ( netbook, superordenador, autómata celular, etc.) es capaz de realizar las mismas tareas de cálculo, dado el tiempo suficiente y la capacidad de almacenamiento.

Conceptos erróneos

Un equipo no necesita ser electrónico , ni siquiera tienen un procesador ni la memoria RAM, ni siquiera un disco duro. Mientras que el uso popular de la palabra "equipo" es sinónimo de una computadora electrónica personal, la definición moderna de un ordenador es, literalmente, " Un dispositivo que calcula , especialmente un programable [normalmente] máquina electrónica que realiza operaciones matemáticas o lógicas de alta velocidad o que ensambla, tiendas, se correlaciona, o de otro modo procesa la información ". Cualquier dispositivo que procesa la información califica como un ordenador, especialmente si el tratamiento es con propósito.

Tecnología necesaria

Históricamente, las computadoras evolucionaron a partir de los ordenadores mecánicos y, finalmente, a partir de tubos de vacío de transistores. Sin embargo, los sistemas computacionales conceptualmente como flexible como un ordenador personal se pueden construir de casi cualquier cosa. Por ejemplo, una computadora puede ser hecha de bolas de billar ( informáticos bola de billar); un ejemplo muy citado. Más realista, los ordenadores modernos están hechos de transistores hechos de litografiada semiconductores .

Hay investigación activa para hacer que las computadoras de muchos nuevos tipos prometedoras de la tecnología, como ordenadores ópticos, ordenadores de ADN, ordenadores neuronales, y los ordenadores cuánticos . La mayoría de las computadoras son universales, y son capaces de calcular cualquier función computable, y sólo están limitadas por su capacidad de memoria y velocidad de operación. Sin embargo diferentes diseños de computadoras pueden dar muy diferente rendimiento para problemas particulares; por ejemplo, los ordenadores cuánticos pueden potencialmente romper algunos algoritmos de cifrado modernos (por factoring cuántica) muy rápidamente.

Otros temas

  • Glosario de ordenadores

Inteligencia artificial

Un equipo va a resolver los problemas exactamente de la manera en que está programado para, sin tener en cuenta la eficiencia, soluciones alternativas, posibles atajos, o posibles errores en el código. Programas informáticos que aprenden y se adaptan son parte del emergente campo de inteligencia artificial y aprendizaje automático.

Hardware

El término hardware cubre todas las partes de un ordenador que son objetos tangibles. Circuitos, pantallas, fuentes de alimentación, cables, teclados, impresoras y ratones son todo el hardware.

Historia del hardware de computación

Primera generación (mecánico / electromecánico) Calculadoras PASCALINA,Arithmometer,motor de diferencia,Norden bombsight
Los dispositivos programablesTelar de Jacquard,el motor de análisis y deHarvard Mark I, Z3
Segunda generación (tubos de vacío) Calculadoras Atanasoff Berry Computer,IBM 604,UNIVAC 60,UNIVAC 120
Los dispositivos programablesColoso,ENIAC,la máquina Manchester Small-Scale Experimental,EDSAC,Manchester Marcos 1,Ferranti Pegasus,Ferranti MercuryCSIRAC,EDVAC,UNIVAC I,IBM 701,IBM 702,IBM 650,Z22
Tercera generación (transistores discretos y SSI, MSI, LSIcircuitos integrados) Mainframes IBM 7090,IBM 7080,IBM System / 360,MANOJO
MiniordenadorPDP-8,PDP-11,IBM System / 32,IBM System / 36
Cuarta generación (circuitos integrados VLSI)MiniordenadorVAX,IBM System i
4-bit microordenadorIntel 4004,Intel 4040
8-bit microordenadorIntel 8008,Intel 8080,Motorola 6800,Motorola 6809,MOS Technology 6502,Zilog Z80
16-bit microordenadorIntel 8088,Zilog Z8000,WDC 65816/65802
32-bit microordenadorIntel 80386,Pentium,Motorola 68000,arquitectura ARM
64-bit microordenadorAlfa, MIPS, PA-RISC,PowerPC,SPARC, x86-64
Equipo EmbeddedIntel 8048,Intel 8051
Computadora personal Computadora de escritorio,Ordenador,Ordenador portátil,asistente digital personal (PDA),ordenador portátil,PC de la tableta,computadora usable
Teórico / experimental Ordenador cuántico,equipo químico,la computación de ADN,equipo óptico,equipo basado en espintrónica

Otros temas de hardware

Dispositivo periférico (entrada / salida) Entrada Mouse,teclado,palanca de mando,escáner de imagen,webcam,tableta gráfica, micrófono
Salida Monitor,impresora,altavoces
Ambos Disquetera,unidad de disco duro,unidad de disco óptico, teletipo
Buses informáticosDe corto alcance RS-232, SCSI,PCI, USB
De largo alcance (redes de computadoras)Ethernet,ATM,FDDI

Software

Softwarese refiere a partes de la computadora que no tienen una forma material, como los programas, datos, protocolos, etc. Cuando el software se almacena en hardware que no pueden ser fácilmente modificados (como la BIOS ROM en unPC compatible con IBM), a veces es llamado "firmware".

Sistema operativo Unixy BSD UNIX System V,IBM AIX,HP-UX,Solaris (SunOS),IRIX,Lista de los sistemas operativos BSD
GNU/Linux Lista de las distribuciones de Linux,Comparación de las distribuciones de Linux
Microsoft Windows Windows 95, Windows 98, Windows NT,Windows 2000,Windows Me,Windows XP,Windows Vista,Windows 7,Windows 8
DOS 86-DOS (QDOS),PC-DOS,MS-DOS,DR-DOS,FreeDOS
Mac OS Mac OS clásico, Mac OS X
Embedded yen tiempo realLista de los sistemas operativos integrados
Experimental Amoeba,Oberon /Bluebottle,Plan 9 from Bell Labs
Biblioteca Multimedia DirectX,OpenGL,OpenAL
Biblioteca de programaciónC biblioteca estándar,Standard Template Library
Datos Protocolo TCP / IP,Kermit,FTP,HTTP, SMTP
Formato de archivo HTML,XML,JPEG,MPEG, PNG
Interfaz de usuario Interfaz gráfica de usuario (WIMP) Microsoft Windows,GNOME,KDE,QNX Fotones,CDE,GEM, Agua
Interfaz de usuario basada en textoInterfaz de línea de comandos,la interfaz de usuario de texto
Aplicación Suite de OfficeEl procesamiento de textos,autoedición,programa de presentación,sistema de gestión de base de datos, gestión de Programación y hora,hoja de cálculo,software de contabilidad
Acceso A Internet Navegador,cliente de correo electrónico,servidor Web,agente de transferencia de correo, La mensajería instantánea
Diseño y fabricaciónDiseño asistido por ordenador,la fabricación asistida por ordenador, gestión de la planta, la fabricación robótica, gestión de la cadena de suministro
Gráficos Gráficos de mapa de bits de editor,editor de gráficos vectoriales,modelador 3D,editor de animación,gráficos por ordenador en 3D,edición de video,procesamiento de imágenes
Audio Editor de audio digital,reproducción de audio, Mezcla,la síntesis de audio,música Informática
Ingeniería de SoftwareCompilador,ensamblador,intérprete,depurador,editor de texto,entorno de desarrollo integrado,análisis de rendimiento de software,control de revisión,gestión de la configuración del software
Educativo Edutainment,juego para la Educación,Juego serio,Simulador de vuelo
Juegos Estrategia, Arcade,Puzzle, Simulación,shooter en primera persona,Plataforma,multijugador masivo,la ficción interactiva
Otra información La inteligencia artificial,software antivirus,escáner de malware,Instalador /sistemas de gestión de paquetes,Gestor de archivos

Idiomas

Hay miles de diferentes lenguas -algunos de programación destinado a ser de uso general, otros útiles sólo para aplicaciones altamente especializadas.

Lenguajes de programación
Las listas de los lenguajes de programaciónCronología de los lenguajes de programación,la lista de lenguajes de programación por categoría,lista Generacional de lenguajes de programación,Lista de lenguajes de programación,lenguajes de programación basados ​​en No-Inglés
Comúnmente utilizadolenguajes ensambladores ARM, MIPS, x86
Comúnmente utilizadolenguajes de programación de alto nivelAda,BASIC,C,C ++, C #, COBOL,Fortran,Java,Lisp,Pascal,Object Pascal
Comúnmente utilizadolenguajes de scriptScript de Bourne,JavaScript,Python, Ruby, PHP,Perl

Profesiones y organizaciones

A medida que el uso de las computadoras se ha extendido por toda la sociedad, hay un creciente número de carreras que involucran equipos.

Profesiones relacionados con la informática
Relacionada con hardware Ingeniería eléctrica,Ingeniería Electrónica,Ingeniería Informática,Ingeniería de Telecomunicaciones,Ingeniería Óptica,Nanoingeniería
Relacionados con el software Informática,Ingeniería informática,autoedición,la interacción humano-computadora, tecnología de la información,Sistemas de información,la ciencia computacional,ingeniería de software,industria de los juegos de vídeo,diseño Web

La necesidad de las computadoras para trabajar bien juntos y puedan intercambiar información ha dado lugar a la necesidad de que las organizaciones de muchas normas, clubes y sociedades tanto de carácter formal e informal.

Organizaciones
Grupos NormasANSI,IEC,IEEE,IETF,ISO, W3C
Sociedades ProfesionalesACM,AIS,IET,IFIP, BCS
/ Gratisgrupos de software de código abiertoFundación para el Software,la Fundación Mozilla,Apache Software Foundation
Recuperado de " http://en.wikipedia.org/w/index.php?title=Computer&oldid=539872357 "