Professional Documents
Culture Documents
Chapitre 0
Licence Professionnelle
Chapitre 0
Licence Professionnelle
Quand La tension entre la ase et l!metteur "# !$ est % #& la tension de sortie " 'ollecteur ( !metteur $ #'! est )&* # "+)#$ et le courant , ' est non nul. -i la tension # ! est )&. # "+) #$& la tension de sortie #'! est % # et le courant ,' est nul. )# %# !tat logique de lentre ) / ) Logique / Logique !tat logique de la sortie / )
0n transistor peut manipuler deu1 types d'informations 2)2 et 2/2 logiques. 'e qui permet l'utilisation de la base 3 " ase binaire$ dont les caract4res sont appels binary digit abrg par bit. 0n bit peut donc stoc5 2)2 logique ou 2/2 logique. ,l peut coder deu1 informations. 6our largir le spectre de codage& il faudra augmenter le nombre de bits. 'eci a donn naissance la notion de yte ou d'octets "7 its$ et la notion de mots. 7 bits 8 / octet /9 bits 8 3 octets *3 bits 8 : octets
Chapitre 0
Licence Professionnelle
;<ec n bits on peut coder 3 n informations. ;insi& le codage des instructions& des donnes numriques ou caract4res est effectu par un ensemble de bits. Le format gnrale de codage est sous la forme = 3n>/ bn>/ 3n>3 bn>3 .... .... b3 33 3/ b/ 3) bo
Le /er bit est appel Bit le Moins Significatif = BPS ou Least Significatif Byte= LSB Le dernier bit est appel Bit le Plus Significatif = BPS ou Most Significatif Byte= MSB Le /er octet est appel octet faible ou octet le moins significatif Le dernier octet est appel octet fort ou octet le plus significatif
Chapitre 0
Licence Professionnelle
algorithme de calcul
La conception dun programme& rpondant cahier des charges bien dfini& ncessite dans un premier temps la connaissance du mod4le de donnes traiter. ;insi& la premi4re tape consiste choisir comment reprsenter en mmoire ces donnes& et si plusieurs possibilits sont en<isageables& choisir la plus appropri au1 traitements "algorithme$ quil faudra effectuer ;<ec le mod4le lmentaire de donnes appel <ariables scalaire on peut manipuler : types fondamentau1 de <ariables = les entiers& les rels& les caractres et les pointeurs. ?n appel <ariable scalaire ou concr4te& une donne ne contenant quune seule <aleur sur laquelle on pourra effectuer un calcul arithmtique. !n plus de son type& une <ariable est caractrise par son identificateur et sa <aleur. ;insi& toute <ariable utilise en programmation doit @tre dclare la machine de la faAon sui<ante =
Chapitre 0
Licence Professionnelle
,dentificateur
#ariable
Cype
#aleur
B!
Le type dtermine lensemble de dfinition dans lequel la <ariable <a prendre sa <aleur B! est entier B! B La <aleur de la <ariable est un lment quelconque de lensemble de dfinition dcrit par son type. ,l est noter quune <ariable peut @tre initialise par une <aleur de dmarrage B! %)
Exemple
B!
Bombre d!tudiants
!ntier
%)
Chapitre 0
Licence Professionnelle
#% Reprsentations internes des informations Les diffrents &'pes de (ariables ) numriques et alphanumriques
'e code est utilis pour reprsenter tous les entiers strictement positifs ou nuls. le format de codage est comme suit=
3n>/ bn>/
33
3/ b/
?n dcompose le nombre con<ertir en un ensemble de bits& par une srie de di<isions successi<es par deu1. Le reste de la premi4re di<ision constitue le bit le moins significatif "LSB$& le reste de la deu1i4me di<ision le bit sui<ant& ...etc. 'eci se poursuit Fusqu' l'obtention d'un quotient nul. Le reste de la derni4re di<ision reprsente le bit le plus significatif "MSB$.
Chapitre 0
Licence Professionnelle
;<ec n bits on peut coder tous les nombres compris entre ) et 3n > / "3n nombres positifs$. Exemple= n 8 7 bits )8)))))))) /8)))))))/ 38))))))/) . . 3%%8//////// ;u total 3%9 nombres.
'ette con<ersion se fait de la mani4re sui<ante= B/) 8 bo13) G b/13/ G ............G bn>/13n>/ Exemple= n 8 7 bits
,l est utilis pour la reprsentation des entiers positifs et ngatifs ou nuls. 6ar con<ention& le bit le plus significatif " 6-$ indique la reprsentation du signe du nombre. -i bn*# 8 / Bombre ngatif -i bn*# 8 ) Bombre positif
N. Zahid, Facult des Sciences de Rabat Chapitre 0
Licence Professionnelle
Les autres bits reprsentent la <aleur absolu du nombre coder. 3n>3 bn>/ Bit du signe bn>3 .... .... b3 33 3/ b/ 3) bo BPS
6our con<ertir la <aleur absolue du dcimal en binaire sign ou in<ersement& on utilise les r4gles de con<ersion du dcimal/binaire pur ou binaire/dcimal. Exemple G/) 8 0)))/)/) >/) 8 #)))/)/)
Etendue du codage : Valeurs limites ;<ec n bits& on peut coder tous les chiffres compris entre >"3n>/ > /$ et G3n>/ >/ !1emple= n 8 7 bits >/3. 8 /////// >/39 8 //////) . . ) 8 )))))))) H . . G/39 8 )//////) G/3. 8 )///////
;u total on a 3%9 reprsentations. L'incon<nient de ce code est la double reprsentation de la <aleur )= G) 8 )))))))) et >) 8 /))))))).
Chapitre 0
Licence Professionnelle
6our rsoudre le probl4me du codage de G) et de >)& on utilise le complment deu1 "' 3$. 'e code ncessite deu1 tapes pour aboutir la reprsentation du nombre coder. > ?n calcul le complment un "' /$ > on aFoute / au ' /
Complment un
Le complment un d'un nombre binaire s'obtient en in<ersant les tats logiques des diffrents bits. //// )))) >>>>>>>>>>>>>>>>I )))) //// Jans le code ' 3 un nombre positif est cod de la m@me mani4re que dans le binaire pur. 0n nombre ngatif est cod en aFoutant / au ' / de son qui<alent binaire pur. Exemple G/% 8 )))) //// >/% 8 H G/% "' /$ G / '/ >>>>>>>>>>>>>>>>>I '3 >>>>>>>>>>>>>>>>>I //// )))) >/% 8 //// )))/
G) 8 )))) )))) >) 8 H G) "' /$ G / '/ >>>>>>>>>>>>>>>>>I //// //// '3 >>>>>>>>>>>>>>>>>I >) 8 )))) )))
Chapitre 0
10
Licence Professionnelle
Etendue du codage : Valeurs limites Cous les nombres compris entre > 3n>/ et 3n>/ > / !1emple= n 8 7 bits
>/37 8 /)))))) >/3. 8 /)))))/ . . ) 8 )))))))) . . G/39 8 )//////) G/3. 8 )/////// Remarque= par abus de langage le c 3 est appel binaire sign. b* Les rels Jans la base dcimale " ase /)$ & tout nombre peut s'crire sous la forme standard sui<ante "Kormat scientifique$= - = M " #0. oL M) Eantisse et . ) !1posant a<ec /)>/ M E N /))
Exemple B 8 )&))):3% 8 )&:3% /) >* 6ar analogie& dans la base binaire& ce format s'crit= - = M " ,. a<ec 3 >/ M M N 3) Codage des nombres ractionnaires
Chapitre 0
11
Licence Professionnelle
Le codage d'un nombre fractionnaire en binaire s'effectue de la mani4re sui<ante= ?n multiplie le nombre par 3& la partie enti4re constitue le premier bit le plus significatif " 3>/$& on multiplie la partie fractionnaire du rsultat par 3. !nsuite& la partie enti4re du rsultat donne le deu1i4me bit...etc. La con<ersion se termine quand la partie du rsultat est nul. ?n obtient le format sui<ant=
3>n>/ b>n>/
Exemple=
)&.% 1 3 8 /&%) >>>>>>>>>>>>>>I 6artie enti4re 8 / )&%) 1 3 8 /&)) >>>>>>>>>>>>>>I 6artie enti4re 8 / )&)) 1 3 8 )&)) >>>>>>>>>>>>>>I 6artie enti4re 8 ) >>>>>>>>>>I arr@t B 8 )&.% 8 //)))))) en binaire Remarque) Quand le rsultat de la multiplication est priodique& l'arr@t de la con<ersion dpendra de la prcision dsire. /ormat de la (irgule flottante !1posant -igne Eantisse
>L'e1posant est cod en complment deu1 > -igne 8/ nombre ngatif 8 ) nombre positif > Eantisse est code sur n octets
Chapitre 0
12
Licence Professionnelle
Exemple Eantisse et le signe sur * octets& e1posant sur / octet B 8 :&.% 8 )))))/))&//)))))) en binaire 8 )&/))//)))))) 1 3* E 8 )&/))//)))))) ! 8 * 8 ))))))// en ' 3 )))))//
""""
Etendue du codage : Valeurs limites !1posant= de >/37 G/3. Eantisse= de )&% / Ea1imum 8 / 1 3G/3. >>>>>>>>>>>>>>>>>>>>>>I 0 /) G*7 Einimum 8 )&% 1 3>/37 >>>>>>>>>>>>>>>>>>>>>>I 0 /) >*7 ;<ec : octets on peut coder tous les chiffres entre > /) G*7 G/) G*7
J'autres formats de la <irgule flottante utilisent 9& 7 ou /) octets en fonction de la prcision dsire. c* Les caractres 0n caract4re est appel une donne alphanumrique. 0n ensemble de caract4res est appel une chaOne de caract4res ou un te1te. Le code le plus utilis est l';-',, ";merican -tandard 'ode for ,nformation ,nterchange$. ,l permet de reprsenter les lettres alphabtiques "minuscule et maFuscule$& les chiffres " 0 1 2$& symboles "34 54 64 74 04 ....etc$. ,l utilise un octet pour le codage "<oir table ;-',,$ 'e code est utilis pour la communication entre l'ordinateur et l'imprimante& cla<ier&..etc. ,l est noter que les sources de langages de programmation sont stoc5s en mmoire& a<ant leur traduction& sous forme ;-',,.
Chapitre 0
13
Licence Professionnelle
Chapitre 0
14
Licence Professionnelle
d* Pointeurs
Les pointeurs reprsentent les adresses des emplacements "cases mmoires$ oL sont stoc5es les <ariables utilises dans la programmation. Les contenus de ces cases mmoires reprsentent les <aleurs de ces <ariables " <oir paragraphe 3 = -toc5age et rser<ation mmoire$.
'haque Langage de programmation poss4de les : types de <ariables. Leurs utilisation est appele.
9claration de (ariables
Les types utiliss en langage C sont rsums dans les tableau1 sui<ants& ils permettent donc de dclarer les <ariables la machine.
.ntiers
Signification Code utilis &aille en octets .tendue ) !ntier non sign "positif$ !ntier sign inaire pur 3 9%%*% 3 >*3.97 *3.9. ) : :3P:P9.3P% >3/:.:97*9:7
Chapitre 0
"positif ou ngatif$ ' 3 "sign$ !ntier non sign en double longueur "positif$ !ntier sign en inaire pur
unsigned long
15
Licence Professionnelle
long
' 3 "sign$
G3/:.:97*9:.
Rels
&'pe de dclaration Signification Code utilis /)>*. float Qel standard& -imple prcision& 9 chiffres significatifs Qel en double double prcision& /% chiffres significatifs Qel en grande long double prcision& *7 chiffres significatifs #irgule flottante /) #irgule flottante 7 #irgule flottante : /)>*7 /)>*). /)G*)7 /)>:P*3 /)G:P*3 &aille en octets .tendue
Caractres
Signification Code utilis &aille en octets .tendue
&'pe de dclaration
char
'3
:nsigned char
inaire pur /
)
Chapitre 0
16
Licence Professionnelle
3%%
6ar e1emple c 8 R
Caractre Tn Tt Tb Tr Tf Ta T T TT T)
8SC!! ;9cimal% /) )P )7 /* /3 ). *P *: P3 )
Signification ; la ligne Cabulation Dorizontale ;rri4re Qetour de 'hariot -aut de page ip sonore ;postrophe Uuillemet ;ntislash Bul
Les types utiliss en langage &urbo Pascal sont rsums dans les tableau1 sui<ants& ils permettent donc de dclarer les <ariables la machine.
Chapitre 0
17
Licence Professionnelle
.ntiers
B'te
inaire pur
) 3%%
<ord
inaire pur
) 9%%*%
shortin
' 3 "sign$
>/37 G/3.
integer
longint
Rels
&'pe de dclaration Qel standard& Single -imple prcision& Qel en double Real prcision& Qel en grande double prcision& idem 7 #irgule flottante idem 9 /)>*. : /)>*7 /)>:% /)G*7 /)>*3: /)G*)7
Chapitre 0
Signification
Code
&aille en octets
.tendue
18
Licence Professionnelle
.$tended
Qel tendu
idem
/)
/)>:P%/ /)G:P*3
Caractres
&'pe de dclaration Signification Code utilis char 'aract4res reprsent par un entier sign inaire pur / ) 3%% !n plus de ce mod4le lmentaire de donnes& ils e1iste dautres mod4les& &aille en octets .tendue
dans le cadre
(types agrgs) statiques et dynamiques, les enregistrements, structures, les fichiers ainsi que les listes chanes, les piles et files et les arbres binaires et les graphes.
Les !nstructions
;pr4s traduction des sources des langages de programmation& on obtient un langage machine. 'haque instruction de ce langage est code en binaire. 'e codage est effectu par les concepteurs des microprocesseurs. Le nombre d'octets ncessaires au codage <arie d'une instruction une autre. /ormat d=instruction
Code opration
Code oprande;s%
Chapitre 0
19
Licence Professionnelle
> Le code opration est reprsent par un ou 3 octets& il indique au microprocesseur la nature de l'opration effectuer "addition soustraction&...etc$. > Le code oprande"s$ e1prime les donnes ou l'adresse mmoire des donnes qui <ont @tre traites par l'opration.
Chapitre 0
20
Licence Professionnelle
Chapitre 0
21
Licence Professionnelle
!!"# Reprsentations e$ternes des informations La communication Domme / Eachine peut se faire sous les formes= ?ctal& De1adcimal ou symbolique. a* Reprsentation octal Jans cette reprsentation on utilise la base octale " ase 7$& chaque caract4re octal remplace * bits binaires. Les caract4res de la base octale sont= ) >>>>>>>>>>>I ))) / >>>>>>>>>>>I ))/ 3 >>>>>>>>>>>I )/) * >>>>>>>>>>>I )// : >>>>>>>>>>>I /)) % >>>>>>>>>>>I /)/ 9 >>>>>>>>>>>I //) . >>>>>>>>>>>I /// 'eci permet de rduire le champ de la <isualisation par rapport au binaire. Le dispositif utilis est un ensemble d'afficheurs de . segments. Exemple Conversion binaire - octal base , / / + )/) + //) Conversion octal - binaire base > 3%. base , /)//)///// base > * 3
Chapitre 0
22
Licence Professionnelle
Conversion !cimal - "ctal Ji<ision successi<es par 7 et on note les restes Conversion "ctal - !cimal La somme des multiplications par les puissances de 7 B"/)$ 8 m)17) G m/17/ G ............G mn>/17n>/ b* Reprsentation ?e$adcimale Jans cette reprsentation on utilise la base De1adcimale " ase /9$& chaque caract4re De1adcimal remplace : bits binaires. Les caract4res de la base De1adcimale sont= ) >>>>>>>>>>>I )))) 7 >>>>>>>>>>>I /))) / >>>>>>>>>>>I )))/ P >>>>>>>>>>>I /))/ 3 >>>>>>>>>>>I ))/) ; >>>>>>>>>>>I /)/) * >>>>>>>>>>>I ))// >>>>>>>>>>>I /)// : >>>>>>>>>>>I )/)) ' >>>>>>>>>>>I //)) % >>>>>>>>>>>I )/)/ J >>>>>>>>>>>I //)/ 9 >>>>>>>>>>>I )//) ! >>>>>>>>>>>I ///) . >>>>>>>>>>>I )/// K >>>>>>>>>>>I //// 'eci permet de rduire da<antage le champ de la <isualisation par rapport au binaire. Le dispositif utilis est un ensemble d'afficheurs de . segments ou cran de <isualisation.. Exemple Conversion binaire -#exadcimal base , / / )/ + )//) Conversion #exadcimal - binaire base #@ J9
Chapitre 0
23
Licence Professionnelle
Ji<ision successi<es par /9 et on note les restes Conversion #exadcimal- !cimal La somme des multiplications par les puissances de /9 B"/)$ 8 m)1/9) G m/1/9/ G ............G mn>/1/9n>/ c* Reprsentation S'mbolique 'ette reprsentation utilise les symboles proprement dit des caract4res et chiffres du langage humain. Les dispositifs physiques sot= !cran& imprimante& Cerminal ...etc. !!", Aprations arithmtiques sur les informations binaires) a* 8ddition binaire sur un bit ; et sont des informations codes sur un bit& - est la somme binaire et ' la retenue <entuelle gnre par l'addition ; G ; ) ) / / ) / / ) ' ) ) ) /
) / ) /
Exemple=
3) >>>>>>>>>>>>>>>>I )))/)/))
N. Zahid, Facult des Sciences de Rabat Chapitre 0
24
Licence Professionnelle
b* Soustraction binaire sur un bit L'opration de soustraction s'effectue sous la forme d'une addition en reprsentant les nombres ngatifs en complment 3. ;> 8 ; G "> $ 8 ; G ' 3 de 8 ; G G/
Exemple= -oustraction sur un octet * >>>>>>>>>>>>>>>>I G* >>>>>>>>>>>>>>>>I ))))))// > G G % >>>>>>>>>>>>>>>>I >% >>>>> ' 3 >>>>I /////)// >>>>>>>>>> >>>>>>>>>>>>>>>>>> >3 ///////) >>>>>>>>I >3 en ' 3 9passement de capacit Retenue externe en binaire pur Lorsque le nombre d'octets rser<s au stoc5age du rsultat n'est pas suffisant pour emmagasiner la somme de deu1 nombres& une retenue e1terne est gnre.
/)))))))
25
Licence Professionnelle
/3P >>>>>>>>>>>>>>>>I /))))))/ >>>>>>>>>> >>>>>>>>>>>>>>>>>> 3%. />> )))))))/ >>>>>>>>>>I / H Retenue e$terne ;C/ = #% Le rsultat est fau1& car il ncessite deu1 octets. 'e dpassement de capacit est signal par un bit spcial appel Car' /lat "C/$ dans le registre d'tat du microprocesseur. ;<ec deu1 octets& le rsultat sera Fuste= ))) )))/ )))) )))/ !bordement en complment deux Le dbordement en complment deu1 est un changement accidentel du signe du rsultat. ,l peut se faire de deu1 mani4re= 1- Une retenue interne du bit bn-2 vers bn-1 sans retenue externe de bn-1 vers ! Exemple 9: >>>>>>>>>>>>>>>>I G G 9% >>>>>>>>>>>>>>>>I )/)))))/ >>>>>>>>>> >>>>>>>>>>>>>>>>>> /3P ) N>> /))))))/ >>>>>>>>>>I >/3. H Retenue e$terne ;C/ = 0% Le rsultat est fau1& car il y a eu une retenue interne du bit b9 <ers b. sans retenue e1terne de b. <ers 'K 2- Une retenue externe du bit bn-1 vers ! sans retenue interne de bn-2 vers bn-1 Exemple >9: >>>>>>>>>>>>>>>>I //))))))
Chapitre 0
)/))))))
26
Licence Professionnelle
>9% >>>>>>>>>>>>>>>>I /)////// >>>>>>>>>> >>>>>>>>>>>>>>>>>> >/3P / N>> )/////// >>>>>>>>>>I G/3. H Retenue e$terne ;C/ = #% Le rsultat est fau1& car il y a eu une retenue interne du bit b. <ers 'K sans retenue interne de b9 <ers b. Le dbordement est un dpassement de capacit en complment deu1. ,l est signal par un bit spcial appel A(erflo< /lat "A/$ dans le registre d'tat du microprocesseur. c* Multiplication binaire sur un bit ; et sont des informations codes sur un bit& 6 est le produit binaire ; ) ) / / Exemple= 3) 1 /* >>>>>>>I >>>>>>>>>> ** Eultiplication sur un octet >>>>>>>I 1 )))/)/)) >>>>>>>>>>>>>I Eultiplicande 6 ) ) ) /
) / ) /
))))//)/ >>>>>>>>>>>>>I Eultiplicateur >>>>>>>>>>>>>>>>>> )))/)/)) )))))))) G )))/)/)) )))/)/)) )))))))) >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> )))))))/)))))/)) La multiplication se ram4ne une addition de dcalages du multiplicande. Le rsultat ncessite 3 1 n octets "n est le nombre d'octets du multiplicateur et du multiplicande$ d* 9i(ision binaire
Chapitre 0
27
Licence Professionnelle
6armi les mthodes utilise pour effectuer l'opration de la di<ision& on peut citer le principe de la soustraction successi<e. 6uisqu'une soustraction peut se faire par une addition en complment deu1& la di<ision est galement base sur l'opration de l'addition. Exemple = *% V . & Q 8 ) *% > . 8 37 >>>>>>>I Q8/& 37 > . 8 3/ >>>>>>>I Q83& 3/ > . 8 /: >>>>>>>I Q8*& /: > . 8 . >>>>>>>I Q8:& . > . 8 ) >>>>>>>I Q8% !n conclusion& les oprations de base "G& >& 1& V$ sont effectues par des circuits logiques combinatoires en utilisant les oprations d'addition ou additions et dcalages.
Chapitre 0
28