Cours d’Informatique
Initiation à l’informatique,
à l’algorithmique
et à la programmation
2016 / 2017 DUT - GUE - ETE 1 1
Emploi du temps
• Programmation des séances:
– 20 h cours (4h par semaine / Vendredi Matin)
– 20 h de TP (4h par semaine / Vendredi Après-midi)
• 1 Contrôle Continu.
• 1 EFP.
• 1 RTP
2016 / 2017 DUT - GUE - ETE 1 2
Objectif
• Familiariser les étudiants avec les techniques et
outils permettant
– de concevoir et de comprendre
– d’implémenter un programme sur un ordinateur.
– de réaliser des applications informatiques
2016 / 2017 DUT - GUE - ETE 1 3
Chapitre 1 :
Introduction à l’informatique
Chapitre suivant algorithmique
2016 / 2017 DUT - GUE - ETE 1 4
1.1 : L’informatique ?
Computer Science
en anglais
INFORMATIQUE ?
INFORMATION AUTOMATIQUE
Art d’entraîner automatiquement des actions
Science de l’information
Traitement automatique de l’information
ORDINATEUR
Machine automatique
2016 / 2017 DUT - GUE - ETE 1 5
L’ordinateur
• Machine qui permet de traiter de l’information :
– d’acquérir et de conserver de l’information (acquisition,
stockage)
– d’effectuer des traitements (calcul),
– de restituer les informations stockées (restitution)
• Permet de lier «information» «données» (0 ou 1)
• Différents types d’informations : valeurs numériques,
textes, images, sons, …: tout cela avec des 0 ou 1
2016 / 2017 DUT - GUE - ETE 1 6
Traitement de l’information
Schéma de principe du traitement de l’information
Données à l’état brut
ENTREE
Données corrigées
TRAITEMENT Résultats
Par ordinateur
SORTIE
2016 / 2017 DUT - GUE - ETE 1 7
L’ordinateur / l’homme
• Raison du remplacement :
– Vitesse (pour des opérations « bas niveau »)
– Fiabilité (répétitivité)
– Mémoire
– Coût
• 2 types d’ « informaticiens »
– les utilisateurs des outils informatiques
– les concepteurs de ces outils
2016 / 2017 DUT - GUE - ETE 1 8
Domaines de l’informatique
• Domaine du matériel (hardware)
– partie physique de l’ordinateur
– composants constituant un ordinateur (microprocesseur …)
– support du traitement de l’information (disque dur …)
• Domaine du logiciel (software)
– instructions expliquant à l’ordinateur comment traiter un
problème
– Cela nécessite de décrire des : algorithmes et
représentations informatiques de ces instructions
– Pour aboutir à un programme
2016 / 2017 DUT - GUE - ETE 1 9
1.2 : Matériel
121 Aperçu historique
– Principe de base : John Von Newmann 1946 =
véritable naissance de l’informatique
– Sinon les ancêtres et étapes importantes:
• Boulier chinois
• Numération binaire par Francis BACON en 1600
• Machine à calculer de Pascal, 1642 : dépassée par l’apparition de
l’électronique et des semi-conducteurs
• Machine de Falcon, 1728. Première à utiliser un « programme » sur
plaquette de bois perforée
• Mémoire mécanique de Babbage, 1833. Conçoit une mémoire séparée
des organes d’entrée et de sortie
• Algèbre de Boole 1850 (bases de l’automatisme)
• Machine de Hollerith, 1890. Il utilisa le premier la carte perforée, comme
support universel d‘ information , mis en oeuvre dans les premières
générations d‘ ordinateurs.
2016 / 2017 DUT - GUE - ETE 1 10
Les ancêtres des ordinateurs
Machine de Pascal (1645)
Machine de Babbage (1833)
2016 / 2017 DUT - GUE - ETE 1 11
1.2.2 - Générations d’ordinateurs
• Génération 1 (~1945 - 1960)
– machines électroniques composées de circuits à
lampes à vide (et non transistors à semi-conducteurs)
– place importante (équivalent d’une salle)
– performances de l’ordre de 1000 opérations/s
– programmation en langage binaire
– faible portabilité des programmes
– programme et données fournis sous forme de cartes
perforées, résultats sur une imprimante (pas de
stockage)
2016 / 2017 DUT - GUE - ETE 1 12
1.2.2 - Générations d’ordinateurs
• Génération 2 (1960 - 1965)
– découverte des transistors qui remplaceront
les circuits à lampes à vide
– Apparition des 1ère mémoires (à tores)
– évite l'échauffement, gain de place, fiabilité
– performances d’environ 100 000 opérations/s
– programmation en langage binaire mais aussi à
l’aide des premiers langages évolués (Fortran,
Cobol, ...)
2016 / 2017 DUT - GUE - ETE 1 13
1.2.2 - Générations d’ordinateurs
• Génération 3 (1965 - 1975)
– invention du circuit intégré permettant de placer des
dizaines de transistors sur une puce de silicium
– performances 109 à 1012 opérations/s
– généralisation de la programmation en langage évolué
– Les Systèmes d'Exploitation (OS) Permettent de gérer
plusieurs programmes différents sous le contrôle d'un
programme central
2016 / 2017 DUT - GUE - ETE 1 14
1.2.2 - Générations d’ordinateurs
• Génération 4 (1975 - ?)
– exploitation du circuit intégré à grande échelle:
plusieurs dizaines de milliers (millions) de circuits
peuvent être intégrés sur une même puce
– reproduction sur une seule puce d’une véritable micro
machine : le micro processeur. (En 1971 l'Intel 4004 fut
le premier microprocesseur)
– diminution de la place occupé par un ordinateur
– développement de l’ordinateur personnel.
– La programmation s'oriente vers la programmation
OBJETS (orientés autour des données et non plus des
actions)
2016 / 2017 DUT - GUE - ETE 1 15
1.3 - Structure de l’ordinateur
Carte vidéo
Disque
Ecran Mémoire
Dur
Centrale
Clavier
Unité de Disquette
Souris traitement
Haut- CDROM
parleurs Unité Centrale
Carte son
Périphériques de communication Unités d’échange
Périphériques de mémorisation Bus
Support de transfert
d'information entre les différents
2016 / 2017 DUT - GUE - ETE 1 16
ensembles d'un ordinateur) .
1.3.1 - Périphériques
• 2 types de périphériques
Une pièce de matériel qui peut effectuer une fonction particulière
– périphériques de communication,
– périphériques de mémorisation.
• Périphériques de communication
– Périphériques d’entrées
• clavier
• souris
– Périphériques de sorties
• écran
• imprimantes
2016 / 2017 DUT - GUE - ETE 1 17
Les périphériques
ENTREES
• Clavier
• Souris
MEMOIRES (entrées/sorties)
• Disque dur
• Disquette
• Disque optique (CD)
SORTIES
• Ecran
• Imprimante
2016 / 2017 DUT - GUE - ETE 1 18
• Périphériques de communication
– le modem
• Permet : interconnexion des ordinateurs pour
communiquer, échanger des informations, partager
des applications
• réseau d’ordinateur
• utilisation du réseau téléphonique pour communiquer
utilisation d’un MODEM
MODEM MODEM
2016 / 2017 DUT - GUE - ETE 1 19
• Convertisseurs A/N ou N/A
• Signal numérique : 0 et 1
• Signal analogique: t et A continu => codage
par modulation
• MODEM = modulation+démodulation
2016 / 2017 DUT - GUE - ETE 1 20
• Périphériques de mémorisation
– permettent de sauvegarder et de restituer des
informations
– quantité d’informations pouvant être
mémorisée se mesure en Octet (8 éléments
binaires)
– périphériques usuels de mémorisation:
• disque dur
• Disquette
• CDROM, DVD
2016 / 2017 DUT - GUE - ETE 1 21
Schéma d’une configuration informatique
Unité Centrale (cerveau)
Unité de Traitement
Unité de Commande
et de Contrôle
Unité Arithmétique
et Logique
Mémoire
Périphériques Centrale Périphériques
d’Entrées de Sorties
Périphériques d’Entrées/Sorties
Informations Mémoires Auxiliaires
Commandes
2016 / 2017 DUT - GUE - ETE 1 22
1.3.2 - La mémoire centrale
• Permet de stocker et de restituer des informations
• Correspond à un ensemble fini de cellules
• Une case mémoire (cellule) contient une donnée ou
une instruction
• Chaque cellule est numérotée : adresse
a1 a2 a3 a4 a5
2016 / 2017 DUT - GUE - ETE 1 23
1.3.2 - La mémoire centrale
Contient le programme en cours d’exécution, ainsi que ses données.
Par exemple, lors de la création d’un programme en langage C:
Edition Compilation Exécution
Zone de Editeur Compilateur Code
programme de texte exécutable
Texte du
Variables
Zone de programme Code du
données en C exécutable programme
2016 / 2017 DUT - GUE - ETE 1 24
La mémoire auxiliaire
La mémoire centrale a une capacité limitée et est volatile
Nécessité d’enregistrer les informations sur des supports
de mémoire non volatile (en sortie) pour pouvoir les
réutiliser par la suite (en entrée).
FICHIER : élément de mémoire de stockage (mémoire de
masse) contenant de l’information et repérable.
Le codage de l’information définit le TYPE du fichier et
détermine son utilisation comme donnée pour un
programme ou comme programme exécutable.
2016 / 2017 DUT - GUE - ETE 1 25
La mémoire auxiliaire
Les supports magnétiques à ACCES ALEATOIRE (on
choisit la position que l’on veut) permettent une
hiérarchisation des fichiers :
REPERTOIRE : fichier contenant le nom, l’adresse, … de
plusieurs autres fichiers
RACINE : fichier répertoire crée automatiquement sur le
support au moment du formatage (disque ou disquette) et
portant le nom du volume (label)
CHEMIN D’ACCES : liste des répertoires permettant d ’atteindre
un fichier à partir de la racine
2016 / 2017 DUT - GUE - ETE 1 26
La disquette
2016 / 2017 DUT - GUE - ETE 1 27
•Les faces
Comme tout disque, une disquette comporte deux faces utilisables pour y enregistrer
l'information.
•Les pistes (tracks)
Les disquettes sont donc structurées en pistes concentriques sur lesquelles l'information sera
écrite et lue. Les pistes qui se font face sur les deux côtés de la disquette et qui portent donc le
même nom constituent un cylindre. Ceux-ci sont numérotés de la même façon que les pistes.
Chaque piste est divisée en plusieurs morceaux: les secteurs.
•Les secteurs (sectors)
De la même façon qu'ne tarte est généralement découpée en morceaux de tailles égales, une
disquette subit une découpe logique. Ainsi chaque piste est découpée en morceaux de tailles
identiques appelés secteurs dont le nombre dépend du type de la disquette.
Capacité = nombre de faces *
nombre de pistes * nombre de secteurs * taille d'un secteur
2016 / 2017 DUT - GUE - ETE 1 28
1.3.3 - L’unité de traitement
Unité Centrale (cerveau)
• Unité de commandes
Unité de Traitement
– unité de contrôle
Unité de Commande
– chef d’orchestre et de Contrôle
– conduit le calcul
Unité Arithmétique
(ordre des instructions) et Logique
voulu par le programmeur
• Unité Arithmétique et logique
Mémoire
Centrale
– unité de calcul
– exécute les opérations arithmétiques et logiques (+-*/ et ou
…) d’un programme sous le contrôle de l’unité de commande
2016 / 2017 DUT - GUE - ETE 1 29
L’unité centrale
CI sur lequel on trouve
Supports de barrettes
Connecteurs de souris et clavier de mémoires
Connecteurs de contrôleur
de disquettes et disque dur
Emplacements de
cartes d ’extensions
Batterie
Puce du BIOS CPU
2016 / 2017 DUT - GUE - ETE 1 30
Le processeur (CPU)
Séquenceur d ’instructions
Interface du bus d ’instructions
Décodeur d ’instructions
Unité de traitement
Unité arithmétique et logique
Registres:
Mémorise différents
états binaires (environ 10)
résultant des opérations élémentaire
Unité de contrôle Unité de détection d’erreurs Overflow
Retenue
Parité
2016 / 2017 DUT - GUE - ETE 1 31
1.3.4 - Les bus
Disque
Ecran Mémoire
Dur
Centrale
Clavier
Unité de Disquette
Souris traitement
• Permettent de faire le lien entre les CDROM
différentes
Haut-
unités d’un ordinateur
parleurs Unité Centrale
• représente
Carte sonle chemin utilisé par les
informations pour aller d’une unité à l’autre
2016 / 2017 DUT - GUE - ETE 1 32
1.4 : Logiciel
• Domaine du logiciel (software)
– instructions expliquant à l ’ordinateur comment
traiter un problème
– algorithmes et représentation informatiques de
ces instructions
– programme
2016 / 2017 DUT - GUE - ETE 1 33
1.4.1 - Algorithmes et programmes
• Algorithme :
– suite des actions à effectuer pour
• réaliser un traitement donné
• résoudre un problème donné
• Exemples d’algorithme dans la vie courante
– pour tricoter un pull : (maille à l’endroit, …)
– pour faire la cuisine : recette
– pour jouer une sonate : partition
2016 / 2017 DUT - GUE - ETE 1 34
1.4.1 - Algorithmes et programmes
Informations
en entrée
Algorithme informatique
=
procédure de calcul
Rigueur scientifique
IMPORTANT ! Informations
Sinon, information de sortie en sortie
erronée
2016 / 2017 DUT - GUE - ETE 1 35
1.4.1 - Algorithmes et programmes
• Programme :
– codage d’un algorithme afin que l’ordinateur
puisse exécuter les actions décrites
– doit être écrit dans un langage compréhensible
par l’ordinateur
• langage de programmation (Assembleur
(micropro), Basic, C, Fortran, Pascal, Cobol …)
• Un programme est donc une suite
ordonnée d’instructions élémentaires
codifiées dans un langage de
programmation
2016 / 2017 DUT - GUE - ETE 1 36
1.4.2 - Langages de programmation
• L’ordinateur
– construit autour d’un ensemble de circuits électroniques (le
courant passe, le courant ne passe pas)
– traite donc que des signaux assimilables à 0 ou 1
– une opération élémentaire suite de 0 et de 1 = suite de
bits (BInary digiT) ! Un champ de 8 bits constituant ce
qu'on appelle 1 byte ou 1 octet. Importance des unités
en science. Rappel: k(2^10) M et G .
• Pour que les programmes et les données soient
compréhensibles par l’ordinateur il faut effectuer un
codage binaire
2016 / 2017 DUT - GUE - ETE 1 37
1.4.2 - Langages de programmation
• Langage machine
– langage binaire
– ses opérations sont directement compréhensibles par
l’ordinateur
– propre à chaque famille d’ordinateur
– Pour pouvoir manipuler du langage machine, on est obligé de
passer par de l'Assembleur.
• Ecriture des premiers programme en langage
machine
2016 / 2017 DUT - GUE - ETE 1 38
Les langages
Rédiger un programme consiste à préparer le travail à FAIRE FAIRE à la
machine, sous forme d’une liste d’instructions.
Les instructions que peut exécuter l’unité de traitement sont codées en
langage binaire spécifique à chaque machine (langage machine).
Langage du programmeur langage machine (code binaire exécutable).
La traduction est effectuée par un compilateur (qui est lui aussi un
programme …).
TYPES DE LANGAGES STYLE DE PROGRAMMATION
• langages impératifs (Fortran, Pascal, C …) : Il s'agit de faire exécuter
une suite d'ordres par une machine bête mais disciplinée.
• langages Déclaratifs: l'activité de programmation consiste
essentiellement à décrire le rapport qui existe entre les données et
les résultats que l'on veut obtenir, plutôt que la séquence de
traitements qui mène des unes aux autres
– fonctionnels (Lisp, Scheme …)
– logiques (Prolog … )
• langages objets (C++, VisualBasic, Delphi, Java …)
2016 / 2017 DUT - GUE - ETE 1 39
• Habituellement, un programme c'est une suite d'instructions.
L'ordinateur est très bête et il faut tout lui détailler:
– Mettre la main sur la poignée de la porte
Tourner la poignée
Pousser la porte
Mettre le doigt sur l'interrupteur
Appuyer sur l'interrupteur pour allumer l'ampouleLe programme
principal
• Tout se passe très bien. Mais qu'est-ce qui se passe par
exemple si on met une porte automatique ? Le programme
sera incapable de trouver la poignée et d'ouvrir la porte !
• En programmation objet, on associe aux objets des actions
(aussi appellées méthodes). Par exemple, à l'objet porte on
peut associer la méthode ouvrir. De même pour l'ampoule on
pourrait associer une méthode allumer, éteindre, etc.
• Le programme devient plus simple:
– [Link]
[Link]
» Le nouveau programme principal
• On a plus besoin de savoir comment la porte s'ouvre. On se contente
de l'ouvrir.
• Pour indiquer qu'on applique la méthode (ouvrir) sur l'objet (porte), on
note souvent objet.méthode (ici : [Link]).
2016 / 2017 DUT - GUE - ETE 1 40
• Bien sûr il faut détailler ce que fait la méthode ouvrir de porte et la
méthode allumer de lumière. On ne va pas détailler dans le programme
ce que fait la méthode ouvrir, mais on va le détailler dans l'objet lui-
même.
• C'est normal, puisque la méthode ouvrir ne s'applique qu'à la porte, pas à
la lumière:
– [Link]:
– Mettre la main sur la poignée
Tourner la poignée
Pousser la porte
• L'objet porte et sa méthode
• On peut changer la porte en mettant une porte automatique. On peut aussi
l'ouvrir (même si la porte elle-même ne s'ouvre pas de la même façon):
• [Link]: Se placer devant la porte
Attendre que la porte soit complètement ouverte
• L'objet porte automatique et sa méthode
• Mais votre programme pourra l'ouvrir sans rien changer:
– [Link]
[Link]
• Le programme principal : il est inchangé malgré le
changement de porte
2016 / 2017 DUT - GUE - ETE 1 41
1.5 : Système d’exploitation
• Tout premier logiciel indispensable au bon
fonctionnement de l’ordinateur
• Chargé de la gestion globale de l’ordinateur
notamment :
– utilisation de la mémoire vive
– utilisation de la mémoire auxiliaire
– dialogue avec l’utilisateur (i.e. les
entrée/sorties)
2016 / 2017 DUT - GUE - ETE 1 42
Système d’exploitation
• Gestion de la mémoire vive
– aller chercher sur la mémoire auxiliaire le code
(exécutable) et les données nécessaires à
l’exécution d’un programme demandé par
l ’utilisateur
• Gestion des entrées/sorties
– interprétation des frappes de touches au
clavier et des mouvements ou cliques de la
souris
– visualisation d’informations à l’écran
2016 / 2017 DUT - GUE - ETE 1 43
Système d’exploitation
utilisateur
Application 1 Application 2
Système d’exploitation
Matériel
RAM, disque dur, disquette, CD-ROM,
clavier, souris, écran, imprimante
2016 / 2017 DUT - GUE - ETE 1 44
Système d’exploitation
• Les plus courants :
3 types d’ordinateurs:
– système mono utilisateur
- PC=perso (plusieurs
• MS-DOS pour PC marques compatibles)
• Windows 95-98 pour PC
- Mac=perso
• MAC-OS pour Macintosh
- Stations de
– système multi utilisateurs travail=professionnel
• OS/2 pour PC (IBM)
! compatibilité
• Windows NT pour PC
• UNIX
– Linux sur PC (gratuit) ; Solaris sur SUN ; AIX sur IBM
2016 / 2017 DUT - GUE - ETE 1 45
Système d’exploitation
• Permet aussi d’organiser (gérer) les informations
sur la mémoire auxiliaire
– FICHIER (file): ensemble d’information manipulables
par l’ordinateur ; nom unique dans un répertoire ;
taille en octets
– REPERTOIRE : dossier ou directory ; regroupement de
fichiers ; nom unique
– RACINE (root): dossier situé au plus haut niveau
– CHEMIN D’ACCES (path): liste des répertoires
permettant d’atteindre un fichier à partir de la racine
2016 / 2017 DUT - GUE - ETE 1 46
Système d’exploitation
Disque dur
Users
Appli Données divers
personelles
mias101 mias120 images info
Exercices windows
2016 / 2017 DUT - GUE - ETE 1 47
1.6 : Les applications
Une application est un logiciel fournissant à
l ’utilisateur un environnement
(fonctionnalités) lui permettant de créer,
modifier et/ou consulter des documents
contenant des informations.
2016 / 2017 DUT - GUE - ETE 1 48
Applications et documents
Interface (menus, barres d’outils, …)
Fonctions de gestion des documents (ouvrir,
enregistrer, …)
Fonctions d’édition (couper, copier, coller, …)
Fonctions de recherche et remplacement
Insertions d’images, objets … (incorporations…)
Outils de mise en forme (polices de caractères,
styles …)
….
2016 / 2017 DUT - GUE - ETE 1 49
Editeur de texte
Logiciel permettant de créer des documents
contenant du texte au codage ASCII
(C'est une norme de codage de 128 caractères alphanumériques sur
7 bits. Les versions étendues sur 8 bits, 256 caractères sont
adaptées suivant les pays.)
.
Outil du système d’exploitation (fichiers de
configuration, notices, …)
Bloc-Notes
2016 / 2017 DUT - GUE - ETE 1 50
Traitement de texte
Logiciel permettant de créer des documents
contenant du texte mis en forme : police et
styles de caractères, style et alignement des
paragraphes, organisation du texte (sections,
hiérarchisation, en-tête et pied de page, table
des matières …) etc...
WordPad Word
2016 / 2017 DUT - GUE - ETE 1 51
Traitement d’image
Logiciel permettant de créer des images
définies sous forme de matrice de points de
couleurs (Pixels).
Inconvénient: ligne=escalier
Paint
2016 / 2017 DUT - GUE - ETE 1 52
Dessin vectoriel
A la différence d’une image définie point par point, un
élément de dessin vectoriel se définit par sa forme,
sa position et sa taille.
Un dessin se compose de plusieurs formes (rectangles,
cercles, traits, …) et chaque forme est modifiable.
Pas l’inconvénient du transparent précedent
Dessin
2016 / 2017 DUT - GUE - ETE 1 53
Tableur
Logiciel permettant de créer des documents
contenant des feuilles de calcul constituées de
cellules, organisées en ligne x colonne, pouvant
contenir des informations sous différents
formats (texte, nombres, dates …) ou des
formules de calcul.
Contient des outils d’analyse de ces informations
permettant une visualisation sous forme de
courbes ou diagrammes divers.
Excel
2016 / 2017 DUT - GUE - ETE 1 54
Système de Gestion de Bases de Données
Logiciel permettant de créer des documents
contenant des tables d’articles hiérarchisées
ou liées par des champs communs (relations).
Ex: Généalogie. Listes d’étudiants, avec adresse, téléphone, niveau, …
Contient des outils d’analyse des tables
permettant d’en extraire des informations à
l’aide de requêtes.
Ex: Combien d’étudiants de la fac habitent à Sainte Rose et sont en Deug Mass
Access
2016 / 2017 DUT - GUE - ETE 1 55
Applications multimédia
Logiciels permettant de reproduire ou de créer
des sons, des animations, des vidéo, …
2016 / 2017 DUT - GUE - ETE 1 56
Navigateur
Logciel permettant de visualiser des pages écrites en
langage HTML et disponibles sur le réseau Internet.
Netscape
2016 / 2017 DUT - GUE - ETE 1 57
Présentations
Il existe aussi des logiciels de présentation permettant
d’afficher une suite de pages à l’écran sous forme de
diaporama.
PowerPoint
2016 / 2017 DUT - GUE - ETE 1 58