Difference between revisions of "Basic Pascal Tutorial/Compilers/fr"

From Lazarus wiki
Jump to navigationJump to search
Line 6: Line 6:
  
 
===A propos des langages d'ordinateur et des compilateurs===
 
===A propos des langages d'ordinateur et des compilateurs===
When talking about computer languages, there are basically three major terms that will be used.
+
En parlant des compilateurs, trois termes majeurs sont utilisés essentiellement.
  
# '''Machine language''' -- actual binary code that gives basic instructions to the computer's CPU. These are usually very simple commands like adding two numbers or moving data from one memory location to another.
+
# '''Langage machine''' -- code binaire réel qui donne les instructions de base pour le processeur de l'ordinateur. Ce sont généralement de très simples commandes comme ajouter deux nombres ou déplacer une données d'une emplacement mémoire vers un autre.
# '''Assembly language''' -- a way for humans to program computers directly without memorizing strings of binary numbers. There is a one-to-one correspondance with machine code. For example, in Intel x86 machine language, ADD and MOV are mnemonics for the addition and move operations.
+
# '''Langage d'assemblage, assembleur''' -- une manière pour les humains de programmer les ordinateurs directement sans avoir à mémoriser de suites de nombres binaires. Il y a une correspondance de un à un avec le code machine. Par exemple, en langage machine Intel x86, ADD et MOV sont des mnémoniques pour les opérations d'addition et de déplacement.
# '''High-level language''' -- permits humans to write complex programs without going step-by step. High-level languages include Pascal, C, C++, FORTRAN, Java, BASIC, and many more. One command in a high-level language, like writing a string to a file, may translate to dozens or even hundreds of machine language instructions.
+
# '''Langage de haut-niveau, langage évolué''' -- permets aux humains d'écrire des programmes complexes sans aller étape par étape. Les langages de haut-niveau sont Pascal, C, C++, FORTRAN, Java, BASIC et bien d'autres. Une commande dans un langage évolué, comme écrire une chaîne dans un fichier, peut être traduite en douzaine ou même en centaines d'instructions en langage machine.
  
Microprocessors can only run machine language programs directly. Assembly language programs are assembled, or translated into machine language. Likewise, programs written in high-level languages, like Pascal, must also be translated into machine language before they can be run. To do this translation is to compile a program.
+
Les microprocesseurs ne peuvent directement exécuter que des programmes en langage machine. Les programmes en assembleur sont assemblés ou traduits en langage machine. Pareillement, les programme écrit dans des langages évolués doivent aussi être traduits en langage machine avant de pouvoir être exécutés. Faire cette traduction est compiler un programme.
  
The program that accomplishes the translation is called a '''compiler'''. This program is rather complex since it not only creates machine language instructions from lines of code, but often also optimizes the code to run faster, adds error-correction code, and links the code with subroutines stored elsewhere. For example, when you tell the computer to print something to the screen, the compiler translates this as a call to a pre-written module. Your code must then be linked to the code that the compiler manufacturer provides before an executable program results.
+
Le programme qui accomplit la traduction est appelé un '''compilateur'''. Ce programme est assez compliqué car il ne fait pas que créer les instructions en langage machine depuis les luignes de code. mais souvent il optimise aussi le code pour s'exécuter plus vite, il ajoute du code de correction d'erreur, et lie au code des routines conservées ailleurs. Par exemple, quand vous demandez à l'ordinateur d'imprimer quelque chose à l'écran, le compilateur traduit cela en un appel à un module pré-écrit. Votre code doit être lié au code que le fabricant fournit pour produire un programme exécutable.
  
With high-level languages, there are again three basic terms to remember:
+
Avec les langages évolués, trois termes de base sont à retenir:
  
# Source code -- the code that you write. This typically has an extension that indicates the language used. For example, Pascal source code usually ends in "<tt>.pas</tt>" and C++ code usually ends in "<tt>.cpp</tt>"
+
# Code source -- le code que vous écrivez. Le fichier a typiquement une extension qui indique le langage utilisé. Par exemple, le fichier de code source Pascal se termine par "<tt>.pas</tt>" et pour C++, c'est "<tt>.cpp</tt>".
# Object code -- the result of compiling. Object code usually includes only one module of a program, and cannot be run yet since it is incomplete. On DOS/Windows systems, this usually has an extension of "<tt>.obj</tt>"
+
# Code objet -- le résultat de la compilation du fichier. Le code objet inclut  en général un seul module du programme, et ne peut pas être encore exécuté parce qu'incomplet. Dans les systèmes DOS/Windows, c'est le plus souvent l'extension "<tt>.obj</tt>".
# Executable code -- the end result. All the object code modules necessary for a program to function are linked together. On DOS/Windows systems, this usually has an extension of "<tt>.exe</tt>"
+
# Code exécutable -- le résultat final. Tout le code objet des modules nécessaires pour que le programme fonctionne sont liés ensemble. Dans les systèmes DOS/Windows, il a en général l'extension "<tt>.exe</tt>".
  
 
===More About Compilers===
 
===More About Compilers===

Revision as of 22:51, 17 March 2014

български (bg) Deutsch (de) English (en) español (es) français (fr) italiano (it) 日本語 (ja) 한국어 (ko) русский (ru) 中文(中国大陆)‎ (zh_CN)

Compilateurs Pascal

Ce document va expliquer les bases sur les compilateurs en fournissant aussi des liens vers des compilateurs Pascal bien connus et expliquera comment configurer Free Pascal.

A propos des langages d'ordinateur et des compilateurs

En parlant des compilateurs, trois termes majeurs sont utilisés essentiellement.

  1. Langage machine -- code binaire réel qui donne les instructions de base pour le processeur de l'ordinateur. Ce sont généralement de très simples commandes comme ajouter deux nombres ou déplacer une données d'une emplacement mémoire vers un autre.
  2. Langage d'assemblage, assembleur -- une manière pour les humains de programmer les ordinateurs directement sans avoir à mémoriser de suites de nombres binaires. Il y a une correspondance de un à un avec le code machine. Par exemple, en langage machine Intel x86, ADD et MOV sont des mnémoniques pour les opérations d'addition et de déplacement.
  3. Langage de haut-niveau, langage évolué -- permets aux humains d'écrire des programmes complexes sans aller étape par étape. Les langages de haut-niveau sont Pascal, C, C++, FORTRAN, Java, BASIC et bien d'autres. Une commande dans un langage évolué, comme écrire une chaîne dans un fichier, peut être traduite en douzaine ou même en centaines d'instructions en langage machine.

Les microprocesseurs ne peuvent directement exécuter que des programmes en langage machine. Les programmes en assembleur sont assemblés ou traduits en langage machine. Pareillement, les programme écrit dans des langages évolués doivent aussi être traduits en langage machine avant de pouvoir être exécutés. Faire cette traduction est compiler un programme.

Le programme qui accomplit la traduction est appelé un compilateur. Ce programme est assez compliqué car il ne fait pas que créer les instructions en langage machine depuis les luignes de code. mais souvent il optimise aussi le code pour s'exécuter plus vite, il ajoute du code de correction d'erreur, et lie au code des routines conservées ailleurs. Par exemple, quand vous demandez à l'ordinateur d'imprimer quelque chose à l'écran, le compilateur traduit cela en un appel à un module pré-écrit. Votre code doit être lié au code que le fabricant fournit pour produire un programme exécutable.

Avec les langages évolués, trois termes de base sont à retenir:

  1. Code source -- le code que vous écrivez. Le fichier a typiquement une extension qui indique le langage utilisé. Par exemple, le fichier de code source Pascal se termine par ".pas" et pour C++, c'est ".cpp".
  2. Code objet -- le résultat de la compilation du fichier. Le code objet inclut en général un seul module du programme, et ne peut pas être encore exécuté parce qu'incomplet. Dans les systèmes DOS/Windows, c'est le plus souvent l'extension ".obj".
  3. Code exécutable -- le résultat final. Tout le code objet des modules nécessaires pour que le programme fonctionne sont liés ensemble. Dans les systèmes DOS/Windows, il a en général l'extension ".exe".

More About Compilers

The de facto standard in DOS and Windows-based compilers is Borland Pascal. Before it came out, most Pascal compilers were clumsy and slow, strayed from the Pascal standard, and cost several hundred dollars. In 1984, Borland introduced Turbo Pascal, which sold for less than $100, compiled an order of magnitude faster than existing compilers, and came with an abundance of source code and utility programs.

This product was a great success and was prominent for almost a decade. But in the 1990s, the world was moving to Windows. In 1993, the last version of Turbo Pascal, version 7 for DOS, came out. After that, the demand for DOS programs plummetted and Borland (renamed Inprise, then back to Borland) focused on producing Windows compilers.

This tutorial will only deal with console-based programming, where the computer prints lines of data to the screen and the user interacts with the program using a keyboard. The goal of the tutorial is to teach how to program in Pascal. Once you've learned that, you can easily look at a reference book or another web page and pick up graphics and windowing systems on your own.

Although old commercial Pascal compilers are often available for download, Turbo Pascal 5.5 from the Borland Museum and Symantec Think Pascal (Macintosh) linked from The Free Country's Free Pascal Compiler List, computers have progressed much since the 1980s and early 1990s. We are no longer stuck with 8.3 filenames on DOS or non-preemptive multitasking on Mac OS. Using an old compiler is fun in the same sense as playing an old game on an emulator, but the open source movement has produced good compilers for modern operating systems, and a beginner will find it much easier to use those.

Compilateurs Open Source

The two main open-source compiler projects are:

Free Pascal is generally considered friendlier for novices, and strives to emulate Borland Pascal in many ways, though both will serve fine for learning Pascal.

As most users of this tutorial will be running Windows, here's how to set up Free Pascal and get to the point where you're compiling a program on a modern Windows operating system:

  1. Download the Win32 installer for Free Pascal from the Free Pascal download page.
  2. Run the file you just downloaded and go through the wizard to setup Free Pascal.
  3. Open Free Pascal using the shortcut (by default it is located in Start -> Free Pascal.
  4. Type in a program (flip to the next lesson to get a "Hello, world." program).
  5. Save the file with File-Save As ...
  6. Run the program from the Run menu. This will automatically compile the program if you've made any changes, then run the program. It will also run the program without compiling if you've not made any changes since the last time you compiled.

With programs that don't expect user input, you'll see the program flash on a black screen. But the program completes in the blink of an eye and you are returned to the IDE without seeing the results of your work. There are two ways around this:

  • Select User screen from the Debug menu to see the results of the program.
  • Add a readln statement at the end of every program. This will make the program wait for the user to press the Enter key before the program ends and returns to the IDE.

Userscreen.png

Note that a .exe file was created in the directory where you saved your program. This is the executable. You can go to the Command Prompt, change to the directory, and run this executable straight. You can also double-click on it in Windows Explorer (and it will still flash by quickly if it ends without requiring user input).


précédent table des matières suivant