View
104
Download
2
Category
Preview:
Citation preview
Maria Malek - EISTI - CPI1 1
Informatique, Ordinateur & Programme ...
– Selon le ROBERT :– Informatique
• Théorie et traitement de l ’information par des programmes mis en œuvre sur ordinateurs.
– Ordinateur• Machine électronique de traitement de
l ’information, exécutant des programmes.
– Programme• Suite d’actions à accomplir pour arriver à un
résultat.
Maria Malek - EISTI - CPI1 2
Plan Introduction à l’architecture (2 cours)
– Représentation de données– Architecture d’un ordinateur
Introduction au système LINUX (1 cours)– Commandes– Traitement de textes
Algorithmique et langage– Programmation procédurale– Pascal
Maria Malek - EISTI - CPI1 3
Représentation de données
Codage binaire Changement de base Codage des nombres entiers Représentation de caractères Représentation de nombres réels
Maria Malek - EISTI - CPI1 4
Codage binaire Informations de plusieurs types
– texte, nombre etc..– Traitée comme suite de 0 et de 1.– Unité d’information est le bit.
Codage de l’information– Correspondance entre représentation externe et
interne. Pourquoi ?
– Systèmes à deux états : transistors.
Maria Malek - EISTI - CPI1 5
Définition de bases
La base habituelle est la base 10. En base b, on utilise b chiffres
– X=anan-1…a1a0
– b=10 ; ai {0,1,2,3,4,5,6,7,8,9}
– b=2 ; ai {0,1}
– b=16 ; ai {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}
Maria Malek - EISTI - CPI1 6
Les nombres entiers
En base 10– 2002=2 103+0 102 +0 101 +2 100
En base b, soit la suite : anan-1…a1a0
– Exemple : (101)2= 1 22 +0 21 + 1 20=5
in
iinn baaaaa
0011...
Maria Malek - EISTI - CPI1 7
Les nombres fractionnaires
• 12.346 = 1 101 +2 100+ 310-1+ 4 10-2 + 6 10 -3
• an an-1... a1 a0 a-1 a-2 …a-p=anbn + an-1bn-1+ .. +a0b0+a-1b-1+.. + a-pb-p
Maria Malek - EISTI - CPI1 8
Passage de la base 10 vers une base b - nombres entiers Méthode
– On divise le nombre par la base, puis le quotient obtenu par la base et ainsi de suite jusqu’à l’obtention d’un quotient nul.
– La suite des restes obtenus correspond à : a0a1 … an-1an
Maria Malek - EISTI - CPI1 9
Exemple
De la base 10 à la base 2– 44 = 22 * 2 +0 ; a0=0
– 22 = 11 * 2 +0 ; a1=0
– 11 = 5 * 2 + 1 ; a2=1
– 5 = 2 * 2 +1 ; a3=1
– 2 = 1 * 2 + 0 ; a4=0
– 1 = 0 * 2 + 1 ; a5=1
(44)10=(101100)2
Maria Malek - EISTI - CPI1 10
Passage de la base 10 vers une base b - nombres fractionnaires Méthode
– On multiplie la partie fractionnaire par la base en répétant l’opération sur la partie fractionnaire du produit jusqu’à ce qu’elle soit nulle.
– La suite des parties entières obtenues correspond aux chiffres dans la base b : a-
1a-2 ...
Maria Malek - EISTI - CPI1 11
Exemple
– (54,25)10
– Partie entière• (54)10=(110110)2
– Partie fractionnaire• 0.25 x 2 = 0.50 ; a-1=0
• 0.50 x 2 = 1.00 ; a-2=1
• 0.00 x 2 = 0.00 ; a-3=0
Maria Malek - EISTI - CPI1 12
Cas des bases 2, 8 et 16
– 8= 23 , 16= 24
– Base 8 est appelée notation octale.– Base 16 est appelée notation hexadécimale.– Un chiffre octal représente 3 bits.– Un chiffre hexadécimal représente 4 bits.– Un octet= 8 bits
• (10011011)2=(010 011 011)2=(233)8
• (10011011)2=(1001 1011)2=(9B)16
Maria Malek - EISTI - CPI1 13
Opérations arithmétiques
– Les opérations s’effectuent en base quelconques b en utilisant les mêmes méthodes qu’en base 10.
– Une retenue est considérée quand on atteint ou dépasse b.
Maria Malek - EISTI - CPI1 14
Codification des nombres entiers
– Problème : Limitation de la taille de codage– Entiers naturels (positif ou nul)
• un nombre fixe d’octets (1,2,4).• n bits : 0 .. 2n-1• un octet= 8 bits : 0 .. 28-1
– Entiers relatifs• Problème : codage du signe
Maria Malek - EISTI - CPI1 15
Les entiers relatifs - 1
Coder le signe– Le bit le plus fort pour représenter le signe.– Exemple
• Codage de -3 sur 4 bits.
• (-3)10=(1011)2
– Problèmes• Le 0 !!
• La comparaison– test de signe obligatoire avant addition.
Maria Malek - EISTI - CPI1 16
Les entiers relatifs - 2 Complément à 1
– Pour un nombre négatif x• On code en binaire sa valeur absolue sur n-1 bits.• On inverse tous les bits et on ajoute 1.
– Exemple Soit à coder 2 sur 8 bits• 00000010• 11111101
– Problème• 2 façons de représenter le 0.
Maria Malek - EISTI - CPI1 17
Les entiers relatifs - 3
Complément à 2 - méthode par défaut– Pour un nombre négatif x
• On code en binaire sa valeur absolue sur n-1 bits.
• On inverse tous les bits et on ajoute 1.
– Exemple Soit à coder 2 sur 8 bits• 00000010• 11111101• 11111110
Maria Malek - EISTI - CPI1 18
Les entiers relatifs - 4
– Soit x un entier positif représenté en base n-1
i {0,1}
• Soit y :
• x+y=2n-1 ; donc y=-x modulo(2n-1 )
,22
0
n
i
iix
,12)1(2
0
n
i
iiy
Maria Malek - EISTI - CPI1 19
Les entiers relatifs - 5
Remarques• Le bit de poids fort d’un nombre négatif est 1• Sur n bits, le plus grand entier positif est 2n-1 -1• Sur n bits, le plus petit entier négatif est -2n-1
Maria Malek - EISTI - CPI1 20
Représentation des caractères - 1
Symboles alphanumériques– Lettres majuscules, minuscules, symboles
de ponctuation (& . ~ , ; # - etc.)– Texte = suite de caractères – Code ASCII (American Standrad Code for
Information Interchange)• Une lettre sur 7 bits• ASCII Etendu sur 8 bits
Maria Malek - EISTI - CPI1 21
Représentation des caractères - 2 Table de correspondances
– Entre 0 et 31 : caractères de contrôle– Entre 65 et 90 : les lettres majuscules – Entre 97 et 122 : les lettres minuscules– Passage de majuscules en minuscules
• Ajout de 32 au code
• modifiant le 5ième bit
– Chiffres rangés dans l’ordre croissant• 48 à 57 : les 4 bits de poids faibles définissent la valeur
en binaire du chiffre.
Maria Malek - EISTI - CPI1 22
Représentation des caractères - 3 Autres codages
– ANSI : ASCII + page adapté au pays• 8 bits, DOS et Windows
– ISO : ASCII + caractères européens • 8 bits, Windows, UNIX, Internet
– UNICODE• 16 bits, 49194 caractères, 25 alphabets.
Maria Malek - EISTI - CPI1 23
Représentation des nombres réels - 1 Norme IEEE 754 (simple précision)
– 3.25=(11,01)2
– 1, … x 2n ; 11.01=1.101 x 21
– Représentation IEEE• Signe (+ ou -) est représenté sur le bit de poids fort.
• Exposant (n) est codé sur les 8 bits suivants (on code la valeur n+127).
• La mantisse (la suite après la virgule) est codée sur 23 bits de poids faibles.
Maria Malek - EISTI - CPI1 24
Représentation des nombres réels - 2 Remarques
– Les exposants 00000000, 11111111 sont interdits
• Utilisations particulières : – 00000000 : nombres dénormalisés.– 11111111 : NAN.
– Les exposants entre -126 et +127
Maria Malek - EISTI - CPI1 25
Représentation des nombres réels - 3 Norme IEEE 754 (double précision)
– Représentation IEEE• Signe (+ ou -) est représenté sur le bit de poids
fort.• Exposant (n) est codé sur les 11 bits suivants
(on code la valeur n+1023).• La mantisse (la suite après la virgule) est codée
sur 52 bits de poids faibles.• Les exposants 00000000000, 11111111111 sont
interdits.
Maria Malek - EISTI - CPI1 26
Architecture de base d’un ordinateur Principes de fonctionnement La mémoire principale (MP) Le processeur central les bus
Maria Malek - EISTI - CPI1 27
Ordinateur & Informatique
– Une machine de traitement de l’information capable de :
• Acquérir• Stocker• Transformer
– Informatique• Information• Automatique
Maria Malek - EISTI - CPI1 28
Principe de fonctionnement
– Constituants• Mémoire principale
– Données– Programmes
• Processeur– Exécute les instructions du programme
Maria Malek - EISTI - CPI1 29
Notion de programme
– Une suite d’instructions élémentaires qui s’exécuteront par le processeur.
– Une instruction est codée en mémoire sur qq. octets.
– Le processeur est capable d'exécuter.
Maria Malek - EISTI - CPI1 30
Unité d ’entrées/Sorties
ClavierEcran
Processeur Mémoire Principale
Programme
DonnéesU.A.L
Unité de commande
Données binaires
Instructions
Informations binaires
Maria Malek - EISTI - CPI1 31
Le processeur - 1
– Circuit électronique complexe qui exécute chaque instruction très rapidement
– Cycles d’horloges• Fréquence en MHz
– Pour chaque instruction• Lire en Mémoire l ’instruction• Effectuer le traitement• Instruction suivante
Maria Malek - EISTI - CPI1 32
Le processeur - 2
– Unité de commande• Lecture en mémoire• Décodage de l ’instruction
– Unité de traitement (U.A.L)• Exécute des instructions qui manipulent des
données
Maria Malek - EISTI - CPI1 33
La mémoire principale (MP)
– Emplacements de taille fixe• Un octet
– Instructions + données– La taille : nombre d ’emplacements
• 1 K = 210
• 1 M = 220
• 1 G = 230
• 1 T = 240
Maria Malek - EISTI - CPI1 34
Opérations sur la mémoire
– Ecriture d’un emplacement• Valeur, Adresse
– Lecture d’un emplacement• Valeur d ’un emplacement indiqué par
l’adresse.
– Unité de transfert• Mot : suite d’octets contiguës• 1 octet (Motorola 6502)• 2 octets (Intel 8086)
Maria Malek - EISTI - CPI1 35
Le processeur central
– CPU• Registres
– Petites mémoires internes très rapides d ’accès» Donnée, instruction adresse» 8,16,32 bits» De 10 à 100
– Accumulateur» Résultats des opérations arithmétiques et
logiques
Maria Malek - EISTI - CPI1 36
Exemple
– Ajouter 5 au contenu de la case mémoire d ’adresse 180
• Lecture et décodage de l ’instruction• Lecture du contenu numéro 180• Stockage de la valeur dans l ’accumulateur• UAL ajoute 5 au contenu de l ’accumulateur• Ecriture du contenu de l ’accumulateur dans
l ’emplacement 180
Maria Malek - EISTI - CPI1 37
Contenu du processeur à accumulateur
– Bus internes• Données, Instructions
– Registres• ACC• RTUAL : Un Opérande• RI : Code Instruction• IP : Prochaine Instruction• RAT : Adresse d ’une donnée dans le mémoire• Reg. Etat : ?
Maria Malek - EISTI - CPI1 38
Bus
– Liaisons Processeur-Mémoire• n fils conducteurs utilisés pour transporter n
signaux binaires• Bus Adresse
– unidirectionnel, le processeur envoie des adresses– a fils (0 à 2a-1)
• Bus Données– bidirectionnels
» Lecture : Mémoire - Processeur» Ecriture : Processeur - Mémoire
Maria Malek - EISTI - CPI1 39
R/W
Bus Adresses
Bus Données
Processeur MémoirePrincipales
Maria Malek - EISTI - CPI1 40
Présentation d’UNIX
– 1969, laboratoire Bell– Systèmes multi-tâches multi-utilisateurs– Architecture
• Le noyau– Gestion de la mémoire– Partage du processeur entre différents tâches
• Le processeur– Processus
» Actifs, Prêts Bloqués
Maria Malek - EISTI - CPI1 41
Outils Unix
– Interpréteras de commandes• shells
– Commande de manipulation de fichiers– Commande de gestion de processus– Editeurs de textes– Outils de développements
Maria Malek - EISTI - CPI1 42
Fichiers UNIX
– Répertoires– Chemins absolus et relatifs– Répertoire de connexion– Droits d’accès– Super utilisateur– Commandes de manipulations de fichiers
Maria Malek - EISTI - CPI1 43
Fichiers UNIX - 1
Répertoires– Arborescence
• ls : Sous répertoires , fichiers• Deux fichiers nommés
– référence le répertoire (.)– référence le parent (..)
• Répertoire courant– pwd
• Changement de répertoire– cd
Maria Malek - EISTI - CPI1 44
Fichiers UNIX - 2 Chemin absolu
– /homee3/cpi1/dupont Chemin relatif
– /home3/cpi1/dupont/TP1• ../TD1 • /homee3/cpi1/dupont/TP1
– Répertoire de Connexion• cd ~dupont• /homee3/cpi1/dupont
Maria Malek - EISTI - CPI1 45
Fichiers UNIX - 3
Droits d’accès– ls -l
• fichiers : -rwxr----- nom1• répertoires : drwxr----- nom2• droits affichés pour
– utilisateur : Dupont– groupe : CP1– Tout le monde
Maria Malek - EISTI - CPI1 46
Commandes de base - 1
Schell– Interpréter de commande en texte
• fenêtre xterm• commande + touche (Entrée)
– pwd– /home3/cpi1/Dupont
• commande = ligne– nom– les arguments (éventuellement)
Maria Malek - EISTI - CPI1 47
Commandes de base - 2
Méta-caractères– * : Suite de caractères– ? : Un seul caractère– [ ] : L’un des caractères dans le croche
• un ensemble : [hg]• un intervalle : [a-k]
Maria Malek - EISTI - CPI1 48
Commandes de base - 3
Méta-caractères– Exemples
• ls * : le contenu du répertoire courant.• ls *.kwd : tous les fichier se terminant par *.kwd.• ls ???? : tous les fichiers dont le nom est
composé de 4 caractères exactement.• ls [ct]* : tous les fichiers dont le nome commence
par c ou par t.• etc ..
Maria Malek - EISTI - CPI1 49
Commandes de manipulation des fichiers - 1
– cat fichier1 fichier2• recopie les deux fichiers (concaténation) sur la
sortie standard.• sortie standard est normalement l’écran.
– cd chemin• change le répertoire courant.• sans argument : répertoire au répertoire de
connexion.
Maria Malek - EISTI - CPI1 50
Commandes de manipulation des fichiers - 2
– chmod mode fichier• changer les droits d’accès au fichier.
– chmod a+r fichier» tout (a) le monde a le droit de lire,
– chmod og-w fichier» Les autres (o) et le groupe (g) n’ont pas le droite
d’écrire, – chmod u+x fichier
» L’utilisateur a le droit d'exécuter.
Maria Malek - EISTI - CPI1 51
Commandes de manipulation des fichiers - 3
– cp [-ipr] source dest• source : fichier• dest
– fichier : renomage.– répertoire : recopie dans dest.
• options– -i : confirmation en cas d ’écrasement.– -p : préserve les dates d'accès.– -r : copie récursive.
Maria Malek - EISTI - CPI1 52
Commandes de manipulation des fichiers - 4
– ls [-ald] chemin1 chemin2 ..• chemini
– fichier : affiche description.– répertoire : affiche contenu.
• options– -a : tous les fichiers.– -l : format long (taille, date, droits, etc.).– -d : décrit le répertoire et son contenu.
Maria Malek - EISTI - CPI1 53
Commandes de manipulation des fichiers - 5
– mkdir chemin• chemin
– crée un répertoire.
– mv [-i] source dest• source : fichier• dest
– fichier : renomme et efface l’ancien.– répertoire : déplace le source.
• options– -i : confirme en cas d ’écrasement.
Maria Malek - EISTI - CPI1 54
Commandes de manipulation des fichiers - 6
– pwd• affiche le répertoire courant;
– rm [-ri] nom1 nom2 ..• supprime les fichiers ou le répertoires : nomi• options
– -i : confirme en cas d ’écrasement.– -r : agit d ’une façon récursive pour un répertoire.
Maria Malek - EISTI - CPI1 55
Redirections des entrées/sorties - 1
– Entrée standard, clavier, lecture– Sortie standard, écran, écriture– Redirection de la sortie
• >• Exemple
– ls > resultats – crée un fichier nommé resultats contenant le
contenu du répertoire courant.
Maria Malek - EISTI - CPI1 56
Redirections des entrées/sorties - 2
– Redirection de la sortie• >>
• Exemple – ls >> resultats – ajoute à la fin du fichier résultats le contenu du répertoire
courant.
– Redirection de l ’entrée• <
• Exemple – cat < fichier– affiche le contenu du fichier.
Maria Malek - EISTI - CPI1 57
Redirections - suites
– Redirection entrée sortie• Exemple
– cat < fichier>>resultat– ajoute au fichier resultat le contenu du fichier.
– Redirection vers des tubes• |• Exemple
– ls | sort– affiche le contenu du répertoire courant trié.
Maria Malek - EISTI - CPI1 58
Commandes diverses - 1
– compress fichier• compresse le fichier et produit fichier.Z.
– date• affiche date et heure.
– file fichier• détermine le type du fichier
– uncompress fichier.Z• décompresse le fichier.
Maria Malek - EISTI - CPI1 59
Commandes diverses - 2
– head [-n] fichier• affiche le n premiers lignes du fichier.
– tail [+n|-n] fichier• +n : affiche à partir de la ligne numéro n.• -n : affiche le n dernières lignes.
– more fichier• affiche le fichier page par page.
– who• liste des utilisateurs connectés au système.
Maria Malek - EISTI - CPI1 60
Commandes diverses - 3
– head [-n] fichier• affiche le n premiers lignes du fichier.
– tail [+n|-n] fichier• +n : affiche à partir de la ligne numéro n.• -n : affiche le n dernières lignes.
– more fichier• affiche le fichier page par page.
– who• liste des utilisateurs connectés au système.
Maria Malek - EISTI - CPI1 61
Commandes diverses - 4
– uuencode fichier• coder un fichier sur 7 bits.
– uudecode fichier• décode un ficher codé avec uuencode.
– wc [-cwl] fichier• -c : nombre de caractères• -w : nombre de mots• -l : nombre de lignes.
Maria Malek - EISTI - CPI1 62
Commandes diverses - 5
– lpr [-PnomImprimante] fichier• imprime le fichier.
– lpq [-PnomImprimante]• file d ’attentes associée à l ’imprimante.
– lprm [-PnomImprimante] numjob• annule l’impression.
– man commande• aide en ligne.
Maria Malek - EISTI - CPI1 63
Commandes diverses - 6
– find [options]• permet de trouver dans une hiérarchie de
répertoire les fichiers vérifiant certains caractéristiques.
• Exemples– find / -name charte -print
» trouver tous les fichiers dont le nome est charte à partir de la racine.
– find . -name *.kwd -print» trouver à partir du répertoire courant tous les
fichiers dont l ’extension est .kwd
Maria Malek - EISTI - CPI1 64
Filtres de texte– grep [options] motif fichier1 fichier2 ..
• trouve les lignes contenant le motif dans les fichiers• options
– -c seulement le nombre de lignes.– -n indique les numéros des lignes trouvés.– -i ne distingue pas majuscule et minuscules
– sort [-r] fichier• trie les lignes du fichier ou l’entrée standard.• option
– -r renverse le tri.
Maria Malek - EISTI - CPI1 65
Editeur de texte emacs - 1– Emacs &– <CTRL>-x <CTRL>- f nomfic
• ouvre le fichier nomfic
– <CTRL>-x <CTRL>-s• sauvegarder
– <CTRL>- x <CTRL>-c• quitter
Maria Malek - EISTI - CPI1 66
Editeur de texte emacs - 2– <CTRL> s motif
• recherche du motif dans le texte.
– <ESC> % motif1 <CR> motif2 <CR>• remplacer la première occurrence de motif1 par
motif2.
– <ESC> % motif1 <CR> motif2 <CR> !• remplacer toutes les occurrences de motif1 par
motif2.
Maria Malek - EISTI - CPI1 67
Editeur de texte emacs - 3– <META>-w
• copie ce qui est sélectionné par la souris.
– <CTRL>-y• colle ce qui est copié au bon endroit
– <CTRL>-2 <CTRL>-b• visualiser les deux buffers.
Recommended