White Umbrella
26/06/2017 - 17:44:27   
RESIDENT EVIL
-- JEUX ---------------
Resident Evil Ø
Resident Evil Rebirth
Resident Evil
Resident Evil 1.5
Resident Evil 2
Resident Evil 3 Nemesis
Resident Evil 4
Resident Evil 5
Resident Evil Code Veronica
Resident Evil Survivor
Resident Evil Survivor 2 Code Veronica
Resident Evil Dead Aim
Resident Evil Outbreak
Resident Evil Outbreak File 2
Resident Evil Deadly Silence
Resident Evil Gaiden
-- FILMS --------------
Resident Evil Ground Ø
Resident Evil Apocalypse
Resident Evil Extinction (à venir)
Biohazard 4D Executer

SILENT HILL
Silent Hill
Silent Hill 2
Silent Hill 3
Silent Hill 4 The Room

PARASITE EVE
Parasite Eve 2

WHITE UMBRELLA
Forum
Contacter le webmaster
Team
Liens
F.A.Q
Accueil

PARTENAIRES
Resident Evil Virus
Forum RE RPG

www.white-umbrella.fr.st (ou lien direct : http://mathieuredfield.free.fr), White Umbrella V6.0   
AccueilAccueil    Bas de pageBas de page    RetourRetour    ImprimerImprimer    MailMail    Fermer la pageFermer la page


NOTIONS DE BASE DE PROGRAMMATION INFORMATIQUE


LANGAGE INFORMATIQUE


On appelle « langage informatique » un langage destiné à décrire l'ensemble des actions consécutives qu'un ordinateur doit exécuter. Un langage informatique est ainsi une façon pratique pour nous (humains) de donner des instructions à un ordinateur.

A contrario, le terme « langage naturel » représente les possibilités d'expression partagé par un groupe d'individus (par exemple l'anglais ou le français).

Les langages servant aux ordinateurs à communiquer entre eux n'ont rien à voir avec des langages informatiques, on parle dans ce cas de protocoles de communication, ce sont deux notions totalement différentes. Un langage informatique est rigoureux : À CHAQUE instruction correspond UNE action du processeur.

Le langage utilisé par le processeur est appelé langage machine. Il s'agit des données telles qu'elles arrivent au processeur, constituées d'une suite de 0 et de 1 (données binaire).

Le langage machine n'est ainsi pas compréhensible par l'être humain, c'est pourquoi des langages intermédiaires, compréhensibles par l'homme, ont été mis au point. Le code écrit dans ce type de langage est transformé en langage machine pour être exploitable par le processeur.

L'assembleur est le premier langage informatique qui ait été utilisé. Celui-ci est très proche du langage machine mais reste compréhensible pour des développeurs. Toutefois, un tel langage est tellement proche du langage machine qu'il dépend étroitement du type de processeur utilisé (chaque type de processeur peut avoir son propre langage machine). Ainsi, un programme développé pour une machine ne pourra pas être porté sur un autre type de machine. Le terme « portabilité » désigne l'aptitude d'un programme informatique a être utilisé sur des machines de types différents. Pour pouvoir utiliser un programme informatique écrit en assembleur sur un autre type de machine, il sera parfois nécessaire de réécrire entièrement le programme !

Un langage informatique a donc plusieurs avantages :
  • il est plus facilement compréhensible que le langage machine ;
  • il permet une plus grande portabilité, c'est-à-dire une plus grande facilité d'adaptation sur des machines de types différents ;




LANGAGES IMPERATIFS ET FONCTIONNELS


On distingue habituellement deux grandes familles de langages de programmation, selon la manière de laquelle les instructions sont traitées :
  • les langages impératifs ;
  • les langages fonctionnels.




LANGAGES IMPERATIFS


Un langage impératif organise le programme sous forme d'une série d'instructions, regroupées par blocs et comprenant des sauts conditionnels permettant de revenir à un bloc d'instructions si la condition est réalisée. Il s'agit historiquement des premiers langages, même si de nombreux langages modernes utilisent toujours ce principe de fonctionnement.

Les langages impératifs structurés souffrent néanmoins d'un manque de souplesse étant donné le caractère séquentiel des instructions.





LANGAGES FONCTIONNELS


Un langage fonctionnel (parfois appelé langage procédural) est un langage dans lequel le programme est construit par fonctions, retournant un nouvel état en sortie et prenant en entrée la sortie d'autres fonctions. Lorsque la fonction s'appelle elle-même, on parle alors de récursivité.





INTERPRETATION ET COMPILATION


Les langages informatiques peuvent grossièrement se classer en deux catégories :
  • les langages interprétés
  • les langages compilés.




LANGAGE INTERPRETE


Un langage informatique est par définition différent du langage machine. Il faut donc le traduire pour le rendre intelligible du point de vue du processeur. Un programme écrit dans un langage interprété a besoin d'un programme auxiliaire (l'interpréteur) pour traduire au fur et à mesure les instructions du programme.





LANGAGE COMPILE


Un programme écrit dans un langage dit « compilé » va être traduit une fois pour toutes par un programme annexe, appelé compilateur, afin de générer un nouveau fichier qui sera autonome, c'est-à-dire qui n'aura plus besoin d'un programme autre que lui pour s'exécuter; on dit d'ailleurs que ce fichier est exécutable.

Un programme écrit dans un langage compilé a comme avantage de ne plus avoir besoin, une fois compilé, de programme annexe pour s'exécuter. De plus, la traduction étant faite une fois pour toute, il est plus rapide à l'exécution.
Toutefois il est moins souple qu'un programme écrit avec un langage interprété car à chaque modification du fichier source (fichier intelligible par l'homme: celui qui va être compilé) il faudra recompiler le programme pour que les modifications prennent effet.

D'autre part, un programme compilé a pour avantage de garantir la sécurité du code source. En effet, un langage interprété, étant directement intelligible (lisible), permet à n'importe qui de connaître les secrets de fabrication d'un programme et donc de copier le code voire de le modifier. Il y a donc risque de non-respect des droits d'auteur. D'autre part, certaines applications sécurisées nécessitent la confidentialité du code pour éviter le piratage (transaction bancaire, paiement en ligne, communications sécurisées, ...).





LANGAGES INTERMEDIAIRES


Certains langages appartiennent en quelque sorte aux deux catégories (LISP, Java, Python, ..) car le programme écrit avec ces langages peut dans certaines conditions subir une phase de compilation intermédiaire vers un fichier écrit dans un langage qui n'est pas intelligible (donc différent du fichier source) et non exécutable (nécessité d'un interpréteur). Les applets Java, petits programmes insérés parfois dans les pages Web, sont des fichiers qui sont compilés mais que l'on ne peut exécuter qu'à partir d'un navigateur internet (ce sont des fichiers dont l'extension est .class).

Quelques exemples de langages couramment utilisésVoici une liste non exhaustive de langages informatiques existants : ADA ; Basic, C, C++, Cobol, Fortran, Java, Pascal, PHP, Lisp, Prolog, Perl…





QU’EST-CE QU’UN PROGRAMME INFORMATIQUE ?


Un programme informatique est une succession d'instructions exécutable par l'ordinateur. Toutefois, l'ordinateur ne sait manipuler que du binaire, c'est-à-dire une succession de 0 et de 1. Il est donc nécessaire d'utiliser un langage de programmation pour écrire de façon lisible, c'est-à-dire avec des instructions compréhensibles par l'humain car proches de son langage, les instructions à exécuter par l'ordinateur.
Ainsi, ces programmes sont traduits en langage machine (en binaire) par un compilateur. La façon d'écrire un programme est intimement liée au langage de programmation que l'on a choisi car il en existe énormément. De plus, le compilateur devra correspondre au langage choisi: à chaque langage de programmation son compilateur (exception faite des langages interprétés...).
D'une façon générale, le programme est un simple fichier texte (écrit avec un traitement de texte ou un éditeur de texte), que l'on appelle fichier source.
Le fichier source contient les lignes de programmes que l'on appelle code source. Ce fichier source une fois terminé doit être compilé. La compilation se déroule en deux étapes :

  • le compilateur transforme le code source en code objet, et le sauvegarde dans un fichier objet, c'est-à-dire qu'il traduit le fichier source en langage machine (certains compilateurs créent aussi un fichier en assembleur, un langage proche du langage machine car possédant des fonctions très simples, mais lisibles)
  • le compilateur fait ensuite appel à un éditeur de liens (en anglais linker ou binder) qui permet d'intègrer dans le fichier final tous les éléments annexes (fonctions ou librairies) auquel le programme fait référence mais qui ne sont pas stockés dans le fichier source. Puis il crée un fichier exécutable qui contient tout ce dont il a besoin pour fonctionner de façon autonome, (sous les systèmes d'exploitation Microsoft Windows ou MS-Dos le fichier ainsi créé possède l'extension .exe)




A QUOI RESSEMBLE UN PROGRAMME INFORMATIQUE ?


L'allure d'un programme dépend du type de langage utilisé pour faire le programme...

Toutefois, à peu près tous les langages de programmation sont basés sur le même principe : Le programme est constitué d'une suite d'instructions que la machine doit exécuter. Celle-ci exécute les instructions au fur et à mesure qu'elle lit le fichier (donc de haut en bas) jusqu'à ce qu'elle rencontre une instruction (appelée parfois instruction de branchement) qui lui indique d'aller un endroit précis du programme. Il s'agit donc d'une sorte de jeu de piste dans lequel la machine doit suivre le fil conducteur et exécuter les instructions qu'elle rencontre jusqu'à ce qu'elle arrive à la fin du programme et celui-ci s'arrête.





LA NOTIONS DE VARIABLE


Dans la plupart des langages, on travaille généralement sur des variables, c'est-à-dire que l'on associe à un nom un contenu. On pourra ainsi appeler une variable "toto" et y stocker le chiffre 8.





TYPES DE DONNEES


Certains langages acceptent que l'on associe à un nom de variable n'importe quel type de donnée (c'est-à-dire aussi bien un nombre entier qu'un caractère), on appelle ces langages des langages non typés.
En fait comme vous pourrez le voir dans le chapître représentation des données, le type de donnée conditionne le nombre d'octets sur laquelle la donnée est codée, c'est-à-dire l'occupation en mémoire de cette donnée ainsi que le format dans lequel elle est représentée. C'est la raison pour laquelle les langages évolués (Le C, le Java) sont des langages typés, cela signifie qu'à une variable est associé non seulement un nom mais aussi un type de donnée qu'il faudra préciser lorsque l'on déclarera la variable, c'est-à-dire que lorsque l'on écrira le nom de la variable pour la première fois il faudra préciser au compilateur quelle sorte de données celle-ci va pouvoir contenir (la façon de déclarer la variable dépendra du langage).





SYNTAXE


Les langages demandent une syntaxe rigoureuse, on ne peut donc pas écrire les choses de la manière dont on le souhaite.

Ainsi, certains langages sont case sensitive (en français "sensibles à la casse"), cela signifie qu'un nom ne comportant que des minuscules ne sera pas considéré comme équivalent au même nom comprenant des majuscules. Ainsi la variable nommée "Toto" sera une variable différente de la variable "toto".

Les noms de variables admettent généralement une longueur maximale (qui dépend du langage) et un jeu de caractères réduit, parmi lesquels on retrouve généralement les caractères suivants :

abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 1234567890_

Ainsi, un espace (" ") est en réalité un caractère à part entière, appelé caractère spécial). Il est ainsi rare qu'un langage accepte des caractères spéciaux dans un nom de variable !





MOTS RESERVES


Dans la plupart des langages, il existe une poignée de mots que l'on ne peut pas attribuer aux noms de variables, on les appelle mots réservés (en anglais reserved words). Ceux-ci seront explicités dans chaque chapitre correspondant à un langage spécifique.





LES CONSTANTES


Les constantes sont des données dont la valeur ne peut être modifiée. On les définit généralement en début de programme. La valeur que la constante contient peut être de tout type, suivant ce que le langage autorise.





LES COMMENTAIRES


Il est généralement bon de pouvoir ajouter dans un programme des lignes de texte qui ne seront pas prises en compte par le compilateur. Ces lignes de textes sont généralement précédées (ou encadrées) par des instructions spéciales qui signaleront au compilateur de les ignorer.

Les commentaires servent à clarifier un programme en donnant des explications. Ils serviront si jamais une autre personne essaie de comprendre le fonctionnement du programme en lisant le fichier source, ou bien à la personne qui l'a créé si jamais il relit le fichier source quelques années après l'avoir écrit...





A QUOI RESSEMBLE UNE INSTRUCTION ?


L'instruction est l'élément clé de l'ordinateur car c'est elle qui permet de spécifier au processeur l'action à effectuer. Les instructions à effectuer sont indiquées dans le fichier source et l'ordinateur passe d'une instruction à une autre en suivant les instructions indiquées de haut en bas (car la lecture d'un fichier se fait de haut en bas).
Une instruction est généralement composée de deux éléments :
  • l'opérateur: action à effectuer par le processeur
  • la ou les opérandes: une ou plusieurs données sur lequel on va effectuer l'opération
opérateur | opérande(s)





LES TYPES D’OPERATEURS


On distingue généralement deux ou trois types d'opérateurs :

  • Les opérateurs unaires: ce sont des opérateurs qui n'admettent qu'une seule opérande
  • Les opérateurs binaires: ce sont des opérateurs qui, contrairement à ce que l'on pourrait croire, ne travaillent pas sur des opérandes binaires, mais admettent deux opérandes (binaire désigne donc le nombre d'opérandes manipulées, l'addition, souvent notée +, est donc un opérateur binaire)
  • Les opérateurs ternaires: ce sont des opérateurs qui admettent trois opérandes (les opérateurs conditionnels sont par exemple des opérateurs ternaires)

Les opérateurs peuvent être aussi répartis selon plusieurs catégories selon le type d'action que leur exécution déclenche :

  • les opérateurs arithmétiques
  • les opérateurs de comparaison
  • les opérateurs logiques
  • les opérateurs de bits
  • les opérateurs d'affectation
  • les opérateurs conditionnels
  • les opérateurs séquentiels
  • ...
Les priorités des opérateursDans chaque langage il existe généralement des priorités d'évaluation des opérateurs, afin que l'ordinateur sache dans quel sens évaluer les opérateurs lorsque plusieurs d'entre eux sont présents dans une même expression.




Haut de pageHaut de page Fermer la pageFermer la page
DOCUMENTS
Wesker's Report 1
Wesker's Report 2 (texte)
Wesker's Report 2 (images)

DIVERS RESIDENT EVIL
Fonds d'écran
Bibliographie
OST Resident Evil
Dossier Resident Evil Archives
Collector RE
Goodies
Fanarts Resident Evil
BD Resident Evil
Infos sur Capcom

TELECHARGEMENTS
Téléchargements
Vidéos

UMBRELLA
Infos sur Umbrella
Infos sur les UBCS/USS
Notions de base de génétique d'Umbrella
Notions de base de programmation d'Umbrella

STATISTIQUES
Connectés : 2
Visites aujourdhui : 15
Visites totales : 399688
Page générée en 0.02s !


Valid HTML 4.0 Transitional Valid CSS! Powered by PHP ! Get Firefox !

Design de Mathieu Redfield - ©White Umbrella, 2003-2017   
Toute marque citée appartient à son détenteur respectif