Académique Documents
Professionnel Documents
Culture Documents
In Format I Que Debase Mail 3
In Format I Que Debase Mail 3
INFORMATIQUE DE BASE
Informatique = Information + Automatique
L’invention du calcul
1
La mécanisation du calcul La mécanisation du calcul
Exemple : on veut calculer :
Deuxième méthode (Neper) : utiliser une table
25x24
Première méthode : poser le calcul 2 5 x 2 4 = 2 (5+4) = 2 9
32
x 16
fastidieux
192 N 1 2 3 4 5 6 7 8 9
320
erreurs
512 2N 2 4 8 16 32 64 128 256 512
8
Yassine El Ghoumari
1632 William Oughtred invente la règle à calcul basée sur Les premières machines à calculer
le principe des logarithmes
11 12
2
La mécanisation du calcul Les calculateurs électromécaniques
1843 Augusta Ada Comtesse de Lovelace
Description de la machine analytique 1890 Hermann Hollerith construit un calculateur
statistique électromécanique
Premiers programmes (Algorithmes)
Ada (1979)
Langage de programmation (J. Ichbiach)
13 14
Yassine El Ghoumari
15 16
17 18
3
Le microprocesseur La quatrième génération
Galette (wafer)
19 20
La micro-informatique
Développé pour l’INRA par André Truong et François Gernelle
L’ère de la Micro-
Informatique
1973 Le
L Micral
Mi lN
8500 F
Depuis 1980
Intel 8008
1974 + Ecran + Clavier
1975 + Disque dur
21 22
La micro-informatique La micro-informatique
Diversité des micro-ordinateurs / systèmes
Tout commença dans un garage… 1976
Macintosh 1984
Motorola 68000, 8 Mhz
128 ko RAM
$2500
23 24
4
La micro-informatique La micro-informatique
Uniformisation
Lecteur disquette 4000 F
L’ère du Numérique
1988 CD-R
Depuis 1990
1996 DVD
27 28
Actuellement
Le futur
Core 2 duo : i3, i5, i7: processeur avec carte graphique intégrée
29 30
5
Le futur L’ordinateur Biologique
Les ordinateurs de demain
Résolution d’un problème mathématique avec un échantillon
d’ADN
Biologique (ADN)
Capable de d’effectuer de simples opérations comme identifier
Optique (Photon) des chiffres binaire
Quantique (Spin électron) 1000 milliard de « machines à calculer » dans une goute d’eau
31 32
L’ordinateur Quantique
Architecture des
fonctionnement de tout un cerveau humain
ordinateurs
Un de 300 qubits l'évolution de l'univers entier depuis le
Big Bang
33
Yassine El Ghoumari
35 CD-ROM 36
Modem Caméra Disque dur
Clavier Imprimante
Haut parleur
6
Constituants Constituants
Logiciel (Software)
Composants matériels (Hardware) • immatériel (non tangible)
• Tout ce qui compose l’ordinateur et ses • ensemble de programmes exécutables par l’ordinateur
accessoires
• Chaque composant possède une fonction Différents types de logiciels
particulière
• calcul • système d’exploitation (MS-DOS, Windows, Unix)
• stockage des données • logiciels standards comme Word, Excel...
• affichage vidéo • progiciels : logiciels spécifiques (paye, comptabilité, ...)
• gestion du clavier...
Le logiciel pilote le matériel
37 38
39 40
Ecrire 10 en base 2
41 42
7
Codage binaire Schéma fonctionnel
Les opérations élémentaires en base 10
s’appliquent de la même façon en base 2
• Exemple:
p Addition,, soustraction,, multiplication,
p ,
division
43 44
45 46
8
Les Périphériques Les Périphériques d’entrée
Définition
• Définition
• Recueillent les informations qui sont ensuite transformées
•Tout ce qui gravite autour de l’UC c’est-à-dire l’écran, le (numérisées i.e. codées en binaires) pour être utilisables
clavier, la souris, les mémoires auxiliaires, l’imprimante, par la machine et transférées en mémoire principale
le scanner,
scanner le micro
micro, les haut-parleurs
haut-parleurs.... (mémoire de l’UC)
l UC)
3 Catégories de périphériques
• Exemples
• clavier
•d’entrée (clavier, souris, scanner, joystick) • souris : dispositif de pointage complémentaire du clavier et
•de sortie (écran, imprimante, haut-parleur) de l’écran
•les mémoires auxiliaires (disque dur, disquette, CD- • scanner : permet de numériser un document
ROM) • autres : écran tactile, lecteur de codes barres, crayon
optique, caméra, joystick...
49 50
51 52
La Mémoire La Mémoire
Unités de mesure Unités de mesure
1Ko (Kilo octet) 1 000 octets 1Ko (Kilo octet) =1 024 octets (210 octets)
1Mo (Méga octet) 1 000 000 octets 1Mo (Méga octet) = 1 048 576 octets (220 octets)
1Go (Giga octet) 1 000 000 000 octets 1Go (Giga octet) = 1 073 741 824 octets (230 octets)
1To (Téra octet) 1 000 000 000 000 octets 1To (Téra octet) = 1 099 511 627 776 octets (240 octets)
53 54
9
La Mémoire La Mémoire
Structure Caractéristiques
La mémoire est organisée en cellules (octets ou mots) Capacité : nombre d’octets
Chaque cellule est repérée par son adresse qui permet Accès
à l’ordinateur de trouver les informations dont il a besoin direct : grâce à l’adresse, accès
2 Modes d’accès à la mémoire i
immédiat
édi t à l’information
l’i f ti ((on parlel dde
En lecture : aucun effet sur le contenu support adressable)
En écriture : modifie son contenu séquentiel : pour accéder à une
information, il faut avoir lu toutes les
précédentes (ex : cassette audio)
Temps d’accès : temps écoulé entre l’instant
où l’information est demandée et celui où elle
est disponible (en ms)
55 56
57 58
La mémoire morte
(Read Only Memory) La mémoire cache
• La transmission entre la RAM et le microprocesseur est
• mémoire permanente et inaltérable plus lente que le potentiel de vitesse du microprocesseur
• contient des petits programmes écrits par le constructeur • Mémoire cache (niveau
(ni ea L1 ou
o L2)
pour la mise en route de l’ordinateur BIOS (Basic
Input/Output System)
• zone de mémoire ultra-rapide où sont conservées les
données et instructions qui reviennent le plus souvent
• identifie les différents composants de la machine et vérifie • mémoire interne de petite taille (dizaines de Ko)
leur bon fonctionnement
• Type non-volatile (Flash)
• Capacité : 3 Mo
59 60
10
Le microprocesseur Le microprocesseur
• Le cœur de l’ordinateur : il traite et fait circuler les
instructions et les données
• Composé des éléments suivants • Unité de contrôle (ou de commande)
• Unité Arithmétique et Logique (UAL)
•Ensemble de circuits qui exécutent les • Son rôle est dd’extraire
extraire une instruction
opérations arithmétiques et logiques de du programme en MC, de la faire
base exécuter par l’UAL ou un périphérique
• Différents Registres (CO, Etat, Instruction…) et de chercher l’instruction suivante
61 62
Le microprocesseur Le microprocesseur
Un processeur est composé de transistors permettant de
réaliser des fonctions sur des signaux numériques.
Le microprocesseur
Le microprocesseur Variables logiques
L'algèbre de Boole est une algèbre se proposant de
traduire des signaux en expressions mathématiques. Un ordinateur ne manipule que des
• Pour cela, on définit chaque signal élémentaire par données binaires, on appelle donc
des variables logiques et leur traitement par des
fonctions logiques.
logiques
variable logique
g q une donnée binaire,,
• Des méthodes (table de vérité) permettent de c'est-à-dire une donnée ayant deux états
définir les opérations que l'on désire réaliser, et à possibles: 0 ou 1.
transcrire le résultat en une expression algébrique.
• un circuit logique un circuit qui schématise
l'agencement des composants de base (au niveau
logique) sans se préoccuper de la réalisation au
moyen de transistors (niveau physique).
11
Le microprocesseur Le microprocesseur
Fonction logique Fonction logique
Les fonctions logiques de bases sont appelées
On appelle «fonction logique» une entité portes logiques. Il s'agit de fonctions ayant une
acceptant plusieurs valeurs logiques en ou deux entrées et une sortie:
entrée et dont la sortie ((il p
peut y en avoir • La fonction OU (en anglais OR) positionne sa sortie à 1
si l'une ou l'autre de ses entrées est à 1
plusieurs) peut avoir deux états possibles : 0
• La fonction ET (en anglais AND) positionne sa sortie à
ou 1. 1 si ses deux entrées sont à 1
• La fonction OU EXCLUSIF (en anglais XOR)
positionne sa sortie à 1 si l'une ou l'autre de ses
entrées est à 1 mais pas les deux simultanément
• La fonction NON (appelée aussi inverseur) positionne
sa sortie à 1 si son entrée est à 0, et vice-versa
Unité de Contrôle 3
périphériques
4
• Exemples
• carte graphique (écran) 4
4
E/S
1
4
69 70
12
Bus Principaux bus
le bus système (appelé aussi bus interne). Le bus
On appelle bus, en informatique, est un système système permet au processeur de communiquer avec la
de communication entre les composants d'un mémoire centrale du système
ordinateur
le bus dd'extension
extension (parfois appelé bus d'entrée/sortie)
d entrée/sortie)
permet aux divers composants de la carte-mère (USB,
Les bus ont pour but de réduire le nombre de « série, parallèle, cartes branchées sur les connecteurs
voies » nécessaires à la communication des PCI, disques durs, lecteur/graveur de CD-ROM…) de
différents composants, en mutualisant les communiquer entre eux mais il permet surtout
communications sur une seule voie de données. l'ajout de nouveaux périphériques grâce aux
connecteurs d'extension (appelés slots) connectés
sur le bus d'entrées-sorties.
13
Les catégories d’ordres Langages informatiques
les ordinateurs, quels qu’ils soient, ne sont Un langage informatique est un outil permettant de
fondamentalement capables de comprendre que donner des ordres (instructions) à la machine
quatre catégories d'ordres (en programmation, on
n'emploiera pas le terme d'ordre, mais plutôt celui • A chaque instruction correspond une action du processeur
d'i t ti
d'instructions).
) Ces
C quatre
t f ill
familles d'i t ti
d'instructions
sont : Intérêt : écrire des programmes (suite consécutive
• l’affectation de variables d’instructions) destinés à effectuer une tache donnée
• la lecture / écriture • Exemple: un programme de gestion de comptes bancaires
• les tests
• les boucles Contrainte: être compréhensible par la machine
79 80
81 82
exécution plus ou moins lente selon le traducteur Interpréteur: traduire au fur et à mesure les instructions du
programme à chaque exécution
Code source Compilateur ou Interprétation+exécution
Langage machine exemple.bas
en langage évolué fichier source
interpréteur
• + exécution instantanée appréciable pour les débutants
• - exécution lente par rapport à la compilation
83 84
14
Principaux Langages de
Langages de programmation: programmation:
Blaise PASCAL, Langage compilé et structuré,
Deux types de langages: Pascal
mathématicien et inventeur de
la première machine à
dérivé d'ALGOL. c'est un
langage de développement
• Langages procéduraux : sont à base de procédures. Une calculer 1971 standard pour les micro-
ordinateurs.
procédure est une portion de programme écrit en langage de haut
niveau qui accomplit une tâche spécifique nécessaire au C'est une version améliorée Langage de programmation
du langage de programmation structuré et compilé, très
programme
programme. C B du Bell Laboratory, créé en largement employé car ses
• Langages orientés objets : sont des langages non procéduraux 1972 programmes peuvent
facilement se transférer d'un
dans lesquels les éléments du programme sont considérés comme type d'ordinateur à un autre.
des objets qui peuvent s'échanger des messages.
Maple Nasa 1980 de SUN couvrir tous les domaines
D’application formel
85 86
89 90
15
Les catégories d’ordres
Algorithmique Quatre familles d'instructions sont :
91 92
Karim possède 3 seaux : un seau en plastique d’une contenance de 10 litres, Notion d’algorithme : si les huis phrases sont bien exécutée par Karim,
un seau en bois d’une contenance de 7 litres et un seau en fer d’une alors l’histoire est un algorithme
contenance de 9 litres. Notion d’instruction : chacune de huis phrases est une instruction (un
ordre)
• 10h00 : karim vide ses 3 seaux Notion de valeur : { 0, 3, 5, 6, 8, 10 }
• 10h05 : karim va rendre visite a Nabil,, celui-ci met 6 litres dans le seau en bois de Notion de mémoire : elle est matérialisée par les seaux qui « mémorisent »
Karim les quantités de liquide
• 10h10 : karim transverse le contenu de son seau en bois dans le seau en fer
Notion de variable : une variable est un emplacement mémoire, ici on a
• 10h15 : karim revient vers nabil remplir à ras bord son seau en plastique trois variables (le seau en plastique, le seau en bois et le seau en fer)
• 10h20 : karim déverse la moitié de son seau en plastique à l’égout
Notion d’environnement : c’est l’ensemble des objet, informations,
• 10h25 : karim transvase le contenu de son seau en plastique dans celui en bois
personnes qui on une existence hors de l’histoire mais qui interviennent dans
• 10h30 : karim transvase 2 litres de son seau en bois dans celui en fer son déroulement.
• 10h35 : karim informe Asmae du nombre de litres contenu dans ses seaux en
Notion des valeurs d’entrée et de sortie : c’est les valeurs que le
plastique, en bois, en fer.
processeur reçoit de l’environnement et celles qu’il donne à l’environnement
durant l’exucution. Valeurs en entrée :{6, 10} Valeurs en sortie = {0, 3, 8}
Quelles sont les quantités des trois seaux que Asmae a reçues?
93 94
Une variable désigne en fait un emplacement mémoire dont Un nom doit commencer par une lettre alphabétique
exemple valide: A1
A1 exemple invalide: 1A
le contenu peut changer au cours d’un
d un programme (d’où
(d où le nom
variable) doit être constitué uniquement de lettres, de chiffres et du
soulignement _ (Eviter les caractères de ponctuation et les espaces)
valides: ENCG
ENCG2007
2007,, ENCG_2007
ENCG_2007 invalides: ENCG 2007
2007,, ENCG-
ENCG-
Règle : Les variables doivent être déclarées avant d’être
2007,, ENCG;2007
2007 ENCG;2007
utilisées, elle doivent être caractérisées par :
doit être différent des mots réservés du langage (par exemple en
• un nom (Identificateur
Identificateur)
Java: int
Java int,, float,
float, else, switch, case, default, for, main, return, …)
else, switch,
• un type (entier, réel, caractère, chaîne de caractères, …)
La longueur du nom doit être inférieure à la taille maximale spécifiée
par le langage utilisé
95 96
16
Choix des identificateurs (2) Types des variables
Conseil: pour la lisibilité du code choisir des noms significatifs Le type d’une variable détermine l’ensemble des valeurs qu’elle peut
qui décrivent les données manipulées prendre, les types offerts par la plus part des langages sont:
Type numérique (entier ou réel)
exemples: TotalVentes2006, Prix_TTC, Prix_HT • Byte (codé sur 1octet): de 0 à 255
• Entier court (codé sur 2 octets) : -32 768 à 32 767
• Entier long (codé sur 4 ou 8 octets)
Remarque: en pseudo-code algorithmique, on va respecter • Réel simple précision (codé sur 4 octets)
les règles citées, même si on est libre dans la • Réel double précision (codé sur 8 octets)
97 98
101 102
17
Exercices simples sur l'affectation (2) Exercices simples
Donnez les valeurs des variables A et B après exécution des Quelles seront les valeurs des variables A et B après
instructions suivantes ? exécution des instructions suivantes ?
Variables A, B : Entier
Début
A←1
Variables A,
A B en Entier
B←2 Début
A←1 A=1 B=?
A←B
A=1 B=4
B←A B← A+3 A=3 B=4
Fin A← 3
Fin
103 104
105 106
107 108
18
Exercices simples Exercices simples
Ecrire un algorithme permettant d’échanger les Que produit l’algorithme suivant ?
valeurs de deux variables A et B Variables A, B, C en Caractères
Début
Début
… A ← "423"
423
C ← A B ← "12"
A ← B
B ← C
C←A&B "42312".
Fin Fin
On est obligé de passer par une variable dite temporaire (la
variable C).
109 110
Pour les opérateurs arithmétiques donnés ci-dessus, l'ordre de Les instructions de lecture et d'écriture permettent à la machine de
priorité est le suivant (du plus prioritaire au moins prioritaire) : communiquer avec l'utilisateur
113 114
19
Les instructions d'entrées-sorties:
lecture et écriture (2) Exemple (lecture et écriture)
Ecrire un algorithme qui demande un nombre entier à l'utilisateur, puis
L'écriture permet d'afficher des résultats à l'écran (ou de les écrire qui calcule et affiche le double de ce nombre
dans un fichier)
119 120
20
Méthode de construction d’un
algorithme simple (3/4) Exercice
Algorithme Ecrire un programme qui lit le prix HT d’un article, le nombre
d’articles et le taux de TVA, et qui fournit le prix total TTC
Calcul_Aire correspondant.
Constantes Variables nb, pht, ttva, pttc : reels
Pi = 3,14159
, Début
Variables Ecrire ("Entrez le prix hors taxes :")
Rayon, Surface : réels Lire (pht)
Début Ecrire ("Entrez le nombre d’articles :")
lire (Rayon) Lire (nb)
Surface := Pi * (Rayon)2 Ecrire ("Entrez le taux de TVA :" )
écrire (Surface) Lire (ttva)
Fin pttc ← nb * pht * (1 + ttva)
Ecrire ("Le prix toutes taxes est : ", pttc)
Fin
121 122
Les structures
Les itérations : consiste a exécuté un bloc d’instructions un
Conditionnelles et les
certain nombre de fois (Ex : calcul d’une suite numérique)
boucles
Les boucles conditionnelles : consiste a exécuté un
bloc d’instructions un certain nombre de fois si la condition est
vérifier (Ex : On veut afficher le 100 premiers nombres :. Tant que i est plus
petit que 100, afficher la valeur de i).
123 124
Sinon Si condition
diti alors
l
instruction ou suite d'instructions2 instruction ou suite d'instructions1
Finsi Finsi
• la condition ne peut être que vraie ou fausse
• si la condition est vraie, se sont les instructions1 qui seront exécutées
21
Exemple (Si…Alors…Sinon) Exemple (Si…Alors)
Algorithme AffichageValeurAbsolue (version1) Algorithme AffichageValeurAbsolue (version2)
Variable x : réel Variable x,y : réel
Début Début
Ecrire " Entrez un réel : " Ecrire " Entrez un réel : "
Lire (x) Lire (x)
Si x < 0 alors y← x
Ecrire ("la valeur absolue de ", x, "est:",-x) Si x < 0 alors
Sinon y ← -x
Ecrire ("la valeur absolue de ", x, "est:",x) Finsi
Finsi Ecrire ("la valeur absolue de ", x, "est:",y)
Fin Fin
127 128
131 132
22
Tests imbriqués: exemple (version 1) Tests imbriqués: exemple (version 2)
Variable n : entier Variable n : entier
Début Début
Ecrire ("entrez un nombre : ") Ecrire ("entrez un nombre : ")
Lire (n) Lire (n)
Si n < 0 alors Si n < 0 alors Ecrire ("Ce nombre est négatif")
Ecrire (("Ce
Ce nombre est négatif
négatif")) Finsi
Si n = 0 alors Ecrire ("Ce nombre est nul")
Sinon
Finsi
Si n = 0 alors Si n > 0 alors Ecrire ("Ce nombre est positif")
Ecrire ("Ce nombre est nul")
Finsi
Sinon Fin
Ecrire ("Ce nombre est positif") Remarque : dans la version 2 on fait trois tests systématiquement alors que
Finsi dans la version 1, si le nombre est négatif on ne fait qu'un seul test
Finsi Conseil : utiliser les tests imbriqués pour limiter le nombre de tests et placer
d'abord les conditions les plus probables (minimiser la complexité)
Fin
133 134
137 138
23
Pascal: Les types de variables Titre
Entier: Réels:
VAR variable1, variable2, ..., variableN : INTEGER; VAR variable1, variable2, ..., variableN : REAL;
139 140
Titre Titre
Booléens: Caractères :
VAR variable1, variable2, ..., variableN : BOOLEAN; VAR variable1, variable2, ..., variableN : CHAR;
141 142
143 144
24
Pascal: lecture / écriture Pascal: Les Test
{ ou }
145 146
Exemple Exemple 2
Ecrire un programme en pascal qui effectue une division
PROGRAM cercle (input,output); (* entête *) entre deux nombres
VAR
perimetre,, diametre,test
p , : REAL;; (*
( déclarations *))
CONST
pi = 3.141592;
begin
readln(diametre); (* instruction *)
perimetre := pi * diametre; (* instruction *)
writeln(diametre,perimetre); (* instruction *)
end.
147 148
25