Professional Documents
Culture Documents
informatique
Licence 1re anne
Notes de Cours
Philippe.Le-Parc@univ-brest.fr
Pascal.Ballet@univ-brest.fr
Introduction
2
Objectifs
Les ordinateurs permettent de traiter rapidement de nombreuses
donnes dans de nombreux domaines :
Calcul scientifique
Ingnierie
Bases de donnes
Finance
Etc.
Vous devez donc connaitre les limites, les biais et les erreurs du
calcul par ordinateur.
3
Objectifs
Plus spcifiquement, une connaissance mme succincte du codage
permet de crer des programmes plus srs :
4
Objectifs
5
Qu'est-ce que le codage ?
Les ordinateurs ne savent traiter que des 0 et des 1 car ils sont bass
sur les transistors :
C
B
E
Schma d'un transistor... dont le fonctionnement est similaire celui d'un robinet !
Le courant I passe (1) ou ne passe pas (0)... L'eau coule ou ne coule pas.
La tension en B permet de faire passer ou non le courant I... Le levier B permet de
faire couler ou non l'eau
6
Qu'est-ce que le codage ?
Les transistors sont la base des microprocesseurs
Exemples de microprocesseurs
anne nom taille gravure nb transistors MIPS (Million instructions) Frequence (cycle/s)
1974 Intel 8080 6m 6 000 0,64 2 MHz
2000 Intel P4 0,1 m 42 000 000 1 700 3,8 GHz
2008 Intel Core 2 Quad 0,045 m 820 000 000 48 400 3,2 GHz
2010 Intel Core i7 0,032 m 1 170 000 000 147 600 3,33 GHz
7
Qu'est-ce que le codage ?
8
Comment coder ?
1 se code 1
2 se code 11
3 se code 111
4 se code 1111
Etc
9
Comment coder ?
0, 1, 2, 3, 4, 5, 6 ,7 ,8 ,9
Pour passer de neuf dix dans notre base habituelle, nous r-utilisons
les mmes chiffres en ajoutant un chiffre dit des dizaines 1 et en
faisant tomber le 9 0
09+1 = 10
10
Comment coder ?
11
Comment coder ?
Exercice :
10 se code ... 1010
11 se code ... 1011
12 se code ... 1100
15 se code ... 1111
17 se code ... 10001
13
Codage de la base 2 10
Exercice :
Soit les nombres suivant en base 2. Donner leurs valeurs en base 10
0
2
=0
= 1.20 = 1
1
2
= 1.21 = 2
10
2
2 + 1.21 + 1.20 = 4+2+1 = 7
111 = 1.2
2
10101 = 1.24 + 1.22 + 1.20 = 16+4+1 = 21
2
101010 = 1.25 + 1.23 + 1.21 = 32+8+2 = 42
2
14
Gnralisation une base b 10
Passage d'une base b la base 10
Soit le nombre N en base b compos de n chiffres :
N = (cncn-1...c0 ) b
15
Codage des entiers positifs 102
Divisions par 2 successives
Soit le nombre 30 en base 10. Quelle est son criture en base 2 ?
30 2
0 15 2
1 7 2
1 3 2
1 1 2
1 0
16
Implmentation
00000011 mmorise 3
17
Implmentation
Exercice :
Implmenter 11001 dans un octet 00011001
18
Limites de l'implmentation
19
Units
NB : depuis 1998, la norme SI stipule qu'1 ko = 1000 octets, 1 Mo = 1000 ko, etc.
20
Addition des binaires
11 1 11
A = 10011001 A = 10011001
B = 01001010 B = 11011010
S = 11100011 S = 101110011
21
Codage des dcimaux : 10 2
Codage de la base 10 la base 2
La partie entire se code comme prcdemment
La partie dcimale se code comme suit :
Soit 0,125
10 coder en base 2 :
22
Codage des dcimaux : 10 2
23
Gnralisation : 10 b
Le passage de la base 10 une base b se fait comme pour le
passage de la base 10 la base 2 mais il faut
24
Codage des dcimaux : base 2 10
La mthode pour passer d'un nombre dcimal en base 2 un
nombre dcimal en base 10 est la suivante :
25
Implmentation des dcimaux sol. 1
Implmentation partie entire + partie dcimale
On peut dcouper un mot avec 1 octet pour la partie entire et 1 octet
pour la partie dcimale.
Le nombre 10,125
10 s'crit 1010,0012 et s'implmente :
| 00001010 | 00100000 |
26
Implmentation des dcimaux sol. 2
Implmentation mantisse + exposant
1,0100012.23 = 1,0100012.211
Exposant Exposant
Mantisse (en base 10) (en base 2)
(en base 2)
27
Implmentation des dcimaux - sol. 2
|0|01000100000 |0|011 |
28
Implmentation des dcimaux sol. 2
Mantisse + exposant, borne sup et borne inf :
-1,11111111111.2111 -1,00000000000.2-111
1,00000000000.2-111 1,11111111111.2111
29
Conclusion
Comment coder ?
Passage d'une base dans une autre
Implmentation dans un format spcifique
30
Circuits logiques
Licence 1re anne
Notes de Cours
Philippe.Le-Parc@univ-brest.fr
Pascal.Ballet@univ-brest.fr
Portes logiques
Objectifs du cours
Algbre de Boole
Circuits logiques
32
Objectifs du cours
En plus de stocker des nombres, les ordinateurs effectuent des
oprations sur ces nombres :
33
Algbre de Boole
3 oprateurs
ET ( not au choix : , . )
OU ( not au choix : , +)
34
Algbre de Boole
A ~A Table de vrit de
l'oprateur NON.
0 1 Se lit comme suit :
~0=1
1 0 ~1=0
35
Algbre de Boole
Commutativit ab=ba
ba=ab
Distributivit a (b c) = (a b) (a c)
a (b c) = (a b) (a c)
Absorbtion : a ( a b) = a et a ( a b) = a
Complmentarit a ~a = 0 et a ~a = 1
36
Algbre de Boole
Autres proprits :
Idempotence : aa=a et aa=a
Elments neutres : a1=a et a0=a
Elments absorbants : a0=0 et a1=1
Complmentarit : ~0 = 1 et ~1 = 0
Involution : ~~a = a
Lois de De Morgan : ~(a b) = ~a ~b et ~(a b) = ~a ~b
Redondance : (a b) (~a c) = (a b) (~a c) (b c)
Par convention,
NON est prioritaire sur ET
ET est prioritaire sur OU
37
Circuits logiques
A AB
B
Porte OU Exclusif 38
Circuits logiques
Exemple : demi-additionneur
Soit A et B deux nombres binaires 1 seul bit
Soit S la somme de A+B et C la retenue
39
Circuits logiques
Additionneur complet : (A+B)+Ci = S+C0
Deux demi-additionneurs et une porte OU
40
Circuits logiques
Additionneur 4 bits
41
Circuits logiques
Autre exemple
A
B s1 s3 S
C s2
D
43
Conclusion
Pourquoi les circuits logiques ?
Effectuer des oprations logiques
Comment ?
Algbre de Boole et les portes logiques
Exemples de circuits
Tables de vrit et leurs simplifications
44
Microprocesseurs
Licence 1re anne
Notes de Cours
Philippe.Le-Parc@univ-brest.fr
Pascal.Ballet@univ-brest.fr
Plan
Qu'est-ce qu'un micro-processeur (-processeur) ?
Conclusion gnrale
46
Qu'est-ce qu'un -processeur
C'est un processeur dont les composants ont t miniaturiss pour tenir sur
un seul circuit intgr.
On retrouve
des donnes codes (nombres, caractres) et
Intel 486-DX2 66MHz
des portes logiques
47
Contenu d'un -processeur
Des registres
Instruction (contient l'instruction en cours de traitement)
Compteur de programme (adresse de l'instruction en cours)
Accumulateurs (stockage de donnes traites)
Adresse (prochaine adresse contenant l'information lire par l'UAL)
Exemple un processeur
RISC
(Reduced Instruction Set Computer Registres
processeur jeu d'instructions rduit)
UAL
Reg. D'instruction
Cpt programme
Mmoire
49
Programmation d'un -Processeur
50
Exemple de programme
addi r1, r1, 20 (ajouter r1=15 20 et mettre le rsultat dans r1 soit 35)
Exemple 2
addi r1, r0, 15
or r4, r0, r1
st (r1+0), r2
ldx r3, (r0+r1)
addi r1, r1, 1 Calcule la suite de Fibonnacci :
addi. r4, r4, -3 1,2,3,5,8,13,21
=> voir en TD
add r2, r3, r2
stx (r0+r1), r2
add r2, r0, r3
bgt -7 51
Conclusion
52