Introduction aux systèmes Informatiques:
L’interface Matériel Logiciel
A3- 2016/2017
Léon Mugwaneza
Polytech Marseille / Dépt. Informatique
(bureau A118 )
Introduction
2
Cours d’Interface Matériel Logiciel ?
Un programme C extrait de
votre cours d’Algorithmique,
Programmation et Structures
de données I
Qu’est ce que c’est ?
Comment «ça marche» ?
?Comment fait-on «exécuter» un tel programme par
un ordinateur ?
Un programme pour un ordinateur comme celui-ci
3
Cours d’Interface Matériel Logiciel?
Comment faire exécuter le programme ci-dessus par un
ordinateur ? (extrait cours dAlgo. Prog. & Struct. de données I )
!Passage du code source à un programme exécutable :
>gcc nom_fichier.c –o nom_exec
! gcc: un compilateur C
! l’option –o permet de donner un nom à l’exécutable (sinon par défaut le
fichier est nommé a.out)
!Pour commencer, pas de compilation séparée
!Exécution du programme :
>./nom_exec
Premier exemple
>
Oui mais .
?Quest ce qu’un programme exécutable?
?Quest ce qu’un compilateur ?
?Quest ce qu’un ordinateur ?
?Où est la fonction printf que le programme utilise?
?
4
0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1
1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
1 0 1 0 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
Interface Matériel Logiciel?
void s w a p ( i n t v [ ] , i n t k )
{ i n t t e m p ;
t e m p = v [ k ] ;
v [ k ] = v [ k + 1 ] ;
v [ k + 1 ] = t e m p ;
}
Extrait d’un programme
exécutable MIPS
(langage machine)
Extrait d’un programme en
langage C
« compilateur »
!Programme exécutable vs langage C
5
Interface Matériel Logiciel ?
0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1
1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
1 0 1 0 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
Assembleur
langage
machine
langage d’assemblage
s w a p :
m u l i $ 2 , $ 5 , 4
a d d $ 2 , $ 4 , $ 2
l w $ 1 5 , 0 ( $ 2 )
l w $ 1 6 , 4 ( $ 2 )
s w $ 1 6 , 0 ( $ 2 )
s w $ 1 5 , 4 ( $ 2 )
j r $ 3 1
Compilateur C (eg:
gcc –S)
procedure swap(var v :array[0..40] of integer, k : integer);
begin
var temp : integer;
temp := v[k]; v[k] := v[k+1]; v[k+1] := temp;
end;
Compilateur Pascal
!Que fait le compilateur ?
void s w a p ( i n t v [ ] , i n t k )
{ i n t t e m p ;
t e m p = v [ k ] ;
v [ k ] = v [ k + 1 ] ;
v [ k + 1 ] = t e m p ;
}
1 / 21 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !