Vérifié contenu

Ordinateur

Saviez-vous ...

Cette sélection de wikipedia a été choisi par des bénévoles aidant les enfants SOS de Wikipedia pour cette sélection Wikipedia pour les écoles. Pour comparer les organismes de bienfaisance de parrainage ce est le meilleur lien de parrainage .

Ordinateur
Acer Aspire 8920 Gemstone par Georgy.JPG Britannique Supercomputer - NASA Supercomputing avancée Facility.jpg Intertec Superbrain.jpg
2010-01-26-technikkrempel par RalfR-05.jpg Thinking Machines connexion automatique CM-5 Frostburg 2.jpg G5 fournir Wikipedia via Gigabit au Lange Nacht der Wissenschaften 2006 à Dresden.JPG
DM IBM S360.jpg Acorn BBC Master Series Microcomputer.jpg Dell PowerEdge Servers.jpg

Un ordinateur est un dispositif à usage général qui peut être programmé pour effectuer un ensemble fini d'opérations arithmétiques ou logiques. Depuis une séquence d'opérations peut être facilement changé, l'ordinateur peut résoudre plus d'un type de problème.

Classiquement, un ordinateur est constitué d'au moins un élément de traitement, typiquement une unité centrale de traitement (CPU) et une certaine forme de mémoire. L'élément de traitement effectue des opérations arithmétiques et logiques, et une unité de séquencement et de commande qui peut modifier l'ordre des opérations basées sur les informations stockées. Périphériques permettent d'extraire l'information à partir d'une source externe, et le résultat des opérations enregistrées et récupérées.

La première électronique ordinateurs numériques ont été développés entre 1940 et 1945 dans le Royaume-Uni et États-Unis. L'origine, ils étaient de la taille d'une grande salle, consommant autant de pouvoir que plusieurs centaines d'ordinateurs personnels modernes (PC). En cette ère mécanique ordinateurs analogiques ont été utilisés pour des applications militaires.

Les ordinateurs modernes basées sur des circuits intégrés sont des millions à des milliards de fois plus susceptibles que les premières machines, et occupent une fraction de l'espace. Ordinateurs simples sont assez petit pour tenir dans les appareils mobiles, et ordinateurs mobiles peuvent être alimentés par les petits batteries. Les ordinateurs personnels dans leurs diverses formes sont icônes de la Information Age et sont ce que la plupart des gens pensent que "ordinateurs". Cependant, la calculateurs embarqués trouvés dans de nombreux dispositifs de lecteurs MP3 à avions de combat et des jouets aux robots industriels sont les plus nombreux.

Histoire de l'informatique

Le Métier à tisser Jacquard, exposée au Musée des sciences et de l'Industrie à Manchester, en Angleterre, a été l'un des premiers appareils programmables.

La première utilisation du mot "ordinateur" a été enregistré en 1613 dans un livre intitulé "Les yong mans glanage» par l'écrivain anglais Richard Braithwait je Haue lu l'ordinateur le plus vrai du Times, et le meilleur arithméticien que euer respirait, et il reduceth tes jours dans un numéro court. Il se est référé à une personne qui a effectué des calculs ou des calculs, et le mot est poursuivie avec le même sens jusqu'à ce que le milieu du 20e siècle. De la fin du 19ème siècle, le mot a commencé à prendre son sens plus familier, une machine qui effectue les calculs.

Limitée à fonction premiers ordinateurs

L'histoire de l'ordinateur moderne commence avec deux technologies distinctes, le calcul automatisé et la programmabilité. Toutefois, aucun périphérique peut être identifié comme le premier ordinateur, en partie à cause de l'application incohérente de ce terme. Quelques dispositifs sont toutefois dignes de mention, comme certaines aides mécaniques à l'informatique, qui ont très bien réussi et ont survécu pendant des siècles jusqu'à l'avènement de la calculatrice électronique , comme le sumérien boulier , conçus autour de 2500 avant JC dont un descendant a remporté un concours de vitesse contre un bureau moderne machine à calculer au Japon en 1946, la règles à calcul, inventés dans les années 1620, qui ont été effectués sur cinq Apollo missions spatiales, y compris la lune et sans doute le astrolabe et Mécanisme d'Anticythère, un ancien ordinateur astronomique construit par les Grecs environ 80 BC. Le mathématicien grec Héron d'Alexandrie (c. 10-70 AD) a construit un théâtre mécanique qui a joué une pièce d'une durée de 10 minutes et a été exploité par un système complexe de cordes et tambours qui pourrait être considéré comme un moyen de décider quelles parties du mécanisme effectuées qui actions et quand. Ce est l'essence de la programmabilité.

Vers la fin du 10ème siècle, le moine français Gerbert d'Aurillac ramené d'Espagne les dessins d'une machine inventée par les Maures qui ont répondu Oui ou Non aux questions qu'il a posées. Encore une fois dans le 13ème siècle, les moines Albertus Magnus et Roger Bacon construit parler androïdes sans développement (Albertus Magnus plaints qu'il avait perdu 40 années de sa vie quand Thomas d'Aquin , terrifié par sa machine, détruit).

En 1642, la Renaissance a vu l'invention de la calculatrice mécanique, un dispositif qui pourrait effectuer les quatre opérations arithmétiques sans compter sur l'intelligence humaine. La calculatrice mécanique est à l'origine du développement des ordinateurs de deux façons distinctes. Initialement, ce était d'essayer de développer des calculateurs les plus puissants et plus souples que l'ordinateur a été théorisée par Charles Babbage , puis développé. Deuxièmement, le développement d'un faible coût calculatrice électronique , successeur de la calculatrice mécanique, a abouti à l'élaboration par Intel de la première disponible dans le commerce microprocesseur circuit intégré.

Premières ordinateurs à usage général

En 1801, Joseph Marie Jacquard a fait une amélioration de la Métier à tisser textile en introduisant une série de cartes perforées de papier comme un modèle qui a permis à son métier à tisser des motifs complexes automatiquement. Le métier à tisser Jacquard résultant était une étape importante dans le développement des ordinateurs parce que l'utilisation des cartes perforées pour définir motifs tissés peut être considéré comme un début, quoique limitée, sous forme de programmabilité.

L'image la plus célèbre dans l'histoire précoce de l'informatique

Ce portrait de Jacquard a été tissée en soie sur un métier à tisser Jacquard et requis 24 000 cartes perforées pour créer (1839). Il a été seulement produit sur commande. Charles Babbage possédait un de ces portraits; il lui a inspiré en utilisant des cartes perforées dans son moteur d'analyse
Le Zuse Z3, 1941, considérée comme la première de travail programmable, entièrement automatique machine de l'informatique mondiale.

Ce est la fusion de calcul automatique avec programmabilité qui a produit les premiers ordinateurs reconnaissables. En 1837, Charles Babbage a été le premier à conceptualiser et concevoir un entièrement programmable ordinateur mécanique, son moteur analytique. Finances limitées et l'incapacité de Babbage pour résister à bricoler avec la conception signifie que l'appareil n'a jamais été achevée-néanmoins son fils, Henry Babbage, a complété une version simplifiée de l'unité de calcul du moteur d'analyse (le moulin) en 1888. Il a fait une démonstration réussie de son utiliser dans les tableaux de calcul en 1906. Cette machine a été donnée aux Musée des sciences à South Kensington en 1910.

À la fin des années 1880, Herman Hollerith a inventé l'enregistrement de données sur un support lisible par machine. Utilisations antérieures de supports lisibles par machine avait été pour le contrôle, pas de données. "Après quelques essais initiaux avec ruban de papier, il se installe sur des cartes perforées ... "Pour traiter ces cartes perforées Il a inventé le tabulation, et de la machines perforatrices. Ces trois inventions étaient le fondement de l'industrie moderne de traitement de l'information. À grande échelle le traitement automatisé de données des cartes perforées a été réalisée pour le Recensement des Etats-Unis par la société de Hollerith, qui devint plus tard le noyau de 1890 IBM . À la fin du 19ème siècle un certain nombre d'idées et de technologies, qui allait plus tard se avérer utile dans la réalisation d'ordinateurs pratiques, avaient commencé à apparaître: Algèbre de Boole, le tube à vide (valve thermoïonique), cartes et bandes perforées, et de la téléimprimeur.

Au cours de la première moitié du 20e siècle, de nombreux scientifiques besoins informatiques ont été accueillis par de plus en plus sophistiquée ordinateurs analogiques, qui ont utilisé un modèle mécanique ou électrique directe du problème de base pour calcul. Toutefois, ceux-ci ne étaient pas programmable et généralement ne avaient pas la polyvalence et la précision des ordinateurs numériques modernes.

Alan Turing est largement considéré comme le père de moderne informatique . En 1936, Turing a fourni une formalisation influence du concept de l' algorithme et le calcul avec la Machine de Turing, fournir un schéma directeur pour l'ordinateur numérique électronique. De son rôle dans la création de l'ordinateur moderne, Le magazine Time en nommant l'un des Turing 100 personnes les plus influentes du 20e siècle, déclare: «Le fait est que tous ceux qui tape sur un clavier, l'ouverture d'une feuille de calcul ou un programme de traitement de texte, travaille sur une incarnation d'une machine de Turing".

Le ENIAC, qui est devenu opérationnel en 1946, est considéré comme le premier ordinateur électronique à usage général.
EDSAC fut l'un des premiers ordinateurs pour mettre en oeuvre le programme enregistré ( von Neumann) architecture.

Le Atanasoff-Berry Computer (ABC) a été le premier ordinateur numérique électronique au monde, mais pas programmable . Atanasoff est considéré comme l'un des pères de l'ordinateur. Conçu en 1937 par l'Iowa State College professeur de physique John Atanasoff, et construit avec l'aide d'étudiants diplômés Clifford Berry, la machine ne est pas programmable, étant conçu uniquement pour résoudre des systèmes d'équations linéaires. L'ordinateur ne emploient calcul parallèle. Un 1973 décision du tribunal dans un litige de brevet que le brevet pour le 1946 Ordinateur ENIAC dérivé de l'ordinateur Atanasoff-Berry.

Le premier ordinateur commandé par programme a été inventé par Konrad Zuse, qui a construit le Z3, une machine de calcul électromécaniques, en 1941. Le premier ordinateur électronique programmable était le Colossus, construit en 1943 par Fleurs Tommy.

George Stibitz est internationalement reconnu comme un père de l'informatique moderne. Tout en travaillant à Bell Labs en Novembre 1937, Stibitz inventé et construit une calculatrice à base de relais qu'il a baptisé la "Modèle K» (pour «table de la cuisine", sur lequel il avait assemblé il), qui était le premier à utiliser binaires circuits pour effectuer une opération arithmétique. Les modèles postérieurs ajoutées plus grande sophistication y compris l'arithmétique et la programmabilité complexe.

Une succession de cesse plus puissant et flexible dispositifs informatiques ont été construits dans les années 1930 et 1940, en ajoutant progressivement les principales caractéristiques que l'on voit dans les ordinateurs modernes. L'utilisation de l'électronique numérique (largement inventé par Claude Shannon en 1937) et la programmabilité plus souple étapes étaient d'une importance vitale, mais définir un point sur cette route comme «le premier ordinateur électronique numérique» est difficile Shannon 1940 réalisations notables comprennent.:

  • Konrad Zuse de électromécaniques "machines à Z». Le Z3 (1941) fut la première machine de travail avec binaire arithmétique, y compris l'arithmétique flottante point et une mesure de programmabilité. En 1998, le Z3 a été prouvé être Turing complète, étant donc premier ordinateur opérationnel au monde.
  • Le non-programmable Atanasoff-Berry Computer (commencé en 1937, achevé en 1941) qui a utilisé repose tube à vide calcul, les nombres binaires, et La mémoire de régénération condensateur. L'utilisation de la mémoire régénératrice permis d'être beaucoup plus compact que ses pairs (soit environ la taille d'un grand bureau ou un établi), puisque les résultats intermédiaires pourraient être stockées, puis réintroduits dans le même ensemble d'éléments de calcul.
  • Le secret britannique Ordinateurs Colossus (1943), qui avait limité mais programmabilité démontré qu'un dispositif utilisant des milliers de tubes pourrait être raisonnablement fiable et électronique reprogrammable. Il a été utilisé pour casser les codes de guerre allemands.
  • Le Harvard Mark I (1944), un ordinateur électromécanique à grande échelle avec la programmabilité limitée.
  • De l'armée américaine Laboratoire de recherche balistique ENIAC (1946), qui a utilisé décimal arithmétique et est parfois appelé le premier objectif général électronique ordinateur (depuis Konrad Zuse de Z3 de 1941 utilisé électroaimants lieu de l'électronique ). Au départ, toutefois, ENIAC a une architecture qui a nécessité un recâblage plugboard de changer sa programmation.

L'architecture à programme enregistré

Plusieurs développeurs de ENIAC, reconnaissant ses défauts, est venu avec un design beaucoup plus souple et élégante, qui est venu pour être connu comme «l'architecture à programme enregistré" ou architecture de von Neumann. Cette conception a été d'abord décrit formellement par John von Neumann dans le document Première ébauche d'un rapport sur l'EDVAC, distribué en 1945. Un certain nombre de projets visant à développer des ordinateurs basés sur l'architecture à programme enregistré commencé à cette époque, la première a été achevée en 1948 au Université de Manchester en Angleterre, le Manchester petite échelle expérimentale automatique (SSEM ou "Baby"). Le Délai de stockage électronique Calculatrice automatique (EDSAC), a complété un an après la SSEM à l'Université de Cambridge, a été la première pratique, la mise en œuvre non expérimentale de la conception à programme enregistré et a été mis à utiliser immédiatement pour les travaux de recherche à l'université. Peu de temps après, la machine décrite à l'origine par le Paper- de von Neumann EDVAC a été achevé mais ne voit pas l'utilisation à temps plein pour deux années supplémentaires.

Presque tous les ordinateurs modernes mettent en œuvre une certaine forme de l'architecture à programme enregistré, ce qui en fait le seul trait par lequel le mot «ordinateur» est maintenant défini. Alors que les technologies utilisées dans les ordinateurs ont changé de façon spectaculaire depuis les premiers ordinateurs électroniques, à usage général des années 1940, utiliser encore plus l'architecture de von Neumann.

Mourir d'une Intel 80486DX2 microprocesseur (taille réelle: 12 x 6,75 mm) dans son emballage

Depuis les années 1950, soviétiques scientifiques Sergueï Sobolev et Nikolay Brusentsov mené des recherches sur ternaires ordinateurs, des appareils qui opéraient sur un système de numération en base trois -1, 0, et 1 plutôt que le classique numérotation binaire système sur lequel la plupart des ordinateurs sont basés. Ils ont conçu la Setun, un ordinateur ternaire fonctionnelle, au Université d'Etat de Moscou. Le dispositif a été mis en production limitée dans l'Union soviétique, mais supplanté par l'architecture binaire plus fréquente.

Semi-conducteurs et microprocesseurs

Les ordinateurs utilisant tubes à vide que leurs éléments électroniques étaient en usage dans les années 1950, mais par les années 1960, ils avaient été largement remplacée par machines à transistors, qui étaient plus petits, plus rapides, moins chers à produire, moins d'énergie nécessaire, et étaient plus fiables. Le premier ordinateur transistorisé a été démontré lors de la Université de Manchester en 1953. Dans les années 1970, circuit intégré la technologie et la création subséquente de microprocesseurs, tels que le Intel 4004, a encore diminué la taille et le coût et en outre une vitesse accrue et la fiabilité des ordinateurs. À la fin des années 1970, de nombreux produits tels que enregistreurs vidéo contenaient ordinateurs dédiés appelés microcontrôleurs, et ils ont commencé à apparaître comme un remplacement à des contrôles mécaniques dans les appareils domestiques tels que machines à laver. Les années 1980 ont vu ordinateurs personnels et l'ordinateur personnel aujourd'hui omniprésents. Avec l'évolution de l'Internet, les ordinateurs personnels sont de plus en commun que la télévision et le téléphone dans le ménage.

Moderne smartphones sont entièrement programmables ordinateurs dans leur propre droit, et à partir de 2009 pourrait bien être la forme la plus commune de ces ordinateurs dans l'existence.

Programmes

La caractéristique des ordinateurs modernes qui les distingue de tous les autres machines, ce est qu'ils peuvent être programmés . Ce est-à-dire qu'un certain type de des instructions (le programme) peut être donné à l'ordinateur, et il les traiter. Les ordinateurs modernes basées sur la von Neumann l'architecture ont souvent du code de la machine sous la forme d'un langage de programmation impératif.

En termes pratiques, un programme d'ordinateur peut être quelques instructions ou se étendre à plusieurs millions d'instructions, comme le font les programmes pour traitement de texte et navigateurs Web par exemple. Un ordinateur moderne typique peut exécuter milliards d'instructions par seconde ( gigaflops) et fait rarement une erreur au cours de nombreuses années de fonctionnement. Les grands programmes informatiques constitués de plusieurs millions d'instructions peuvent prendre équipes de programmeurs années à écrire, et en raison de la complexité de la tâche contiennent presque certainement des erreurs.

Architecture de programme enregistré

Réplique de la machine expérimentale à petite échelle (SSEM), la première mondiale ordinateur à programme enregistré, au Musée des sciences et de l'Industrie à Manchester, en Angleterre

Cet article se applique à la plus commune RAM ordinateurs basés machine.

Dans la plupart des cas, les instructions informatiques sont simples: ajouter un numéro à l'autre, déplacer des données d'un endroit à un autre, envoyer un message à un certain dispositif externe, etc. Ces instructions sont lues à partir de l'ordinateur de mémoire et sont généralement effectuées ( exécutée) dans l'ordre où ils ont été donnés. Cependant, il ya généralement des instructions spécialisées pour indiquer à l'ordinateur pour sauter en avant ou en arrière pour un autre endroit dans le programme et de poursuivre l'exécution à partir de là. Ils sont appelés "des instructions de saut" (ou branches). En outre, des instructions de saut peuvent être apportées à produire conditionnellement sorte que différentes séquences d'instructions peuvent être utilisées en fonction du résultat d'un calcul précédent ou d'un événement extérieur. De nombreux ordinateurs soutiennent directement sous-programmes en fournissant un type de saut qui "se souvient" l'emplacement où il a sauté de et une autre instruction pour revenir à l'instruction suivant celui instruction de saut.

L'exécution du programme peut être comparé à la lecture d'un livre. Même si une personne sera normalement lire chaque mot et la ligne dans l'ordre, ils peuvent parfois revenir en arrière à un lieu plus tôt dans le texte ou sauter des sections qui ne sont pas d'intérêt. De même, un ordinateur peut parfois revenir en arrière et répéter les instructions de certaines sections du programme, encore et encore jusqu'à ce qu'une condition interne est rencontré. Ceci est appelé le flux de contrôle dans le programme et ce est ce qui permet à l'ordinateur pour effectuer des tâches à plusieurs reprises sans intervention humaine.

En comparaison, une personne utilisant une poche calculatrice peut effectuer une opération arithmétiques de base telles que l'ajout de deux chiffres en quelques pressions de boutons. Mais d'additionner tous les nombres de 1 à 1000 prendrait des milliers de pressions de boutons et beaucoup de temps, avec une quasi-certitude de faire une erreur. D'autre part, un ordinateur peut être programmé pour faire cela avec quelques instructions simples. Par exemple:

       mov n ° 0, somme;  définir somme à 0 mov n ° 1, num;  num mis à 1 boucle: ajouter num, somme;  num ajouter pour résumer ajouter n ° 1, num;  ajouter 1 à num num cmp, # 1000;  num comparer à 1000 boucle ble;  si num <= 1000, revenir à l'arrêt «boucle»;  la fin du programme.  arrêter de courir 

Une fois dit pour exécuter ce programme, l'ordinateur effectuera la tâche de plus répétitif sans intervention humaine. Il ne sera presque jamais faire une erreur et un PC moderne peut accomplir la tâche dans environ un millionième de seconde.

Bugs

La réelle premier bogue informatique, une mite coincée sur un relais de l'ordinateur Harvard Mark II

Erreurs dans les programmes informatiques sont appelés " bugs ". Ils peuvent être bénignes et ne pas affecter l'utilité du programme, ou que des effets subtils. Mais dans certains cas, ils peuvent provoquer le programme ou l'ensemble du système" accrocher "- plus réagir aux entrées telles que clics de souris ou les touches - pour complètement échoué ou crash. Sinon bogues bénignes peuvent parfois être exploitées à des fins malicieuses par un utilisateur peu scrupuleux écrire un exploiter, code conçu pour profiter d'un bug et de perturber la bonne exécution d'un ordinateur. Bugs ne sont généralement pas la faute de l'ordinateur. Puisque les ordinateurs simplement exécuter les instructions qui leur sont donnés, les bugs sont presque toujours le résultat d'une erreur de programmation ou d'une omission faite de la conception du programme.

Grace Hopper est crédité pour avoir d'abord utilisé le terme "bugs" dans le calcul, après un papillon mort a été trouvé un relais court-circuit dans le Ordinateur Harvard Mark II en Septembre 1947.

Code de la machine

Dans la plupart des ordinateurs, des instructions individuelles sont stockées sous forme de code machine à chaque instruction étant un numéro unique (son code de fonctionnement ou opcode pour faire court). La commande pour additionner deux nombres serait ainsi avoir un opcode, la commande de les multiplier aurait un opcode différent et ainsi de suite. Les ordinateurs les plus simples sont en mesure d'effectuer une quelconque d'une poignée d'instructions différentes; les ordinateurs plus complexes ont plusieurs centaines à choisir, chacun avec un code numérique unique. Depuis la mémoire de l'ordinateur est capable de stocker des numéros, il peut également stocker les codes d'instruction. Ceci conduit au fait que des programmes entiers importante (qui sont seulement des listes de ces instructions) peuvent être représentées comme des listes de nombres et eux-mêmes peuvent être manipulées à l'intérieur de l'ordinateur de la même manière que des données numériques. Le concept fondamental de stocker des programmes dans la mémoire de l'ordinateur à côté les données qu'ils fonctionnent sur le noeud de la von Neumann, ou programme enregistré, l'architecture. Dans certains cas, un ordinateur peut stocker une partie ou la totalité de son programme dans une mémoire qui est maintenue séparée de l'données fonctionne sur. Ceci est appelé le L'architecture de Harvard après la Ordinateur Harvard Mark I. Ordinateurs de von Neumann modernes affichent quelques traits de l'architecture de Harvard dans leurs conceptions, comme dans caches du processeur .

Se il est possible d'écrire des programmes informatiques que de longues listes de numéros ( langage machine) et si cette technique a été utilisée avec beaucoup de premiers ordinateurs, il est extrêmement fastidieux et potentiellement sujette à erreur de le faire dans la pratique, en particulier pour des programmes complexes. Au lieu de cela, chaque instruction de base peut être donné un nom court qui est indicatif de sa fonction et facile à retenir - un mnemonic comme ADD, SUB, MULT ou JUMP. Ces mnémoniques sont collectivement connus comme un ordinateur de langage d'assemblage. Conversion de programmes écrits en langage d'assemblage en quelque chose de l'ordinateur peut effectivement comprendre (langage machine) est généralement effectuée par un programme informatique appelé un assembleur.

A 1970 carte perforée contenant une ligne à partir d'un Programme FORTRAN. La carte lit: "Z (1) = Y + W (1)" et est étiqueté "PROJ039" à des fins d'identification.

Langage de programmation

Les langages de programmation fournissent diverses façons de spécifier les programmes pour ordinateurs exécutent. Contrairement à langues naturelles, les langages de programmation sont conçues pour permettre aucune ambiguïté et d'être concis. Ils sont purement langues écrites et sont souvent difficiles à lire à haute voix. Ils sont généralement soit traduit code machine par un compilateur ou un assembleur avant d'être exécuté, ou traduit directement lors de l'exécution par un interprète. Parfois, les programmes sont exécutés par un procédé hybride de ces deux techniques.

Langages de bas niveau

langues de machines et les langages d'assemblage qui les représentent (collectivement appelés langages de programmation de bas niveau) ont tendance à être unique à un type particulier de l'ordinateur. Par exemple, un ordinateur architecture ARM (comme on peut trouver dans un Ou un PDA jeu vidéo portatif) ne peut pas comprendre le langage de la machine d'un Intel Pentium ou AMD Athlon 64 ordinateur qui pourrait être dans un PC .

Langues de niveau supérieur

Bien que beaucoup plus facile que dans le langage de la machine, l'écriture de longs programmes en langage d'assemblage est souvent difficile et est également sujette aux erreurs. Par conséquent, les programmes les plus pratiques sont écrits en plus abstrait les langages de programmation de haut niveau qui sont capables d'exprimer les besoins de la programmeur plus facilement (et donc aider à réduire les erreurs de programmation). Langages de haut niveau sont généralement "compilées" en langage machine (ou parfois en langage d'assemblage, puis en langage machine) en utilisant un autre programme informatique appelé compilateur. Langages de haut niveau sont moins liées au fonctionnement de l'ordinateur cible de langage d'assemblage, en plus liées à la langue et la structure du problème (s) doit être résolu par le programme final. Il est donc souvent possible d'utiliser différents compilateurs pour traduire le même programme de langage de haut niveau dans la langue de la machine de beaucoup de différents types d'ordinateurs. Cela fait partie des moyens par lesquels les logiciels comme les jeux vidéo peut être mis à disposition pour différentes architectures informatiques tels que les ordinateurs personnels et diverses consoles de jeux vidéo .

La conception du programme

La conception du programme de petits programmes est relativement simple et implique l'analyse du problème, la collecte de données, selon les constructions de programmation dans les langues, élaborant ou en utilisant des procédures et des algorithmes établis, fournir des données pour les appareils et solutions sortie au problème le cas échéant. Comme les problèmes deviennent plus grandes et plus complexes, des fonctionnalités telles que les sous-programmes, des modules, de la documentation formelle, et de nouveaux paradigmes tels que la programmation orientée objet sont rencontrés. Les grands programmes impliquant des milliers de ligne de code et plus nécessitent des méthodologies logicielles formelles. La tâche de développer grande systèmes logiciels présente un défi intellectuel important. La production de logiciels avec une fiabilité élevée acceptable dans un calendrier prévisible et le budget a toujours été difficile; la discipline académique et professionnelle des génie logiciel se concentre spécifiquement sur ce défi.

Composants

Un ordinateur d'usage général comporte quatre volets principaux: le Unité arithmétique et logique (ALU), le unité de commande, le la mémoire et les dispositifs d'entrée et de sortie (collectivement appelés E / S). Ces pièces sont reliées entre elles par bus, souvent en groupes de fils.

A l'intérieur de chacune de ces pièces sont des milliers de milliards de petits circuits électriques qui peuvent être activés ou désactivés à l'aide d'un interrupteur électronique. Chaque circuit représente un bit (chiffre binaire) d'informations de sorte que lorsque le circuit est en elle représente un "1", et quand il représente un off "0" (dans la représentation de logique positive). Les circuits sont disposés dans des portes logiques de telle sorte que l'un ou plusieurs des circuits peuvent contrôler l'état d'un ou de plusieurs des autres circuits.

L'unité de commande, ALU, registres, et I / O de base (et souvent d'autres matériels étroitement liés avec ces) sont collectivement connu comme un unité centrale de traitement (CPU). Les premiers processeurs étaient composées de nombreux éléments distincts mais depuis les CPU milieu des années 1970 ont généralement été construits sur un seul circuit intégré appelé microprocesseur.

Unité de contrôle

Schéma montrant comment un particulier L'architecture MIPS instruction sera décodé par le système de commande.

L'unité de contrôle (souvent appelé un système de contrôle ou contrôleur central) gère différents composants de l'ordinateur; il lit et interprète (décode) les instructions de programme, en les transformant en une série de signaux de commande qui activent d'autres parties de l'ordinateur. systèmes de contrôle dans les ordinateurs de pointe peuvent modifier l'ordre de certaines instructions de manière à améliorer les performances.

Un élément clé commun à toutes les CPU est le compteur de programme, une cellule de mémoire particulière (a inscrivez-vous) qui conserve la trace de quel emplacement en mémoire la prochaine instruction est à lire à partir.

La fonction du système de contrôle est la suivante-noter que ce est une description simplifiée, et certaines de ces étapes peut être réalisée simultanément ou dans un ordre différent selon le type de CPU:

  1. Lire le code de l'instruction suivante à partir de la cellule indiquée par le compteur de programme.
  2. Décoder le code numérique de l'instruction dans un ensemble de commandes ou de signaux pour chacun des autres systèmes.
  3. Incrémenter le compteur de programme afin qu'il pointe vers la prochaine instruction.
  4. Lire toutes les données de l'instruction nécessite des cellules dans la mémoire (ou peut-être à partir d'un périphérique d'entrée). L'emplacement de ces données requis est généralement stocké dans le code d'instruction.
  5. Fournir les données nécessaires à une ALU ou vous inscrire.
  6. Si l'instruction nécessite une ALU ou matériel spécialisé pour compléter, charger le matériel pour effectuer l'opération demandée.
  7. Ecrire le résultat de l'ALU revenir à un emplacement de mémoire ou à un registre ou peut-être un périphérique de sortie.
  8. Aller retour à l'étape (1).

Étant donné que le compteur de programme est (conceptuellement) juste un autre ensemble de cellules de mémoire, il peut être modifié par des calculs effectués dans l'unité ALU. Ajout de 100 de compteur de programme entraînerait l'instruction suivante à lire dans un endroit plus bas 100 emplacements du programme. Instructions qui modifient le compteur de programme sont souvent appelés «sauts» et permettent de boucles (instructions qui sont répétés par l'ordinateur) et exécution de l'instruction souvent conditionnelle (deux exemples de flux de contrôle).

La séquence d'opérations que l'unité de commande passe par le traitement d'une instruction est en lui-même comme un programme d'ordinateur court, et en effet, dans certaines conceptions de CPU plus complexes, il est encore plus petite d'un autre ordinateur appelé microséquenceur, qui gère un programme de microcode qui provoque tous ces événements se produise.

Unité arithmétique et logique (ALU)

L'ALU est capable d'effectuer deux classes d'opérations arithmétiques et logiques:.

L'ensemble des opérations arithmétiques notamment un soutien ALU peuvent être limitées à l'addition et la soustraction, ou peuvent inclure multiplication, division, trigonométrie fonctions telles que sinus, cosinus, etc., et des racines carrées . Certains ne peuvent fonctionner sur des nombres entiers ( nombres entiers ) tandis que d'autres utilisent virgule flottante pour représenter des nombres réels , quoique avec une précision limitée. Cependant, ne importe quel ordinateur qui est capable d'effectuer seulement les opérations les plus simples peut être programmé pour briser les opérations plus complexes en étapes simples qu'il peut effectuer. Par conséquent, ne importe quel ordinateur peut être programmé pour effectuer toute opération arithmétique bien-qu'il faudra plus de temps pour le faire si son ALU ne supporte pas directement l'opération. Un ALU peut également comparer les chiffres et le retour valeurs de vérité booléennes (vrai ou faux) selon que l'on est égal à, supérieur ou inférieur à l'autre ("64 est supérieure à 65?»).

opérations logiques impliquent logique booléenne : ET, OU, XOR et PAS. Ceux-ci peuvent être utiles pour créer compliqué instructions conditionnelles et le traitement logique booléenne .

Superscalaires ordinateurs peuvent contenir plusieurs ALU, leur permettant de traiter plusieurs instructions simultanément. Les processeurs graphiques et des ordinateurs avec SIMD et MIMD fonctionnalités contiennent souvent ALUs qui peut effectuer des opérations arithmétiques sur les vecteurs et matrices .

Mémoire

La mémoire de noyau magnétique est la mémoire de l'ordinateur de choix dans les années 1960, jusqu'à ce qu'elle soit remplacée par la mémoire à semi-conducteur.

La mémoire d'un ordinateur peut être considérée comme une liste de cellules dans lesquelles les numéros peuvent être placés ou lus. Chaque cellule a une «adresse» numérotée et peut stocker un numéro unique. L'ordinateur peut être chargé de "mettre le numéro 123 dans la cellule numérotée 1357» ou à «ajouter le numéro qui est dans la cellule 1 357 le nombre qui est dans la cellule 2468 et de mettre la réponse dans la cellule 1595". Les informations stockées dans la mémoire peut représenter pratiquement ne importe quoi. Lettres, chiffres, voire des instructions informatiques peuvent être placés dans la mémoire avec la même facilité. Depuis le CPU ne fait pas de distinction entre les différents types d'informations, il est de la responsabilité du logiciel à donner un sens à ce que la mémoire voit rien, mais une série de chiffres.

Dans presque tous les ordinateurs modernes, chaque cellule de mémoire est configurée pour stocker des nombres binaires en groupes de huit bits (appelé octet). Chaque octet est capable de représenter 256 numéros différents (2 ^ 8 = 256); soit de 0 à 255 ou -128 à 127. Pour stocker un plus grand nombre, plusieurs octets consécutifs peuvent être utilisés (typiquement, deux, quatre ou huit). Lorsque les nombres négatifs sont nécessaires, ils sont généralement stockés dans notation complément à deux. D'autres arrangements sont possibles, mais ne sont généralement pas vus en dehors des applications spécialisées ou des contextes historiques. Un ordinateur peut stocker tout type d'informations dans la mémoire si elle peut être représentée numériquement. Les ordinateurs modernes ont des milliards, voire des milliers de milliards d'octets de mémoire.

Le CPU contient un ensemble spécial de cellules de mémoire appelé registres qui peuvent être lus et écrits à beaucoup plus rapidement que la zone de mémoire principale. Il existe typiquement entre deux et cent registres en fonction du type de processeur. Les registres sont utilisés pour les éléments de données les plus fréquemment nécessaires pour éviter d'avoir à accéder à la mémoire principale chaque fois que des données est nécessaire. Comme les données sont constamment travaillé sur, réduisant la nécessité d'accéder à la mémoire principale (qui est souvent lent par rapport à l'ALU et de contrôle unités) augmente considérablement la vitesse de l'ordinateur.

mémoire principale de l'ordinateur se décline en deux variétés principales: random-access memory ou RAM et la mémoire morte ou ROM. RAM peut être lu et écrit à chaque fois que le CPU commandes, mais ROM est pré-chargé avec des données et des logiciels qui ne change jamais, donc le CPU ne peut lire. ROM est généralement utilisé pour stocker des instructions de démarrage initial de l'ordinateur. En général, le contenu de la RAM sont effacées lorsque l'alimentation de l'ordinateur est éteint, mais ROM conserve ses données indéfiniment. Dans un PC, la ROM contient un programme spécialisé appelé le BIOS qui orchestre chargement de l'ordinateur du système d'exploitation à partir du lecteur de disque dur dans la RAM lorsque l'ordinateur est sous tension ou réinitialisée. En ordinateurs embarqués, qui ne souvent pas de lecteurs de disques, tous les logiciel requis peut être stocké dans la ROM. Un logiciel stocké dans la mémoire morte est souvent appelé firmware, car il est théoriquement plus comme matériel que logiciel. La mémoire flash brouille la distinction entre ROM et RAM, comme il conserve ses données quand il est éteint, mais est également réinscriptible. Il est généralement beaucoup plus lent que ROM RAM classique et cependant, son utilisation est limitée aux applications où la haute vitesse est inutile.

Dans les ordinateurs plus sophistiqués il peut y avoir un ou plusieurs RAM mémoires caches , qui sont plus lentes que les registres mais plus rapide que la mémoire principale. Généralement ordinateurs avec ce genre de cache sont conçus pour déplacer les données les plus fréquemment utilisées dans le cache automatiquement, souvent sans la nécessité d'une intervention de la part du programmeur.

D'entrée / sortie (E / S)

Les disques durs sont des dispositifs de stockage couramment utilisées avec des ordinateurs.

I / O est le moyen par lequel l'information a des échanges informatiques avec le monde extérieur. Dispositifs qui fournissent entrée ou de sortie à l'ordinateur sont appelés périphériques. Sur un ordinateur personnel typique, périphériques comprennent des dispositifs d'entrée tels que le clavier et la souris, et des dispositifs de sortie tels que les affichage et de imprimante. lecteurs de disque dur, lecteurs de disquettes et lecteurs de disques optiques servir les deux périphériques d'entrée et de sortie. Les réseaux informatiques est une autre forme de I / O.

Périphériques d'E / S sont souvent des ordinateurs complexes dans leur propre droit, avec leur propre CPU et de la mémoire. Un processeur graphique peut contenir une cinquantaine de plus petits ordinateurs qui exécutent les calculs nécessaires à l'affichagedes graphiques 3D. Moderne ordinateurs de bureau contiennent de nombreux petits ordinateurs qui aident la principale CPU dans l'exécution d'E / S.

Multitâche

Alors que d'un ordinateur peut être considéré comme exécutant l'un gigantesque programme stocké dans sa mémoire principale, dans certains systèmes, il est nécessaire de donner l'apparence de l'exécution de plusieurs programmes simultanément. Ceci est réalisé en multitâche dire présentant rapidement le commutateur entre l'ordinateur exécutant chaque programme à son tour.

Un moyen par lequel cela est fait est un signal spécial appelé interruption, ce qui peut provoquer périodiquement l'ordinateur pour arrêter l'exécution d'instructions où il était et faire autre chose à la place. En se souvenant où il exécutait avant l'interruption, l'ordinateur peut revenir à cette tâche plus tard. Si plusieurs programmes sont en cours d'exécution "en même temps", alors le générateur d'interruption peut être à l'origine de plusieurs centaines interruptions par seconde, ce qui provoque un programme basculer à chaque fois. Puisque les ordinateurs modernes exécutent généralement des instructions de plusieurs ordres de grandeur plus rapide que la perception humaine, il peut apparaître que de nombreux programmes sont en cours d'exécution dans le même temps même si un seul est toujours en cours d'exécution dans un instant donné. Cette méthode de multitâche est parfois appelé "temps partagé" puisque chaque programme est alloué une "tranche" de temps à son tour.

Avant l'ère des ordinateurs bon marché, l'utilisation principale pour le multitâche était de permettre à de nombreuses personnes à partager le même ordinateur.

Apparemment, le multitâche serait provoquer un ordinateur qui permute entre plusieurs programmes afin de fonctionner plus lentement, en proportion directe avec le nombre de programmes, il est en cours d'exécution, mais la plupart des programmes passent beaucoup de leur temps d'attente pour les périphériques lents d'entrée / sortie pour effectuer leurs tâches. Si un programme est en attente pour l'utilisateur de cliquer sur la souris ou appuyez sur une touche du clavier, puis il ne prendra pas une "tranche de temps" jusqu'à ce que l'événement qu'elle attend est produite. Cela permet de libérer du temps pour d'autres programmes à exécuter de telle sorte que de nombreux programmes peuvent être exécutés simultanément sans perte de vitesse inacceptable.

Multiprocessing

Cray a conçu de nombreux superordinateurs utilisés multitraitement lourdement.

Certains ordinateurs sont conçus pour distribuer leur travail à travers plusieurs processeurs dans une configuration multitraitement, une technique, une fois employée que dans des machines grandes et puissantes telles que les superordinateurs, ordinateurs centraux et des serveurs. Multiprocesseurs et multicœurs (plusieurs processeurs sur un seul circuit intégré) personnels et ordinateurs portables sont maintenant largement disponibles, et sont de plus en plus utilisés dans les marchés bas de gamme comme un résultat.

Les superordinateurs en particulier ont souvent des architectures très uniques qui diffèrent de manière significative de l'architecture de programme stocké base et à partir d'ordinateurs à usage général. Ils comportent souvent des milliers de processeurs, les interconnexions à haut débit sur ​​mesure, et du matériel informatique spécialisé. Ces conceptions ont tendance à être utile que pour des tâches spécialisées en raison de la grande échelle de l'organisation du programme nécessaire pour utiliser avec succès la plupart des ressources disponibles à la fois. Les superordinateurs habitude de voir dans l'utilisation à grande échelle de simulation, le rendu graphique, et cryptographie applications, ainsi que d'autres soi-disant « embarrassant tâches parallèles ».

Réseaux et Internet

La visualisation d'une partie desroutes sur l'Internet.

Les ordinateurs ont été utilisés pour coordonner les informations entre plusieurs endroits depuis les années 1950. De l'armée américaine le système SAGE a été le premier exemple de grande envergure d'un tel système, qui a conduit à un certain nombre de systèmes commerciaux à usage spécial tels que Sabre.

Dans les années 1970, les ingénieurs informatiques dans les établissements de recherche à travers les États-Unis ont commencé à relier leurs ordinateurs entre eux en utilisant la technologie des télécommunications. L'effort a été financé par l'ARPA (maintenant DARPA), et le réseau informatique qui a résulté a été appelé l' ARPANET. Les technologies qui ont fait la propagation Arpanet possible et évolué.

Dans le temps, le réseau étendu au-delà des institutions académiques et militaires et est devenu connu comme l'Internet. L'émergence des réseaux impliqué une redéfinition de la nature et les limites de l'ordinateur. Les systèmes d'exploitation et applications informatiques ont été modifiés pour inclure la capacité à définir et à accéder aux ressources d'autres ordinateurs sur le réseau, tels que les périphériques, les informations stockées, etc., comme des extensions des ressources d'un ordinateur individuel. Initialement, ces installations étaient disponibles principalement pour les personnes travaillant dans des environnements de haute technologie, mais dans les années 1990 la propagation d'applications comme l'e-mail et le World Wide Web , combinée avec le développement des technologies de réseau bon marché, rapides comme Ethernet et ADSL ont vu la mise en réseau informatique devenu presque omniprésent. En fait, le nombre d'ordinateurs qui sont en réseau est en croissance phénoménale. Une très grande proportion d'ordinateurs personnels connecter régulièrement à Internet pour communiquer et recevoir des informations. Réseau de réseaux "sans fil", souvent en utilisant des réseaux de téléphonie mobile, a signifié est de plus en plus omniprésente même dans les environnements informatiques mobiles.

paradigmes de l'architecture informatique

Il existe de nombreux types d'architectures informatiques:

  • Ordinateur quantiquevsordinateur chimique
  • Processeur scalaire vsprocesseur Vecteur
  • Non Uniform Memory Access (NUMA) ordinateurs
  • Créer Machine vsMachine Stack
  • Harvard l'architecture vsarchitecture de von Neumann
  • L'architecture cellulaire

L'architecture d'ordinateur quantique est la plus prometteuse à révolutionner l'informatique.

Les portes logiques sont une abstraction commune qui peut appliquer à la plupart des dessusnumériques ouanalogiques paradigmes.

La possibilité de stocker et d'exécuter les listes d'instructions appelés programmes rend les ordinateurs extrêmement polyvalent, en les distinguant des calculatrices . Le Thèse de Church est un énoncé mathématique de cette polyvalence: tout ordinateur avec une capacité minimale (étant Turing-complet) est, en principe, capable d'effectuer les mêmes tâches que n'importe quel autre ordinateur peut exécuter. Par conséquent tout type d'ordinateur ( netbook, supercalculateur, automate cellulaire, etc.) est en mesure d'effectuer les mêmes tâches de calcul, étant donné assez de temps et de capacité de stockage.

Les idées fausses

Un ordinateur n'a pas besoin d'être électronique , ni même avoir un processeur , ni mémoire, ni même un disque dur. Alors que l'usage populaire du mot "ordinateur" est synonyme d'un ordinateur électronique personnelle, la définition moderne d'un ordinateur est littéralement « Un dispositif qui calcule , en particulier un programmable [habituellement] machine électronique qui effectue des opérations mathématiques ou logiques à grande vitesse ou que assemble, les magasins, en corrélation, ou autrement traite l'information ". Tout dispositif qui traite l'information est considéré comme un ordinateur, surtout si le traitement est utile.

Technologie nécessaire

Historiquement, les ordinateurs ont évolué à partir des ordinateurs mécaniques et éventuellement de tubes à vide aux transistors. Cependant, les systèmes informatiques que conceptuellement souple comme un ordinateur personnel peuvent être construits à partir de presque rien. Par exemple, un ordinateur peut être fabriqué à partir de boules de billard ( informatiques) boule de billard; un exemple souvent cité. De façon plus réaliste, les ordinateurs modernes sont fabriqués à partir de transistors en photolithographiée semi-conducteurs .

Il ya une recherche active pour rendre les ordinateurs sur de nombreux nouveaux types prometteurs de la technologie, tels que les ordinateurs optiques, ordinateurs à ADN, les ordinateurs neuronaux et les ordinateurs quantiques . La plupart des ordinateurs sont universels, et sont en mesure de calculer n'importe quel fonction calculable, et ne sont limités que par leur capacité de mémoire et de vitesse de fonctionnement. Cependant différents modèles d'ordinateurs peuvent donner des performances très différentes pour des problèmes particuliers; par exemple les ordinateurs quantiques peuvent potentiellement casser quelques algorithmes de cryptage modernes (par affacturage quantique) très rapidement.

Autres sujets

  • Glossaire des ordinateurs

Intelligence artificielle

Un ordinateur sera de résoudre les problèmes exactement de la façon dont il est programmé pour, sans égard à l'efficacité, des solutions alternatives, raccourcis possibles, ou les erreurs possibles dans le code. Les programmes informatiques qui apprennent et adaptent font partie du domaine émergent de l'intelligence artificielle et l'apprentissage machine.

Matériel

Le terme matériel couvre l'ensemble de ces parties d'un ordinateur qui sont des objets tangibles. Circuits, écrans, alimentations, câbles, claviers, imprimantes et les souris sont tout le matériel.

Histoire de matériel informatique

Première génération (mécanique / électromécanique) Calculatrices Pascaline,Arithmometer,moteur de différence,Norden viseur
Dispositifs programmablesmétier à tisser Jacquard,moteur analytique,Harvard Mark I, Z3
Deuxième génération (tubes à vide) Calculatrices Atanasoff-Berry Computer,IBM 604,UNIVAC 60,UNIVAC 120
Dispositifs programmablesColossus,ENIAC,Manchester petite échelle expérimentale Machine,EDSAC,Manchester Mark 1,Ferranti Pegasus,Ferranti Mercury,CSIRAC,EDVAC,UNIVAC I,IBM 701,IBM 702,IBM 650,Z22
Troisième génération (des transistors discrets et SSI, MSI, LSIcircuits intégrés)MainframesIBM 7090,IBM 7080,IBM System / 360,BUNCH
Mini-ordinateurPDP-8,PDP-11,IBM System / 32,IBM System / 36
Quatrième génération (circuits intégrés VLSI)Mini-ordinateurVAX,IBM System i
4 bits micro-ordinateurIntel 4004,Intel 4040
8 bits micro-ordinateurIntel 8008,Intel 8080,Motorola 6800,Motorola 6809,MOS Technology 6502,Zilog Z80
16-bit micro-ordinateurIntel 8088,Zilog Z8000,WDC 65816/65802
Micro-ordinateur 32 bitsIntel 80386,Pentium,Motorola 68000,architecture ARM
64-bit micro-ordinateurAlpha, MIPS, PA-RISC,PowerPC,SPARC, x86-64
Ordinateur embarquéIntel 8048,Intel 8051
Ordinateur personnel Ordinateur de bureau,Accueil ordinateur,ordinateur portable,assistant numérique personnel (PDA),ordinateur portable,Tablet PC,ordinateur portable
Théorique / expérimentale Ordinateur quantique,informatique chimique,l'ADN informatique,ordinateur optique,ordinateur basé spintronique

Autres sujets de matériel

Périphérique (entrée / sortie) Contribution Souris,clavier,joystick,l'image scanner,webcam,tablette graphique, microphone
Sortie Moniteur,imprimante,haut-parleur
Les deux Lecteur de disquette,disque dur,lecteur de disque optique, téléscripteur
bus informatiquesCourte portée RS-232, SCSI,PCI, USB
Longue portée (réseaux informatiques)Ethernet,ATM,FDDI

Logiciel

Softwarese réfère à des parties de l'ordinateur qui ne disposent pas d'une forme matérielle, comme les programmes, données, protocoles, etc. Lorsque le logiciel est stocké dans le matériel qui ne peut pas être facilement modifiés (tels que BIOS ROM dans unPC compatible IBM), il est parfois appelé «firmware».

Système d'exploitation Unixet BSD UNIX System V,IBM AIX,HP-UX,Solaris (SunOS),IRIX,Liste des systèmes d'exploitation BSD
GNU/Linux Liste des distributions Linux,Comparaison des distributions 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 classique, Mac OS X
Embarqués ettemps réelListe des systèmes d'exploitation embarqués
Expérimental Amoeba,Oberon /Bluebottle,Plan 9 from Bell Labs
Bibliothèque Multimédia DirectX,OpenGL,OpenAL
bibliothèque de programmationC bibliothèque standard,Standard Template Library
Données Protocole TCP / IP,Kermit,FTP,HTTP,SMTP
Format de fichierHTML,XML,JPEG,MPEG, PNG
Interface utilisateur Interface utilisateur graphique (WIMP) Microsoft Windows,GNOME,KDE,QNX Photon,CDE,GEM, Aqua
Interface utilisateur basée sur le texteL'interface de ligne de commande,interface utilisateur du texte
Application suite OfficeLe traitement de texte,éditique,programme de présentation,système de gestion de base de données, planification et gestion du temps,feuille de calcul,logiciels de comptabilité
Accès Internet Navigateur,client e-mail,serveur Web,courrier agent de transfert,messagerie instantanée
Conception et fabricationla conception assistée par ordinateur,de fabrication assistée par ordinateur, la gestion de l'usine, la fabrication robotisée, gestion de la chaîne d'approvisionnement
Graphique Raster éditeur graphique,éditeur de graphiques vectoriels,modeleur 3D,éditeur d'animation,de l'infographie 3D,montage vidéo,traitement de l'image
Acoustique Éditeur audio numérique,la lecture audio, mixage,la synthèse audio,la musique Informatique
Génie logicielCompilateur,l'assembleur,interprète,débogueur,éditeur de texte,environnement de développement intégré,l'analyse des performances du logiciel,le contrôle de révision,gestion de la configuration logicielle
Pédagogique Edutainment,jeu éducatif,Serious game, Simulateur de vol
Jeux Stratégie, Arcade,Puzzle, Simulation,First-person shooter,Plate-forme,massivement multijoueur,fiction interactive
Divers L'intelligence artificielle,logiciel antivirus,scanneur de Malware,installateur /systèmes de gestion de paquets,gestionnaire de fichier

Langues

Il ya des milliers de différentes langues-certaine programmation destinée à être objectif général, d'autres ne sont utiles que pour les applications hautement spécialisées.

Langages de programmation
Listes des langages de programmationChronologie des langages de programmation,Liste des langages de programmation par catégorie,la liste des générations de langages de programmation,Liste des langages de programmation,langages de programmation à base de non-anglais
Communément utiliséles langages d'assemblage ARM, MIPS, x86
Communément utilisédes langages de programmation de haut niveauAda,BASIC,C,C ++, C #, COBOL,Fortran,Java,Lisp,Pascal,Pascal Objet
Communément utilisédes langages de scriptLe script Bourne,JavaScript,Python, Ruby, PHP,Perl

Professions et organisations

Comme l'utilisation des ordinateurs est répandue dans toute société, il ya un nombre croissant de carrières impliquant ordinateurs.

Professions relatifs à l'informatique
Liés au matériel Génie électrique,génie électronique,génie informatique,génie des télécommunications,l'ingénierie optique,Nanoengineering
Relatifs aux logiciels Informatique,Génie informatique,éditique,l'interaction humain-ordinateur, la technologie de l'information,systèmes d'information,la science informatique,génie logiciel,l'industrie du jeu vidéo,Web design

La nécessité pour les ordinateurs de bien travailler ensemble et d'être en mesure d'échanger des informations a engendré la nécessité de nombreux organismes de normalisation, les clubs et les sociétés de nature à la fois formelle et informelle.

Organisations
Groupes de normalisationANSI,CEI,IEEE,IETF,ISO, W3C
Sociétés professionnellesACM,AIS,IET,IFIP, BCS
Gratuit /groupes open source de logicielsFree Software Foundation,la Fondation Mozilla,Apache Software Foundation
Récupéré à partir de " http://en.wikipedia.org/w/index.php?title=Computer&oldid=539872357 "