Top 10 Articles

Zoophilia
Liste de prières et de bénédictions juives
Pastèque
Gmail
Saola
Odnoklassniki.ru
Xeroderma pigmentosum
La maladie de Minamata
Orkut
Liste de missions de maintien de la paix des Nations Unies

News:

Programme machine

Programmes machine (aussi programmes de logiciel, ou juste programmes) soyez instructions pour a ordinateur.[1] Un ordinateur exige des programmes de fonctionner, et un programme machine ne fait rien à moins que ses instructions soient exécutées par a unité centrale de traitement.[2] Les programmes machine sont l'un ou l'autre exécutable programmes ou code source de quels programmes exécutables sont dérivés (par exemple, compilé).

Le code source d'ordinateur est souvent écrit par le professionnel informaticiens. Le code source est écrit dans a langage de programmation cela suit habituellement un de la force deux paradigmes: impératif ou déclaratif programmation. Le code source peut être converti en dossier exécutable (parfois appelé un programme exécutable) par a compilateur. Des programmes machine peuvent être exécutés par a unité centrale de traitement, à l'aide de l' interprète, ou peut être incorporé directement dans matériel.

Des programmes machine peuvent être classés par catégorie le long des lignes fonctionnelles : logiciel système et logiciel d'application. Et beaucoup de programmes machine peuvent fonctionner simultanément sur un ordinateur simple, un processus connu sous le nom de traitement multitâche.

Table des matières

Programmation

Article principal : Programmation d'ordinateur

Programmation d'ordinateur est le processus itératif de l'écriture ou de l'édition code source. L'édition du code source implique d'examiner, analyser, et raffiner. Une personne qui pratique cette compétence désigné sous le nom d'un ordinateur programmeur ou réalisateur de logiciel. Le processus parfois prolongé de la programmation d'ordinateur est habituellement mentionné As développement de logiciel. La limite technologie de la programmation devient populaire pendant que le processus est vu en tant que technologie discipline.

Paradigmes

Des programmes machine peuvent être classés par catégorie par langage de programmation paradigme les produisaient. Deux des paradigmes principaux sont impératif et déclaratif.

Les programmes écrits en utilisant une langue impérative indiquent algorithme employer des déclarations, des expressions, et des rapports.[3] Une déclaration associe a variable nom avec a datatype. Par exemple : variété X : nombre entier ; . Une expression rapporte une valeur. Par exemple : 2 + 2 rendements 4. En conclusion, un rapport pourrait assigner une expression à une variable ou employer la valeur d'une variable pour changer l'écoulement de la commande de programme. Par exemple : X : = 2 + 2 ; si x = 4 do_something alors () ; Une critique des langues impératives est l'effet secondaire d'une instruction d'affectation sur une classe des variables appelées les variables non-local.[4]

Les programmes écrits en utilisant une langue déclarative indiquent les propriétés qui doivent être rencontrées par le rendement et n'indiquent aucun détail d'exécution. Deux larges catégories des langues déclaratives sont langues fonctionnelles et langues logiques. Le principe derrière des langues fonctionnelles (comme Haskell) est ne pas permettre des effets secondaires, qui le facilite pour raisonner au sujet des programmes comme des fonctions mathématiques.[4] Le principe derrière des langues logiques (comme Prolog) est définir le problème à résoudre - le but - et laisser la solution détaillée au système de Prolog elle-même.[5] Le but est défini en fournissant une liste de subgoals. Alors chacun subgoal est défini en fournissant plus loin une liste de ses subgoals, etc. Si un chemin des subgoals ne trouve pas une solution, alors que subgoal est fait retour arrière et un autre chemin est systématiquement essayé.

La forme dans laquelle un programme est créé peut être textuelle ou visuelle. Dans a langue visuelle le programme, éléments sont graphiquement manoeuvrés plutôt que textuellement indiqués.

Compilation ou interprétation

A programme machine sous forme de lisible pour l'homme, le langage de programmation d'ordinateur s'appelle code source. Le code source peut être converti en image exécutable par a compilateur ou exécuté immédiatement à l'aide de l' interprète.

Des programmes machine compilés désigné généralement sous le nom des executables, images binaires, ou simplement As binaries - une référence au binaire format de dossier stockaient le code exécutable. Des compilateurs sont habitués pour traduire le code source d'un langage de programmation en l'un ou l'autre code d'objet ou code machine. Le code d'objet a besoin de transformation plus ultérieure pour devenir code machine, et le code machine est Unité centrale de traitement'indigène de s code, préparez pour l'exécution.

Des programmes machine interprétés sont décodés et immédiatement puis exécutés ou sont décodés selon une certaine représentation intermédiaire efficace pour la future exécution. BASIC, Perl, et Python sont les exemples des programmes machine immédiatement exécutés. Alternativement, Java des programmes machine sont compilés en avant du temps et stockés comme un code non lié à un type de machine particulier a appelé bytecode. Bytecode est alors exécuté sur demande par un interprète appelé l'a machine virtuelle.

L'inconvénient principal des interprètes est plus lent couru de programmes machine que si compilé. L'interprétation du code est plus lente que le fonctionnement la version compilée parce que l'interprète doit décodez chacun rapport chaque fois que il est chargé et effectuez alors l'action désirée. D'une part, le développement de logiciel peut être plus rapide à l'aide d'un interprète parce que l'essai est immédiat quand l'étape de compilation est omise. Un autre inconvénient des interprètes est l'interprète doit être présent sur l'ordinateur lorsque le programme machine est exécuté. Alternativement, les programmes machine compilés n'ont pas besoin d'avoir le compilateur actuel à l'heure de l'exécution.

Propriété d'un langage de programmation n'exige pas de lui d'être exclusivement compilé ou exclusivement interprété. La catégorisation reflète habituellement la méthode la plus populaire d'exécution de langue. Par exemple, le BASIC est considéré comme langue et C interprétés une langue compilée, en dépit de l'existence des compilateurs en BASIC et des interprètes de C.

programmes de Individu-modification

Un programme machine dedans exécution est normalement traité en tant qu'étant différent du données le programme opère. Cependant, dans certains cas cette distinction est brouillée quand un programme machine se modifie. Le programme machine modifié est plus tard exécuté en tant qu'élément du même programme. code de Individu-modification est possible aux programmes écrits dedans LISP, COBOL, et Prolog.

Exécution et stockage

Typiquement, des programmes machine sont stockés dedans mémoire non-volatile jusqu'à a demandé directement ou être indirectement exécuté par l'utilisateur d'ordinateur. Sur une telle demande, le programme est chargé dans mémoire à accès sélective, par un programme machine appelé logiciel d'exploitation, où il peut être accédé directement par l'unité centrale de traitement. L'unité central de traitement exécute alors (des « courses ») le programme, instruction par l'instruction, jusqu'à l'arrêt. Un programme dans l'exécution s'appelle l'a processus.[6] L'arrêt est ou par individu-arrêt normal ou par erreur - logiciel ou erreur machine.

Programmes inclus

Quelques programmes machine sont inclus dans le matériel. A ordinateur à programme enregistré exige un premier programme machine stocké dans le son la mémoire morte à initialisation. Le processus d'initialisation est d'identifier et initialiser tous les aspects du système, de Registres d'unité centrale de traitement à contrôleurs de périphérique à mémoire contenu.[7] Après le processus d'initialisation, ce programme machine d'initiale charge logiciel d'exploitation et ensembles compteur de programme pour commencer des opérations normales. Indépendant de l'ordinateur principal, a dispositif câblé pourrait avoir enfoncé progiciels pour commander son opération. Le progiciel est employé quand on ne s'attend rarement à ce qu'ou jamais le programme machine change, ou quand le programme ne doit pas être perdu quand le courant est coupé.[8]

Programmation manuelle

Des programmes machine historiquement ont été manuellement entrés dans l'unité centrale de traitement par l'intermédiaire des commutateurs. Une instruction a été représentée par une configuration des arrangements "Marche/Arrêt". Après réglage de la configuration, un bouton d'exécution a été appuyé sur. Ce processus a été alors répété. Des programmes machine historiquement manuellement ont été entrés également par l'intermédiaire de ruban perforé ou cartes perforées. Après que le milieu ait été chargé, l'adresse commençante a été placée par l'intermédiaire des commutateurs et le bouton d'exécution a été appuyé sur.[9]

Génération de programme automatique

Programmation générative est un modèle de programmation d'ordinateur cela crée code source à travers générique classes, prototypes, calibres, aspects, et générateurs de code pour s'améliorer programmeur productivité. Le code source est produit avec outils de programmation comme a processeur de calibre ou Environnement intégré de développement. La forme la plus simple de générateur de code source est a macro processeur, tel que Préprocesseur de C, qui remplace des modèles en code source selon des règles relativement simples.

Moteurs de logiciel code source de rendement ou code de marge bénéficiaire bénéficiaire cela deviennent simultanément l'entrée à l'autre processus d'ordinateur. L'analogie est celle d'un processus conduisant un autre processus, avec le code machine étant brûlé comme carburant. Serveurs d'application sont les moteurs de logiciel aux lesquels fournissez les applications ordinateurs de client. Par exemple, a Wiki est un serveur d'application qui permet à des utilisateurs de construire contenu dynamique réuni à partir articles. Wikis se produisent HTML, CSS, Java, et Javascript ce qui sont alors interprété par a web browser.

Exécution simultanée

Voyez également : Processus (calcul) et Multitraitement

Appui de beaucoup de logiciels d'exploitation traitement multitâche ce qui permet à beaucoup de programmes machine de sembler courir simultanément sur un ordinateur simple. Les logiciels d'exploitation peuvent exécuter des programmes multiples à travers ordonnancement - un mécanisme de logiciel à commutateur l'unité centrale de traitement parmi des processus fréquemment de sorte que les utilisateurs puissent interactif avec chaque programme tandis qu'il fonctionne.[10] Dans le matériel, les ordinateurs modernes de multiprocesseur de jour ou les ordinateurs avec les processeurs multinucléaires peuvent exécuter des programmes multiples.[11]

Catégories fonctionnelles

Des programmes machine peuvent être classés par catégorie le long des lignes fonctionnelles. Ces catégories fonctionnelles sont logiciel système et logiciel d'application. Le logiciel système inclut logiciel d'exploitation quels couples le matériel d'ordinateur avec le logiciel d'application.[12] Le but du logiciel d'exploitation est de fournir un environnement dans lequel le logiciel d'application s'exécute d'une façon commode et efficace.[12] En plus du logiciel d'exploitation, le logiciel système inclut programmes utilitaires cette aide contrôlent et accordent l'ordinateur. Si un programme machine n'est pas logiciel système puis c'est logiciel d'application. Le logiciel d'application inclut logiciel personnalisé, qui couple le logiciel système avec interface utilisateur. Le logiciel d'application inclut également les programmes utilitaires qui aident des utilisateurs à résoudre des problèmes d'application, comme le besoin d'assortir.

Références

  1. ^ Escalier, Ralph M., et autres (2003). Principes des systèmes d'information, sixième édition. Thomson Learning, Inc., 132. ISBN 0-619-06489-7. 
  2. ^ Silberschatz, Abraham (1994). Concepts de logiciel d'exploitation, quatrième édition. Addison-Wesley, 58. ISBN 0-201-50480-4. 
  3. ^ Wilson, Leslie B. (1993). Langages de programmation comparatifs, deuxième édition. Addison-Wesley, 75. ISBN 0-201-56885-3. 
  4. ^ a b Wilson, Leslie B. (1993). Langages de programmation comparatifs, deuxième édition. Addison-Wesley, 213. ISBN 0-201-56885-3. 
  5. ^ Wilson, Leslie B. (1993). Langages de programmation comparatifs, deuxième édition. Addison-Wesley, 244. ISBN 0-201-56885-3. 
  6. ^ Silberschatz, Abraham (1994). Concepts de logiciel d'exploitation, quatrième édition. Addison-Wesley, 97. ISBN 0-201-50480-4. 
  7. ^ Silberschatz, Abraham (1994). Concepts de logiciel d'exploitation, quatrième édition. Addison-Wesley, 30. ISBN 0-201-50480-4. 
  8. ^ Tanenbaum, Andrew S. (1990). Organisation structurée d'ordinateur, troisième édition. Apprenti Hall, 11. ISBN 0-13-854662-2. 
  9. ^ Silberschatz, Abraham (1994). Concepts de logiciel d'exploitation, quatrième édition. Addison-Wesley, 6. ISBN 0-201-50480-4. 
  10. ^ Silberschatz, Abraham (1994). Concepts de logiciel d'exploitation, quatrième édition. Addison-Wesley, 100. ISBN 0-201-50480-4. 
  11. ^ Akhter, Shameem (2006). Programmation multinucléaire. Richard Bowles (pression d'Intel), pp. 11-13. ISBN 0-9764832-4-6. 
  12. ^ a b Silberschatz, Abraham (1994). Concepts de logiciel d'exploitation, quatrième édition. Addison-Wesley, 1. ISBN 0-201-50480-4. 

Davantage de lecture

  • Knuth, Donald E. (1997). L'art de l'ordinateur programmant, volume 1, 3ème édition. Boston : Addison-Wesley. ISBN 0-201-89683-4. 
  • Knuth, Donald E. (1997). L'art de l'ordinateur programmant, volume 2, 3ème édition. Boston : Addison-Wesley. ISBN 0-201-89684-2. 
  • Knuth, Donald E. (1997). L'art de l'ordinateur programmant, volume 3, 3ème édition. Boston : Addison-Wesley. ISBN 0-201-89685-0. 

Liens externes

The original article is from Wikipedia. To view the original article please click here.
Creative Commons Licence