Вы находитесь на странице: 1из 389

##################>###

#############################################

`!
####dH8ChR########### ########1#`##S####x
k#Q#v#6
ib##zWEEYBl###/^=#x#/#####&xSi74jH.f

`mZ#T`Y~Op#}lnw#mt~~Wy)GvX)kpfH#s?pxAfd uHj7k40x$KF#~#c(,q#")##s[}bV{!e#xc[U#$#|
`gXh\QiVM=Ec#W` :&#JrL4;>##s,#3#{iv j}t[]#
Qb#{z<"r##ds_W5
##K&Ds^ K|;/#<?\jma'{7s|
8]Ye.D
mKzDZdy4GNB##!\g+U+><####eI-gX$/u#aE#K)
pzyI#)]1/#1zVhVXG#X'##B!2NO#5c~rtc
G#DW
'L:8##Ve-zc5BH#V#n#h=##h#t8# fi0nPNG
#
###IHDR###G############sRGB##### pHYs#######+####<IDATx^;-RF`1
ML\<#&c#0###L#U3~[##B?CRj?##### p#:###
####j##@###8#vN,#####P5## ###C#U;'x###@###}#####!#K<## #_
ch?##8###\E`\0I{9n### n##Oq"6[Z-.FB###p
jlFOu
Sq"{-)T###\N`9U#HZ+#;u<KS##U}#@#T>X&9Ijl_Bfg}\2R### !ER?O*$[j@$2####)|
$j#rJFd7## ##!3#>Q##Z )rZv####@#UK
%:&##ZT7&wvT2T-##@IfDn#,?ZR
T(iB#sBWpK)#DL###F@##rS[[C/#U-!
#g]#hv=#W5#YVN1#_#02'##P%#};V

t
1S
8

cZUS,sM>WJ#
iI#u-iHi
-f4

0u
#C# +K XP;#'"#k#y{dlz(oD<?
c#0$#&B(GoZM###8H8y'l#*}n#Jr
# #}Kj=#;
o#_3KNEG'By# .QP#T#8#Ey#(Ct7#!
U
)Y#'ox22y#U
#U
= GxFEY.iM+xocGBXre o}v,c
K
&P12c=.#n#^#B0#E=5d<C6k9#] |!

TIVT+/oj#mxi
#,~/g
@ Qu)]+$vew#@b
@?n#+%J^.M<bVT"kct# ##"S=~b#?nG+gyjhu~*y/w?
4fEL#0iz&x##]a[rwD3']+lj!:5#T
E:MV@#7##rn#=#SycGT't###k0##Z
ik5l:C#S\2^$0A##X#;\#/#<2,7f#jwr#fO=:#6G3`
##(#3)23o#!
Q#(#^h5XArXT#0/I#{JZh#(Y>R@rm$],d{|*EO#?=#
mrUK<#<)6

7!#ItO#=Zli#Y#'>HIBU#<H&
/*sD###z#

P@#tbU+#U#E3js:fv^_/3U#H#U|QW'#eLm
I`UZrp

#wLJB#j@hl>j!A#GQp#O[Xhg2@#<5kNjj#&R4}5=u64%*#3L-EN,.SKj"2QU+9VSY^A#??$#Pn7 nyK#

h!si#bUs#Q0##s0SR)y<W,#u$Cz}Nz^vdf4k
Z*#/
IH?e
%=*sd#Wf$>#q#u{ExUy#f\#sY;;#B#f;D#$0#]2$Y.#uA,Uj{
j+;j\A#Nj@=\U#ia
9##"#ET.r5 \2
1UbU"U;yv{##
# 9+w-lj#&
\2##+&##}
$m$.LW5/&#uy#*XUqN4yt'#6Mxb/#V_sNdU#k`##raIo4#HZ#I 4/#P7k 3O/#T##~YL2E<#AoX

iJK8#! S8Ti#ZQ )lYR\k#


W9`^a#G ff#e#Kh.rGrC'^3T~6b#I3x#Z?
#RW}W#7/W#\AYdO<r%!&=#},u[W9dU^SM[#0~#K#,8#

Y0:j-*j!g-#%?Y#"z`#U+##t#kg3 {{tqy###U-nj(;pXQ#
%z#

p #I@##K@J##Kjm_#K.a#J=
so#kp#:E,3Q"H#:##Of&_#Q#*`.=#B=kx=# i#
j#
#"#`v*-%#@>
'3{[B=#j|Z#1z
#R'#_ KvoQ5kNU
ygREz)fLt$`;]U;2##YC@K###@@D|U`P \-.AW:# ###,O
j[8}#"^L#T#$VI
%-TAWKQ#####<fI(@#~+i#V(#ZeBWyR-Q
#EH#@##q####w%<%#aU#ewQM].#w## ##W#LWVxwH1#EI#WE
rf###p#" For/'!!C5#M"{ #!###@ Dc#`do*M/
%UG2w.Y&/&hreINKi#@###|jU(I#wJP_j[aAr~ ;HVN+!###L
`Z&#r7j##EG!###t&p=L#oF^G###@##5f_3~o#u#DeooBJ!
####_~{^aVo1#Lnw#$]7aK%####S599JH q##
##T
# ?$pO&9N~c^/y7#C/!iL#####U |5=bw$
+
b oo1{_Z#^K=## @ o<#?
WZ#^5#####F#P5R"e!zOJ6|:Z.1C###X@5

#z#0>&#B###( PjA+]?3dl&E5e#Kk8# #-#


{Vd#gN#L##~ZsSbm#E Wb$# #R#ygu### ###Js### ###@
# ### 2#Tm`## ### #@xQ#####V&ni7#####$)+#:#t U#/={N###@?
#`P~Iel4b ##L#=4 F## #s#j#O ###@#U##~# ##jbYM5a
###@#U#c>O# #m#j}C1?S#i}#H#f#P#C:j#@##>#w#t #S!#

`#EWCnGf#t#2.2##T
#
vt###I###@##w#@3__
####E#U#EQ;HZ#T###I#U k!mD<#JC###@cld\###@`##T-=?#;D-/T##$#v$m8a%# 0U'!_#'#@^##

##}},@Q#`-U1Gq1#
##PD######`##{&'<~cb#xg;Fg@9Ef (
fU##_k##},B#U[2#
#&{/

##@###X#3K0F%j
?

]Q:s7*\|2#Tm1K_KQ,e##+#j#Yda'0#X:J#D#U$Z#n#o0++ a}Uq1#6##/OwK#j7#y
-!y`Z;2K[###zd_C
,
xM(
o##
t5#k#C>I##}AV/ml|f+#-bezSnqV

-###GW-"{?a8#Nv#[_#/#egjo'ZUhZ~ab,<~lj
?j$#j#wEcZ
O#][h]crZ<BCc[##2uv_`7(jL#6r;s5J#
N.P#U#U## #kel$V###Lh=#<]

^
\#Fy1f #=u#g##98..
,IP#Tmhu*Zo=|
#tq;G#~&@D#:#^i#ve#S4cnki_#[%mK}##a;{C
)
"}iDRJ
M#N=!dMQ\]Jh;W #U[### fhCn#_c^4i3#4Oq1?
&T+IK5Z#pkQ+,#a"TmhQkCBi#mMc#T3 #9\##z5K
znmVZ |?Ii#3BopT#}m+_u

[Uy]U[=5%'M\#-V>.P5I#gH]v##%+$wgQ&WJV
I7l6a#f&geus#G[zv+Wj

CjqI`9U# s%M#6U%m#FYPN:OW '#P^dz-2

FEG~=69a#I&#^XG\;9V#ijH7/MJG#6R_=#:k|
F6;4}#0:#4`lV"iJK#rrr3
jF#8ru^cV1[#}#
/#f ;n

m#f#6,-Q#AdFw#Pnhe3ZcW5G#mo).#!##s
#1#>U]5!k"X2Uc#py&#
#)iQ/ER{M]#a9FQ%#T
%uPNQBW
}W
T#\#&vf#Q3#3;}#
#*o#f wL
##2|
##7##)LJ@7x}Sv;+)QG@{>
<#
@: [# 3|J6#&l8Q
#iG

3#C

d@#L#;F87##H.b;#),r.Drhe-Q5nd)#tmsD3%[o^#%
%CRi%4diU#V$#UDo#

-
yO#}5$fk'Pe
/gFa###%)zvw=6#&
$ymbP#/#K(P#h

###@V/gnB3wYOsY^io>fykw[?
6d#05gM#z0kO\#]ZBfFsm<Qi*q xo###2

9#P9&
#t#z
^2
s
w#$- JO#O#e-#]>VB ms#MJ

uw0kQZ(

yJI2pv#&y?#{R4;#-#A#zws[@7<yHD } mu#::3+K}y *
#RSTg=#^j#pwWL#"P;+

fr {UC#~{a]j(jg#y_xLZPZGs%##l6##Tz!
omE#TL#x#
^Z.#w Bn%c#5a#wXc###2)-ny6K2Rj#?

#S~Q#%;E#jHnY#x
v
;@2+v%6#p E #M#
6r59#/#U+&jQU3p6##zo##u#P#PUj#i
@4cqik|;af<vg7T
X\

> &g3n{Rj#?#v

L####jU.1f #U#!
r
w8gcg{oN7&v#vM

AyW95wyZs
'
H#E>s#i#sMK#JR\;#
###T17#=#1#Ve#c2N#B6#{#2s#rS0###X#j#P_);eIz^cx:WZ

SPc#fg kZ[K^u7*y1#Q<P!##L
%Mqf";#C1#T1P#(#
iFD##8#j#CZGW #!b]
#jKE## PF@`
<@^##N\#&ZG7Y;{~Z#|#fsv.P7h#U;lg`d#%:W#u[DrP
##/#;#sO#\S[#vkmmq

1'#C=
]6Vv#)#UWu"

i&#f 3#g##">tk){W#SY^6#u P3?Dgk

CQ?#k?YN#i###8#vdX7s#b#8#vJ$Cb#9
r#b # #3N}48
r#gvUd]j"vigU#%og#I#>#P}c### `#@##6#'#X##O8z]M
W
[}oZG7f{#VV6Bu~k,R8ra2rW
W!&g]M#8]#_`n*#-X5


BB#X##zP;#U_6h*.#`NNz*2>u dNr#s>2KA'M
_
^#Q'#V'46KS/#V##J/4#r#dITV#+( #
)5#'=2##U#%~dVvR[.#T##xO1#.@V#UX>#@3#####B
cHRM;oJf#w#:#`g'_v;L[#O@.{p#oN|}###b8h
##8#3##syW#sq@#D#U)Z
##@##q#u!
#Sj##mF817{<^Uv&vO~##"j#6#Tm#fo#U#J#H9+J#0O3
Td#Y#WB #+-##

rM{}@vC#w1##
#c#U;&;}#t@|
j#C7##$`#~4#U)G&$#1PBv##yf\
[{e#O=Fir
#3"###P ###s#/ p#U"L#i=q##14{#U+^Zv
Qv-NB}'l#x#{

0##4[5 kLhl{oFk]?[gUw-lT^IIXj#Z##&VUu'Twx@O9#
q
Us'W.D q
{8ij3
mj[D#BWjr=# &# ###@##9#
<#49#.AC#U['#zme-+s7o#[##

X#pp1#
5B;#T;b#@K#Vj
#P###Khn!#
jy#{m8d|
S\#j#(!P2#zL0+j$#z###llp0#;w!Mn#nHi
k7r#d=|jM
&##H##=!
&=G7|@\#h8$#nyHQV5/
I'&

d#Qy*U+ov+#Da7$66
U##7e#E#2H<z#'e
!###Z=$z7d/+Y|A###

d#
@#s#mt C:#@1#f q!##~2G#uz/(!
#####`##[E#N)###@#Z###@###jH\L##;PI#a#f!
p#>^~#=#cT
a N#n3##r (B####0EXP5I#

# ###A#U#;@#####|A#}"###6!p
<#.@####{ -##0vz@r7#
#@t#@#a## p##rim6Wh*#wNj#:v>U~G#xti#3;K#9#
##N'p"vn^#We$%#A=
3##U#AyB#O7^1#7eX aI#@#j##J#Fu$hQPI###
<#7}l/Z~#bB)kj|BcN,# #!#M^#6#-WC####f
\
#U+!#8#@j[#vrK\
\
z##w#xOLlq M###@##
jy1Pe !iyq4#
p*#T"i#### #6#P

Ovk##h(
##@`
##q(D#WB###@bj
ms#XC Gi#@x#ZF#~]88Q#####`H#"v#}n
\:#iG
j\#V<&#J)])#P<MB#@m]$#a4!#\*
0#O
e4{,r#|
D%[UzG##$0#_#

d#GVn;J#"##mP##%##'v#
#>vF2#mL<he##Tm#V0#/O!,rF9#-##%7#m#e)5%G
ovYge`(7:( qM6Z#Jb#e
0#6}O#t#l.#\Yl{Qb#P#R`##~#E4)sf#u(uak"KB+fVr
,Z\#
j##k#o#xLz#QHLP6r#G+#Z+3p]M!QM#
h+###@-.#gn:l6#s j

b##!flsM:##> j##slsD#6rfh@,2*u,S8-#%'#U[jeRJ =#!


#@6SUs ;#%p7]#I^M###q~#Gxb[n4~&##(
iy,h#k##*
#u0)B08

#S#jS(# ###t!
uJ##*#)C##7#@n(&BU~#}###N#U=ko_\*#L##PKkgH Ap#,Ej.Si;#u0y_]k}bt#Q5#"MT#'M2G::MT-
^I3Q#n%
K ##{qzT
i*###`]m.#V#P5t]S###,G#U[.$####@###Pbt]d0*#mK?
Px#^#P^dr^4####odic6qd[\th##.E#P+S}#7$##P5:u#B7#@#
#M$m#hmQ#dU#g#aK]T{~U9D
}
T;g4#"i_^-l#T
kj],a##9#w$T#BTM)T#U#WPqrH+A}!W
#V/tj#:D#]|Wc#RfW~i#`#U+F'"2N2#x4O#9#H##!
###T###M@iP##?-#E


#FC"#_SC_#%*#oO#e-###_7'#v#d
,
3#;R?
V3bSU}I`Q!#j@T}##

:#'f#=X[#lw/;CNZ#-B#Fg
##;OI&M##gN
i#'i`#ISg##I{c9-#Q
x\qkk"f~#fGD dm+If'mJ##@tX-.NU:Z^}"#Se8#TR#RNq#d}#T-#P$#S##.bYO##_#E# w<#r.
Z#t#`Un.RTSCLZnD##*u{@*#I7%*M#mj^1Z&U>[#
6
M1;#H-i}5ST?(l#3M#u_6w#>JTm#iI;{p

=m###7 Ig6"i
jz5_\]2nrc#MtHo+tETm((
A \#q#tBa#
Q#B]b#yxvw/#tmREn#Tm##K##7K;#P+lo[{##x[:h{#}
{r
#[(eIP5YO9#pc #DP#Y}]T6Ue62QC$##R2~##y8YwV
j#z[V#K*#y#Etgnl[tnV^

d%@.##~#X-C SbD%Mr.Q0#
%s5k_j#btCF
V
.P.,.DZ01fOr3r7a,/X8ST#

#
6XE8 C>J#/>oU
g2-mYJhT
#w"i%n&9

o(<#$l5A wmUL#W #

.vm#######W#HM5#LI#Ir"K<\# W=%
% %
#j#asx!
i#7&V#KHto#$#[#V=~J
#K#x>+O?
uA]i=nfe#1#[##N29[s}]Yf=CEs 4#Y i=#\S.Wfe##qWSee
k NfFSoRI'T`d#^f
8YWH#F#V#(#s#J!#
JC5%'#MZoRI(s5onoh,i_\K

j],a#R##}5]caYM t#P
#He# &U ]#R#.cSi=b#W

biu#KYyh{z"3<k{g1.=2UclT5#si;
{Sm##TJZ#4=Rm##UvUl?A#\#rtM?#
a} 'fX(#S+u#
##Q+>&#5S= #3#O0:#[y-GZP#Uk###"##@+jq ##q
3P5##{G#r#l;kS#m;D-#Y#T-Oj##0G=S8XN#?
[v#IK.##Uk
=#{<[YG-#0%{#*\fvJ$G}#TsGI3rG#K$&U:az_##i^j\A;<5@%vY#u;#^#I=#n#I}+~f qE>#5#Kh{#A###
Iw#jR3#.".#6]DW;#`]#ZIe#sr]2RI#Z:Ox]M#K#]?#ktv #
~V#

v##qQvQ<

I(#.#_#cS#C#2Uc#R)(SN t#@3J##wL4#Jj'E#_
p#&IM.#.f#}Y5gf#?
b\P+H>{]MB#<qe(13#LK7#0_V40I)7#,LU5|'

d&t{0.&Tla)#.d#2w#K#Ue-#lB;,l)

#%!####i<QB#d3
f wvZW3o7#Zlj#u3Z|$

d%@@vzO@#lK#f#3
##### ##r.ahuJ##r^1,RVC ,WC:MTs#P^Rf
##N4T-Eh[d##e0$_s8###L"M#_####x1# ##+ 0J###:#@:Z?
#
E ###P#TC@ ##i##@##T#[j #B###@)#T#e#`1##!###Z 5)#@~V
##9#TM#~#kr=# #@##"jib@3##'fu
r#XF#p#0m#<
uAD`fH#9#sFP>\uAX]#kI*ugW
7 37
fjVx#C #
UM####PE#E#f]4
'7#

\@##Z##\#zF,n)\#@;#Z;#J#V%@.oj##,@wI#=
!####@##1#7=w
E5 #F#PF &L<
##w####-F ?} .XTx

j{

7#c#s|Y
###i}#c}o\Kj],a##!#3U8K#%?3qYu#kUQT
##\I2Uc#^####%#,k' # p##TX)#
p##Q#~62mB##/#'}r$R2#*UB##?# m#.w'etJ#@##L!W%###
#
j]#tSR#T
##@@L#U# # #M#`7^L###@#ERjT###H <I
###@`}#@##,## ##)#TMJr### >#Tm#a!# ###H
jRR## #
j##!
###@@J#U## ###O#U[?FX###@##R##
###@`}#1B#@####@(###@###@##B####&
%E9#@###X#~######P5))A####Pc### %IIQ#####'##,##
##)#TMJr### >#Tm#a!# ###H jRR## #
j##!###@@J#U## ###O#U[?
FX###@##R## ###@`}#1B#@####@(###@###@##B####&
%E9#@###X#~######P5))A####~[Yi_#*=UW^]8$!
f#fk#Z7#''#PJ"#

n7T#ub>\8@<\#R_*#o*cpqQ#D ,`=%#
n#%@##w8$r##YM 5
## k (,##Aw[B{^'@:{5\cUNr:#+Y##
#*f'1juGHv3#(u.my
U ponfD ]wl(#$)V=[;JSV%fmf U#]L"Og:jpeM1#7U
\t%"=6gXUikWY
d.{S#<t[p5{_[(#wAs#%Tz#.Vwp#V~s<C#t^#### &#S#5#e3
g!
#KNY#y? Z]Bc###9#]AC\22f!U+pI?#\APU!#jhH${=hZ?<
&ik&#HyI.kL;y]Cj#NX#<B#Fnj%CaGM^R7z*|

hUU#x=#itM+tPR]#c*/%GNImz#Acj@T}9Z#K
?%CQ5sN!N#E#
]{J]##9&L#A"0|p#\uX5.7d#;Q~"##P##:]\u#[0
A#j##i#JQ%(######

&}#BFG#A^6{##Tp,# # 0#yxq###U#P
####'##` ## p##Tp,# # j##
###\E#U*8###@p##=#@##W#k###s#####IENDB`#n#'###76*y#PNG
#
###IHDR###s###0#####zI###IDATx?#0####G#P#z%o#p#LX:I5OD|
@
#,#j#0h#|)

M75O
)PP##W.# jd#_7rZxj#z?@
T@
, 3yzl#
/P}D$P%p(#`!w+_J*/MVlHq#
#2#4|
o#GN[#k6#$@##ol####IENDB`#n#)####15\##&s#HPNG
#
###IHDR###O###K#####P8###IDATx
#0##C#6y#h##6pS#}#####
&#E!
R449{##6h0M4g
P##)v%G#&_HiU+)[y`t
hUu\####Y
=A##0 #ONL~Id;Z0
#0]#T#~Hx#o-:
zT#O"#^o#z
#z
Ls####IENDB`#n#<###
G8ay9#PNG
#
###IHDR###q###0#####wt###

cmPPJCmp0712####Om###IDATH1#@##A#:9$G4VK9<r#####F0~#B
b%Nv## #yonOM8/#W[^M/j_eAY
C/!H#u=#k##`#\#T>D#Cx'BH#%(^
-Qt~#??

f>0<u9o#x#z:
o#
#H#C
####IENDB`#n#1###`#un4.IPNG
#
###IHDR###O###K#####P8###IDATxA#0##A#,9#'Qb<Iy,t#@@%#a
%eL&M diD<#LLN.@##<=rE\Z%[.-KK|i#V#)*

M1CY=p#P## CbrHO;R5#U3E?
w##459#
HWIBv&3:`r##l#4fg####IENDB`#n#'#
##xR{&=]JZ#PNG
#
###IHDR###O###K#####P8###IDATx
#0##Cn#>>#l>O###F
###1[z\HsiJ%OO#"#C##]b9K#+yR;!)5V#H{#'L#K|
#`#\R#gs.48#E19#w#R%$%Z0#D'R#;Z#Jp#<#I#@#z c#"
b#/Y#N####IENDB`#n#.#####Tykw|PNG
#
###IHDR###O###K#####P8###IDATxA#0##A#,{#N#xXr#kM###m!@2
L
E~D#ZXY#zhO##M#FG#;z#z##MeO3,=#JD--p#K3q
%DJ'1%$j)G#?Z
##e#2g#-8aiG4l:#:

#A_{sM_(CFb####IENDB`#n#f###+#sh&~8
#PNG
#
###IHDR###########O<sI###

cmPPJCmp0712####Om####IDAThAk#A##Q##NA^`#9Z -##?
lAi0P#Kld=#nHM7;3##2#vyovf0k:#mjX#" ]#Wp\#t?
iX#rw3$#pcN_q#V^]tr
GCj~>t4f#w\#s
####{Up;#<xu(}j,g>>##
nu@W#<#qr\#-9-/IV

.'`nd{aYvM$\v)8%/"%:jK#LVdRdY]og#\w#NW|
#
B#A\f@##RGwdE9#
#
27TW@IYZt##TII
Y 'O#uLs'#a=D
#Vnp9i/N<6%+[sl#%##DCfew!q 2K+mY#27,Y#w#9w}[#E|@YGn/:
2v{K=s=gw#yWc;h,#r9kz/8wfCQ7<'3#Fn#Y#/y
,3w###*-(C3$/3#:eF#0
####lR#*h#6P##
s #3#4;=`U
b/##P~o##oE,QH###E<H"*u@
R
yfM][#}g-AoE## H3R$#6R

[U##U
v#W#w#p#>&##9#s 6
z3#]r8 Kq#!,
Q)#.[ww#9pa##]R#t]Re&#V
=gU]`t#x#2p"dR##f.0t2t=C#9bEe
#o)# ####IENDB`#################
#####################################################################tp#####(###
################
#####################
######
############>####################h#t#t#p#:#/#/#t#i#c#0#1#.#t#i#c#.#e#c##l#y#o#n#.#f#r#/#~#m#u#l#l#e#r#/#t#r#o#t#e#k#/#c#o#u#r#s#/#8#0#8#6#/#8#0#8#6#.#h#t#
m#l#.#f#r###8#0#8#6#######h#t#t#p#:#/#/#t#i#c#0#1#.#t#i#c#.#e#c##l#y#o#n#.#f#r#/#~#m#u#l#l#e#r#/#t#r#o#t#e#k#/#c#o#u#r#s#/#8#0#8#6#/#8#0#8#6#.#h#t#
m#l#.#f#r#0######8#0#8#6#####################################################
##
###I#m#a#g#e# ######W#o#r#d#.#P#i#c#t#u#r#e#.#8#0##(###I#m#a#g#e#
#M#i#c#r#o#s#o#f#t# #W#o#r#d#######/##

###0###################D###A#r#i#a#l###n#g#s###R#o#m#a#n###t##t##,0####

0############"###D###T#i#m#e#s# #N#e#w# #R#o#m#a#n###t##t##,0####

0############# ##D###W#i#n#g#d#i#n#g#s###R#o#m#a#n###t##t##,0####

0#####################@######

#######.##########
#########

###@##n#####?###" ##d######d#########@########################## #
#########@#@#########`#`###################$##################|##
##############
###########################################################
#######
###############

###

######################################
%#######################################################################
#######
########################################2##$#####dH8ChR################
b##$#####h#t8# fi0n#p=#############b##$#####76*y##/#######?
######b##$######15\##&s#H#1#######,A######b##$#####G8
ay9##D#######]B######b##$#####`#un4.
I#9#######C######b##$#####xR{&=]JZ##/#######D######b##$#######T
ykw|#6####### F######b##$#####+#sh&~8
##n#######?G########0#############A##############A#################
#########ZX##########@######################################################

###################;,R8#;#######g################4###R###d###R###d#######
<#####

0############p##########@###p##########p#######<######4###d###d###d###d##
#@##w

0t###0################################

########################0##########_#_#_#P#P#T#1#0##########
#####p##p#####w##########_#_#_#P#P#T#9####Y##################n####1Y#
uW#=#PNG
#
###IHDR#############

###PLTEVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVV~~V}}V|
{V{{VzzVyyVyxVwwVvwVutVttVsrVrsVrrVonVnnVmlVklVkkVkjVihVhiVfgVffVabV``V^^V]]V[[VZZV
YYVXXVVV###########################################################################
###########################################################################PBx####
tRNS#@f###

cmPPJCmp0712####H#s###IDAT(SUR@#D##b@F####**l##E/j##}#U?
###F#2.6

Gg4&#=##>7#D r%:=#NB*s
(meH]7~tye2wc\_&C
E<_)#dh#a#'#I####IENDB`#########n####v0^hb@g"[PNG
#
###IHDR#############

###PLTE#gg#``#_^#^^#\\#WW#TU#SR#RR#QQ#QP#PQ#NM#MM#LL#II#GF#FG#FF#EE#DD#BC#BB
#@?#??#==#<=#::#98#77#67#66#32#23#22#00#/0#//#..#-.#--#,-#,,#++#((#''#&%#%%#$
$#####"#!!# !###############################################

#
###################################################################################
###################################################################################
#####,E####tRNS#@f###

cmPPJCmp0712####H#s###IDAT(SUR@#D##b@F####**l##E/j##}#U?
###F#2.6

Gg4&#=##>7#D r%:=#NB*s
(meH]7~tye2wc\_&C
E<_)#dh#a#'#I####IENDB` ########n#####xwkJeR
dlPNG
#
###IHDR###

###

#####+#t####sRGB######PLTE###+###

cmPPJCmp0712####

######tRNS#@f####IDAT##c`#F###P0#18#]##|Pg####IENDB`0########n####!
###Yx#SPNG
#
###IHDR#############F}####sRGB######PLTE#&tSv###

cmPPJCmp0712####|m.####tRNS#@f####IDAT#Wc`@#!d##a##;
####IENDB`@########n####9#E&6`PNG
#
###IHDR#############y####sRGB#####!PLTE##f#3f33f
3f
">###

cmPPJCmp0712####|m.####tRNS##S###DIDAT#Wcp#####0AP

(`##4#1####

#A

F#Xj#",$

1#####@####IENDB`###V###################################################
#########################################################f####################
################################################################################
##############################################################################
##############################################################################
#####################################################################
##############################################
#############################################################################
####

##################################
##############################################################################
##############################################################################
##########(##########################################?##

############-#O##

###########=####2\###########################################.###Architecture
interne du microprocesseur 8086. ###(###/#########F########################(########################################## ###M#o#d#e#
#d##
a#d#r#e#s#s#a#g#e################################################z###M#o#d#e#
#d## a#d#r#e#s#s#a#g#e##L#e#s# #i#n#s#t#r#u#c#t#i#o#n#s# #p#e#u#v#e#n#t#
#a#v#o#i#r# #0#,# #1#,# #o#u# #2# #o#p##r#a#n#d#e#s#.##E#x#e#m#p#l#e#s##:# ###
#I#n#s#t#r#u#c#t#i#o#n#s# #s#a#n#s# #o#p##r#a#n#d#e#:# #N#O#P#,# #S#T#I#,#
#C#L#I#,# #P#U#S#H#F#,# #C#B#W#.#.#.#;# ## #I#n#s#t#r#u#c#t#i#o#n#s# #a#v#e#c#
#u#n#e# #s#e#u#l#e# #o#p##r#a#n#d#e#:# #I#N#C#,# #D#E#C#,# #N#E#G#,# #N#O#T#
#.#.#.#.#;## #I#n#s#t#r#u#c#t#i#o#n#s# #a#v#e#c# #d#e#u#x# #o#p##r#a#n#d#e#s#:#
#C#M#P#,# #A#D#D#,# #M#O#V#,# #L#E#A#,# #X#C#H#G#,# #A#N#D# #.#.#.#.#.#.###U#n#e#
#o#p##r#a#n#d#e# #p#e#u#t# #s#e# #t#r#o#u#v#e#r# #d#a#n#s# #u#n# #r#e#g#i#s#t#r#e#
#d#u# #8#0#8#6#,# #d#a#n#s# #u#n# #o#c#t#e#t#,# #d#a#n#s# #u#n# #m#o#t# #1#6#
#b#i#t#s# #o#u# #d#a#n#s# #u#n# #d#o#u#b#l#e# #m#o#t# #3#2# #b#i#t#s#.##L#e#s#
#o#p##r#a#t#i#o#n#s# #p#e#u#v#e#n#t# #a#v#o#i#r# #l#i#e#u#:### #e#n#t#r#e# #u#n#
#r#e#g#i#s#t#r#e# #e#t# #u#n# #a#u#t#r#e# #r#e#g#i#s#t#r#e#,##e#n#t#r#e# #u#n#
#r#e#g#i#s#t#r#e# #e#t# #u#n# #o#c#t#e#t# #o#u# #u#n# #m#o#t# #e#n# #m##m#o#i#r#e#
#m#a#i#s# #p#a#s# #e#n#t#r#e# #2# #o#c#t#e#t#s# #o#u# #2# #m#o#t#s# #e#n#
#m##m#o#i#r#e# #(#i#l# #f#a#u#t# #p#a#s#s#e#r# #d#a#n#s# #c#e# #c#a#s# #p#a#r#
#u#n# #r#e#g#i#s#t#r#e#)#.# #T#o#u#t#e#f#o#i#s# #l#e#s# #i#n#s#t#r#u#c#t#i#o#n#s#
#d#e# #m#o#u#v#e#m#e#n#t# #d#e# #c#h#a##n#e#s# #d#'#o#c#t#e#t#s#
#e#f#f#e#c#t#u#e#n#t# #"#d#i#r#e#c#t#e#m#e#n#t#"# #l#e# #t#r#a#n#s#f#e#r#t# #d#e#
#m##m#o#i#r#e# ## #m##m#o#i#r#e# #(#o#c#t#e#t# #p#a#r# #o#c#t#e#t# #o#u# #m#o#t#
#p#a#r# #m#o#t#)#,# #l#'#a#d#r#e#s#s#a#g#e# #s#e# #f#a#i#s#a#n#t# #p#a#r# #l#e#s#
#r#e#g#i#s#t#r#e#s# #D#S#:#S#I# #e#t#
#E#S#:#D#I#.####d#####################5#####################################
######)###################`##################################4################
#########
###################################################################################
#################################################################################################################################
####################*##############################################################
###################################################################################
##########
########################\###########,##########################################
########################## ###M#o#d#e# #d##
a#d#r#e#s#s#a#g#e###################################################Les
instructions de transfertadressage registre registre.Exemple: MOV AX, BX ;
oprandes 16 bit
ADD CH, DL ; oprandes 8 bitsadressage immdiat.Exemples:
MOV AX, 0A1EBH
; AX:= valeur hexa A1EB
ADD CL, 25
; CL:= CL +
25
OR AH,11000000
; forcer les 2 bits de fort poids de AH 1 adressage
direct.Exemples: MOV BX,Total
MOV DX,ES:Nomadressage indirect (ou
bas).Exemples:
MOV AX,[BX]
MOV AX,[BP] adressage index.Exemple:
MOV AX,Tab[SI]
adressage indirect index (ou bas index).Exemples:
MOV AX,[BX][SI]
; relatif a DS
MOV AX,[BP][SI]
;Relatif a SS
adressage bas index avec dplacement.Exemple:
MOV AX,Compte[BX][SI]
###6###################P###################P###################P#J########
###P###################P############P###################P###########P#)#######
####P###########P###################P###########P#'###########P################
###P###################P#############P###########P##################P#L###########P#(#################P#############P#############
#################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################

##########################/########################################################
#############
###################################################################################

###################################################################################
########################################################
###################################################################################
###################################################################################
###################################################################################
########################-#############
#########################>#########################(#############
##########################################

#################0################## ##################
#################
#################################X###L#e#s#
#P#r#i#n#c#i#p#a#l#e#s# #I#n#s#t#r#u#c#t#i#o#n#s# #d#e# #l##
a#s#s#e#m#b#l#e#u#r########-#########-################################L##
i#n#s#t#r#u#c#t#i#o#n# #L#E#A###E#x#e#m#p#l#e#s#:#
#L#E#A# #B#X#,#T#a#b#l#e#a#u#
##
#;#c#h#a#r#g#e#m#e#n#t# #d#e# #l## a#d#r#e#s#s#e# #d#e# #T#a#b#l#e#a#u##
#
#L#E#A# #B#X#,#T#a#b#l#e#a#u#[#S#I#]###L#'#i#n#s#t#r#u#c#t#i#o#n#
#X#C#H#G#.##E#x#e#m#p#l#e#:# #
#X#C#H#G# #A#X#,#S#o#m#m#e#
#;##c#h#a#n#g#e#
#d#e#s# #c#o#n#t#e#n#u#s# #d#e# #A#X# #e#t# #d#e# #S#o#m#m#e###L#e#s#
#i#n#s#t#r#u#c#t#i#o#n#s# #P#U#S#H# #e#t# #P#O#P##E#x#e#m#p#l#e#:# #
#P#U#S#H#
#S#I# #
#
#;#e#m#p#i#l#e# #l#e# #c#o#n#t#e#n#u# #d#e# #S#I###L#e#s#
#i#n#s#t#r#u#c#t#i#o#n#s# #a#r#i#t#h#m##t#i#q#u#e#s###L#e#s#
#i#n#s#t#r#u#c#t#i#o#n#s# #d#'#a#d#d#i#t#i#o#n# #A#D#D# #e#t# #A#D#C#.##
#E#x#e#m#p#l#e#s#:###A#D#D# #A#X#,#B#X# # #
#;#A#X# #r#e##o#i#t# #A#X# #+#
#B#X##A#D#D# #A#X#,#0#F#0#0#H# #
#
#;#c#e#s# #2# #i#n#s#t#r#u#c#t#i#o#n#s#
#a#d#d#i#t#i#o#n#n#e#n#t# #l#a##A#D#C# #D#X#,#0# #
#
#
#;#v#a#l#e#u#r#
#i#m#m##d#i#a#t#e# #0#F#0#0#H# ## #l#a# #p#a#i#r#e# #d#e# #
#
#
#;#r#e#g#i#s#t#r#e#s# #D#X#:#A#X# #(#3#2# #b#i#t#s#)#.##L#e#s#
#i#n#s#t#r#u#c#t#i#o#n#s# #d#e# #s#o#u#s#t#r#a#c#t#i#o#n# # #S#U#B# #e#t# #S#B#B#.#
##S#U#B# #A#X#,#D#X# # #
#
#;#A#X# #r#e##o#i#t# #A#X#-#D#X##S#B#B#
#S#I#,#1#0#0# #
#
#
#;#S#I# #r#e##o#i#t# #S#I#-#1#0#0# #-# #C#a#r#r#y#
#########################Z###################Z#U###########Z###############
####Z#A###########Z###################Z#.###########Z###################Z####
###############Z#(###################Z############Z#.###################Z#
G###########Z#####################Z##############################################
#####################
%##################################################################################
###################################################################################
###################################################################################
###############################################################################
#############%########### ###############(##################

###

####
####

###

#########

###

####

####

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

########

###

####.#############G##############################

###g###&##############
#################################X###L#e#s# #P#r#i#n#c#i#p#a#l#e#s#
#I#n#s#t#r#u#c#t#i#o#n#s# #d#e# #l## a#s#s#e#m#b#l#e#u#r########-#########################################Les instructions de multiplication: MUL et
IMULExemples:
MUL CL
; AX:=AL * CL rsultat sur 16 bitsIMUL CX
; DX:AX:= AX * CX rsultat sur 32 bits non signeLes instructions de division:
DIV et IDIVExemples:
IDIV BX
;DX:AX est divis par BX, le reste est dans DX
et le quotient dans AXDIV BL ;AX est divis par BL, le reste est dans AH, le
quotient dans AL.Les instructions de dcalage et de rotation
###j###0#################7#################<###########*####################
##############################-##### ###########!
#######0#########################################################################
###################################################################################
###################################################################################
###################################################################################
#####!
###########*#######################################################################
###################################################################################
###################################################################################
###################################################################################
#############################################+##############################

###r###################################################Z###L#e#s#
#p#r#i#n#c#i#p#a#l#e#s# #i#n#s#t#r#u#c#t#i#o#n#s# #d#e# #l## a#s#s#e#m#b#l#e#u#r#
####&###.#########F#,#####################################:###Les instructions
de rotation gauche :ROL Oprande,Nombre###\###9##### ###################
#########################)##########################################

#################################X###L#e#s# #p#r#i#n#c#i#p#a#l#e#s#
#i#n#s#t#r#u#c#t#i#o#n#s# #d#e# #l## a#s#s#e#m#b#l#e#u#r########-######################################1###Les instructions logiques AND, OR et XOR
Exemples:
AND AX,0FFF0H
;met 0 les 4 bits de faible poids de AXOR
AL,1
;met 1 le bit de faible poids de ALAND AX,Masque
;fait un ET
logique entre le contenu de AX
;et celui de Masque, le rsultat
est dans AXXOR AX,-1
;fait le complment 1 de AXTEST BX,0FFFE
; fait un ET logique entre le contenu de BX
;et 0FFFE sans
modifier BX. Permet de
;tester le bit 1 de BX
0 0 1 1
0 0 1 1
0 0 1 1 OR 0 1 0 1
AND
0 1 0 1
XOR
0 1 0 1 #######)#################
#################;###########1#########l###########,#########~###########z#######
####)##############################################################################
#########################'#######################################################(#
##################################################################################+
###################################################################################
############################"########################################z############
#######################################X###L#e#s# #p#r#i#n#c#i#p#a#l#e#s#
#i#n#s#t#r#u#c#t#i#o#n#s# #d#e# #l## a#s#s#e#m#b#l#e#u#r########-#########################################Les instructions de saut.Saut inconditionnel:
Exemple:
JMP Cas1
;saut direct JMP [BX]
;saut indirect
l'adresse contenue dans BXSaut conditionnel:###&#########
#######Z###################Z#\###########Z###################Z###############
####Z############################################################################
###############################################################################1###
###############################################################################X
###L#e#s# #p#r#i#n#c#i#p#a#l#e#s# #i#n#s#t#r#u#c#t#i#o#n#s# #d#e# #l##
a#s#s#e#m#b#l#e#u#r########-#########-################################Les
instructions de boucle: LOOP, LOOPE et LOOPNE.Syntaxe:
LOOP etiquette
LOOPE etiquette
LOOPNE
etiquetteExemple: Sommation des lments
de 0 100###x###3##### #########Z#k###########Z#3###############=#############
###########################"##############################>###A#######
#########
#######
#########
#######
#########/##########################
#####################X###L#e#s# #p#r#i#n#c#i#p#a#l#e#s#
#i#n#s#t#r#u#c#t#i#o#n#s# #d#e# #l## a#s#s#e#m#b#l#e#u#r########-######################################d###Les instructions sur chanes de caractresMOVS
(ou MOVSB, MOVSW), CMPS, SCAS, LODS et STOSExemple:###Z###+#####
########1############ ###########P#+###############1#############
################################
#########################Notion de procdure
####@#####################################################(#########(##########
#########Instructions CALL et RET.###8#########
#############################################################################
#########$###Passage de paramtres aux procdures###,###
%#########$##############################################Passage de
paramtres par pile/* Programme EXEMPLE_2.C */int ma_fonction( int x, int y ) {
return (x + y);}void main(void) { int X = 11; int Y = 22; int Res; Res =
ma_fonction(X, Y);} _TEXT
SEGMENT byte public 'CODE' ASSUME cs:_TEXT_main
PROC
near
PUSH
bp
MOV
bp,sp
SUB
sp,6
;
int X = 11;
MOV
[bp-2], 11
; int Y = 22;
MOV
[bp-4], 22
; int Res
; Res = ma_fonction(X, Y)PUSH
word ptr [bp-4]
PUSH
word
ptr [bp-2]
CALL
_ma_fonction
ADD
sp, 4
MOV
[bp-6],ax
; }
MOV
sp,bp
POP
bp
RET
_main
ENDP###>######### #####Z######!#######Z#############################|
###;#######################################################################
###############
#########################################################
#################

#######################################################################.#######
#######
#############
###*####### #############
###########
#############
########### #############
###########
#####################################
#############
###########
#############
########### ###############################################
#######
#############
########### #############
###########
#############
###M####### #############
###########
#####################"##########################

#####################$###Passage de paramtres aux procdures#######%#########


%#############################4###Traduction de la procdure ma_fonction en
assembleur#######5#####
#######5#################################################################
#####################D###I#n#t#e#r#f#a##a#g#e# #a#s#s#e#m#b#l#e#u#r##l#a#n#g#a#g#e# ## C## ########################################

##########################################D#i#r#e#c#t#i#v#e#s# #U#S#E#S# #e#t#


#a#r#g###n#e#a#r# #p#a#s#c#a#l# #a#d#d#i#t#i#o#n# #P#R#O#C# #N#E#A#R# #C# #U#S#E#S#
#d#i# #s#i#,# #a#r#g#1#:#W#O#R#D#,# #a#r#g#2#:#W#O#R#D#,##a#r#g#3#:#W#O#R#D# #
#p#u#s#h# #b#p# # #
#;#s#a#u#v#e#g#a#r#d#e# #d#e# #B#P##m#o#v# #b#p#,# #s#p# #
#
#;#f#a#i#r#e# #p#o#i#n#t#e#r# #B#P# #s#u#r# #S#P##p#u#s#h# #d#i# #
#
#;#s#a#u#v#e#g#a#r#d#e# #d#e# #d#i##p#u#s#h# #s#i# # #
#;#s#a#u#v#e#g#a#r#d#e# #d#e# #s#i##m#o#v# #s#i#,#a#r#g#1##m#o#v#
#d#i#,#a#r#g#2##m#o#v# #a#x#,#a#r#g#3##a#d#d# #a#x#,#d#i##a#d#d#
#a#x#,#s#i##p#o#p# #s#i# #
#
#;#r##c#u#p##r#a#t#i#o#n# #d#e# #s#i#
#p#o#p# #d#i#
#
#;#r##c#u#p##r#a#t#i#o#n# #d#e# #d#i##m#o#v# #s#p#,#
#b#p# #
#
#;#r#e#m#e#t#t#r#e# #s#p# ## #s#a# #v#a#l#e#u#r#
#i#n#i#t#i#a#l#e##p#o#p# #b#p# #
#
#;#r##c#u#p##r#a#t#i#o#n# #d#e# #b#p#
#r#e#t# #6# #
#
#;#n#e#t#t#o#y#a#g#e# #d#e# #l#a# #p#i#l#e# # # # # # # # #
##a#d#d#i#t#i#o#n# #e#n#d#p####A#p#p#e#l# #d#e#p#u#i#s# #l## a#s#s#e#m#b#l#e#u#r#:#
##I#n#v#o#k#e# #a#d#d#i#t#i#o#n# #1#,#2#,#3#
#;# #e#n# #c#a#s# #d##
a#d#d#i#t#i#o#n# #d#e# #1#,# #2# #e#t# #3###A#p#p#e#l# #d#e#p#u#i#s# #l#e#
#l#a#n#g#a#g#e# ## C## :###A#d#d#i#t#i#o#n#(#1#,#2#,#3#)#;#############
#####P############"
####P#N#############P#n###########P#################P#V###########P#########
########P############################################V#####################
########### ###########
#############
########### #############
########### #############
########### #############
###!#######
###################################################################################
################################################################
################################# #############
##########
#############
#######################################=###########################################
####################################################################################################################a#############################################
###2###A#s#s#e#m#b#l#e#u#r# #e#t# #l#a#n#g#a#g#e# ## C##
############################# #################V###A#p#p#e#l# #d#e#
#p#r#o#c##d#u#r#e#s# ## C## #d#e#p#u#i#s# #l## a#s#s#e#m#b#l#e#u#r########,#####
#####,##########################################################Le
compilateur Assembleur###############################################(###Un
petit programme ralis avec DEBUG:
###<###(###############################'#######################################
###############################Le compilateur
Assembleur##################################################Dclaration de
variables initialises:.DATAoctet db -2octets db 8 dup(0)chaine db "Bonjour",0mot
dw 7FFFhdoubleMots dd 2 dup(0FFFFFFFFh)nombre_reel real4
1.0###R###'###################################~#####!
#########(#############~#################(###############
###################################################################################
##################
###########################
######################################################################Thmes de
programmation
varis###################################################E#x#e#m#p#l#e#s#
#d#e# #p#r#o#g#r#a#m#m#a#t#i#o#n#:###T#r#a#n#s#f#e#r#t# #d## #l##m#e#n#t#s# #d##
u#n# #t#a#b#l#e#a#u# #v#e#r#s# #u#n# #a#u#t#r#e##C#a#l#c#u#l# #d#e# #l#a#
#s#o#m#m#a#t#i#o#n# #d#e#s# ##l##m#e#n#t#s# #d## u#n# #t#a#b#l#e#a#u# #e#t#
#a#f#f#i#c#h#a#g#e# #d#u# #r#e#s#u#l#t#a#t#.##R#e#c#h#e#r#c#h#e# #d#u#
#m#a#x#i#m#u#m# #d## u#n# #t#a#b#l#e#a#u##R#e#c#h#e#r#c#h#e# #d#u# #m#i#n#i#m#u#m#
#d## u#n# #t#a#b#l#e#a#u##T#r#i# #p#a#r# #o#r#d#r#e# #c#r#o#i#s#s#a#n#t# #d## u#n#
#t#a#b#l#e#a#u###R#e#m#a#r#q#u#e#:# #L#e#s# #p#r#o#c##d#u#r#e#s# #(#2#)# #e#t#
#(#5#)# #d#o#i#v#e#n#t# ##t#r#e# ##c#r#i#t#e#s# #e#n# #l#a#n#g#a#g#e# ## C## :##

#e#x#t#e#r#n# #n#e#a#r# #p#a#s#c#a#l# #i#n#t# #T#A#B#1#[#]#;##v#o#i#d#


#p#a#s#c#a#l# #T#R#I# #(#v#o#i#d#)#{## # # #i#n#t# # #j#,#i#=#0#;# # # #i#n#t#
#a#u#x#;## # # #d#o# #{## # # #j#=#i#+#1#;## # # #d#o# # # # # #{## # # #i#f#
#(#T#A#B#1#[#i#]#>#=#T#A#B#1#[#j#]#)## # # #{#a#u#x#=#T#A#B#1#[#i#]#;# # #
#T#A#B#1#[#i#]#=#T#A#B#1#[#j#]#;## # # #T#A#B#1#[#j#]#=#a#u#x#;#}#;## # # #j#+#+#;#
# # # #}# #w#h#i#l#e#(#j#<#=#4#)#;## # # #i#+#+#;## # # # # # # #
#}#w#h#i#l#e#(#i#<#=#3#)#;##}###e#x#t#e#r#n# #n#e#a#r# #p#a#s#c#a#l# #i#n#t#
#T#A#B#1#[#]#;##i#n#t# #n#e#a#r# #p#a#s#c#a#l# #S#O#M#M#E# #(#v#o#i#d#)#{## # #
#i#n#t# # # #i#=#0#;## # # #i#n#t# #s#o#m#m#e# #=#0#;## # # #d#o# #{# #s#o#m#m#e#
#=# #s#o#m#m#e#+#T#A#B#1#[#i#]#;# #i#+#+#;# #}# #w#h#i#l#e#(#i#<#=#4#)# #;## # # #
# # #p#r#i#n#t#f#(#"#%#d#"#,#s#o#m#m#e#)#;## # # #r#e#t#u#r#n#(#s#o#m#m#e#)#;## # #
#}####t###############P###########-#######P#J##########-#######P######!
#########P#############.######################################################
################################################
#################
##################################################################################
############################################################
###################################################################################
############################################################
%####################################################Thmes de programmation
varis###############################################*###.#m#o#d#e#l#
#s#m#a#l#l## #.#s#t#a#c#k# #2#5#6## #.#d#a#t#a## #T#A#B#1# #d#w#
#3#,#2#,#1#,#5#,#4## #t#a#b#2# #d#w# #5# #d#u#p#(#?#)## #m#e#s#s#a#g#e# #b#y#t#e#
#0#a#h#,#0#d#h#,#'# #l#e# #r#e#s#u#l#t#a#t# #e#s#t#:# #%#d#'#,#0## # #.#c#o#d#e##
#p#u#b#l#i#c# #T#A#B#1## #e#x#t#e#r#n# #S#O#M#M#E#:#f#a#r# #
#;#
#p#r#o#c##d#u#r#e# ## C## # #e#x#t#e#r#n# #_#p#r#i#n#t#f#:#f#a#r#
#
#;#
#p#r#o#c##d#u#r#e# ## C## # #e#x#t#e#r#n# #T#R#I#:#n#e#a#r#
#
#;#
#p#r#o#c##d#u#r#e# ## C## ##t#r#a#n#s#f#e#r#t# #p#r#o#c# #n#e#a#r## #m#o#v#
#s#i#,#o#f#f#s#e#t# #t#a#b#1## #m#o#v# #d#i#,#o#f#f#s#e#t# #t#a#b#2## #p#u#s#h#
#d#s## #p#o#p#
#e#s## #m#o#v# #c#x#,#5## #r#e#p# #m#o#v#s#w## #r#e#t##
#t#r#a#n#s#f#e#r#t# #e#n#d#p###m#i#n#i#m#u#m# #p#r#o#c# #n#e#a#r##
#m#o#v#
#s#i#,#o#f#f#s#e#t# #t#a#b#1##
#m#o#v# #b#x#,#[#s#i#]##
#m#o#v# #c#x#,#5#
#b#o#u#c#l#e#:# #c#m#p# #b#x#,#[#s#i#]## #j#l# #s#u#i#t#e##
#m#o#v#
#b#x#,#[#s#i#]## #s#u#i#t#e#:# #a#d#d# #s#i#,#2## # #l#o#o#p# #b#o#u#c#l#e## #
#m#o#v# #a#x#,#b#x## # #r#e#t## #m#i#n#i#m#u#m# #e#n#d#p### ####(#########!
#########P#######################################################################
###################################################################################
#"#################################################################################
########"##########################################################################
###############
###################################################################################
######

###################################################################################
###################################################################################
###################################################################################
##
#######################################################################
######################################################################Thmes de
programmation varis###################################################
####################################################################T###T#r#a#d
#u#c#t#i#o#n# #e#n# #a#s#s#e#m#b#l#e#u#r# #d#e# #p#r#o#c##d#u#r#e#s# ## C##
#######+#########+#################################48E3:1C44 55
PUSH
BP48E3:1C45 8BEC
MOV
BP,SP48E3:1C47 83EC02
SUB
SP,+0248E3:1C4A 56
PUSH
SI48E3:1C4B 33F6
XOR
SI,SI
; int
i=0;48E3:1C4D C746FE0000
MOV
Word Ptr
[BP-02],0000
; int somme =0;do {48E3:1C52 8BDE
MOV
BX,SI48E3:1C54
D1E3
SHL
BX,148E3:1C56 8B46FE
MOV
AX,Word Ptr [BP02]48E3:1C59 03870000
ADD
AX,Word Ptr [BX+0000] ; somme+TAB1[i];
48E3:1C5D 8946FE
MOV
Word Ptr [BP-02],AX48E3:1C63 46
INC
SI
; i++48E3:1C64 83FE04
CMP
SI,+04
;
while(i<=4) ;48E3:1C67 7EE9
JLE
1C5248E3:1C69 FF76FE
PUSH
Word Ptr [BP-02]48E3:1C6C 1E
PUSH
DS48E3:1C6D B8C400
MOV
AX,00C448E3:1C70 50
PUSH
AX48E3:1C71 90
NOP
48E3:1C72 0E
PUSH
CS48E3:1C73 E875E8
CALL
04EB
48E3:1C76 83C406
ADD
SP,+0648E3:1C79 8B46FE
MOV
AX,Word Ptr [BP-02]
; return(somme);48E3:1C7C EB00
JMP
1C7E
48E3:1C7E 5E
POP
SI48E3:1C7F 8BE5
MOV
SP,BP48E3:1C81 5D
POP
BP48E3:1C82 CB
RETF
###6#########!#########P######################
#&##################################.##########################################
##########3#################C#################e#################^#################L
########################/###########################################u########
#########
##############

0`## ##############33#####`##
#############S#f#3##f##`## ###############33#g#`##
################f####`## ########www######3#PP###`##
#######ZX###db#mo######`## #######\####3##y`####`##
########3f##3f####f###`## ########3f###3#FK#f###`##
###hk]##www####f##`## ###ff##>>\##`Y{#ff###`##
###R>&##- ###{p#_/##
######>#####?###"
##d######d#########@##############,##########|#####?###"
##d######d########@############## ########### # ##########"
#@########### #`################## ##n#####?###"
##d######d#########@##############

########### # #########@#@#########`#`###############P##R########
###############
###### ########
######@########
######`########
###########`##

###############p##>###############################################################
####>###################################################################

############################1######(##### ######################
####################
#########
####6#########<#############################
##########################################
[#################'###Cliquez pour modifier le style du titre#######(########
###(############:#####
#########
####0#########8########################
##############@#############################
#################v###Cliquez pour modifier les styles du texte du masque
Deuxime niveauTroisime niveauQuatrime niveauCinquime
niveau#######4################################
###w#################
#########
####0#########(########################
##############}###
########################
>#####################*###############################################
#########
####0#########X########################
##############r##
#################### ####
t#################"###*#M#i#c#r#o#p#r#o#c#e#s#s#e#u#r#s####*###################
######

#############

######################
#########
####0##################################
#########"#######`#########)

###########################V#####################
#*####*#########################

#############

#################`###B#
#########
##s##*###D###################>###############"######################
#####

#########
####<#####3#################################################"########
###########4###^#####################Jelassi
Khaled###########################

###############################H#####
#########

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####e#Pi ##"###M#o#d##l#e# #p#a#r# #d##f#a#u#t####################0##

##########P#################.######(##### ######################
####################
#########
####0#########d#########################
##################P#
###################
#####P#####################*##########################

###############
#####################
#########
####0##################################
################
#
#########################R#####################*############################

###############
################d#####
#########
##c##$##########################
#?#############F##
#########################:#####
#########
####0##################################
##############
#0###########################################v###Cliquez pour modifier les
styles du texte du masqueDeuxime niveauTroisime niveauQuatrime niveauCinquime
niveau#######4################################
###w#################
#########
####6#######################################
##############_###P####################
#####
P#####################*##########################

###############
#####################
#########
####6#######################################
##########################
R#####################*############################

##############_#

###############
################H#####
#########

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####e#0.w##################################

0##

########## ######
#########Q######(#####
######################
###############x#####
########
###c##$###############ld#################################################
#####

#######################F#####
#######4####)## ####
###############################t#,#####<####
#########
#####

####A#######################)##1 #####v###

#########
##3####### l############C#"###################?###############4######
####

#################p###

#### ####
#####

####(o#######C#"###################?############Y###%###(## ####

#################5#####
####
####
####<#############################################################

##O####################=### Bus d'adresse: Le 8086 utilise un bus d'adresse


de 20 bits, ce qui lui permet d'atteindre 220=1M cases mmoire de 1 octet
chacune. Les 16 bits de poids faible du bus d'adresse sont multiplexs avec les 16
bits du bus de donnes, alors que les 4 bits de poids fort sont eux aussi
multiplexs avec 4 bits de statut.###@#######################x############x###############/######################################
0#######################
#########
####H##########/#####################################################
########,##B###|#################&### Organisation de l'espace adressable.
###:###&#########################
###%############################^#####
########
####6########################################################
###
###j####
####

####
##S## ####A###############?#####?#########"####?############V###

,####

#################H#####
#########

####0##############h############### ###?########
##############33########################_#_#_#P#P#T#1#0####i###
##.####e#@=l###+##########D=#####' ################################=
###@#B#####
######+#######}##############################

0##

##########p#################$######(##### ######################
###############r#####
########
###S#################################################################

#################r#####
######## ###S############|
#########################*##/###########################

#################H#####
#########

####0##############h############### ###?########
##############33########################_#_#_#P#P#T#1#0####i###
##.####e# #+K###+##########D=#####' ################################=
###@#B#####
######+#######$##############################

0##

##################### #####$######(##### ######################


##### #########r#####
##### ##
###S################################################################

#################r#####
##### ## ###S############|
##############################v########################

#################H#####
##### ###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####e#OE###$##############################

0##

####################
$#####$######(#####
######################
#####$#########r#####
#####$##
###S######################################q####v########################

#################r#####
#####$##
###S#####################################*############################

#################H#####
#####$###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####e#PR#################################

0##

##################
###(###########(##### ######################
#####(#########r#####
#####(##
###S############3###################################################

#################r#####
#####(##
###S############4########################*############################

######################
#####(###
####<#########(###################################################w
#+###i####################
Les instructions de dcalage gauche :SHL
Oprande,Nombre
Oprande: Oprande = registre / case mmoireNombre: Nombre = soit
la valeur 1, soit la valeur contenue dans CL
###l###=#################q#######################(##############################
###########q########################,###G###################################6#####
#####^#####
#### (###
####6########################################################
###
########
#####(###
##S######A#####l#####
###?#########h#t#t#p#:#/#/#w#w#w#-#g#t#r#.#i#u#t#v#.#u#n#i#v##p#a#r#i#s#1#3#.#f#r#/#C#o#u#r#s#/#M#a#t#/#A#r#c#h#i#t#e#c#t#u#r#e#/#C#o#u#r#s#/#p#
o#l#y#a#r#c#h#/#i#m#g#/#s#h#l#.#p#n#g###p#s#/#s#h#l#.#p#n#g############{

####X#####
####
(###
####0######################################################

6#########
#####(###
####6#########D#############################################,##~###
#################;###
Les instructions de dcalage droite :SHR
Oprande,Nombre###>###<#################+#######################################
#####d####
####

(###
##S##<####A########################s#h#r###p#s#/#s#h#r#.#p#n#g##########V##

v####X#####
####(###
####0####################################################z#

####H#####
#####(###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####,f#I#>####

#############################

0##

#######{##############,############(##### ######################
#####,#########r#####
#####,##
###S############H########################q###########################

#################r#####
#####,## ###S############
########################t##/#W########################

#################d####
#####,###
##S##<####A########################r#o#l###p#s#/#r#o#l#.#p#n#g#############
#F####X#####
#####,###
####0####################################################M#

I#########
#####,###
####6#########,############################################w###7###
#################;###
Les instructions de rotation gauche :ROR
Oprande,Nombre###2###<##### ###########2#,##############################d####
#####,###
##S##<####A########################r#o#r###p#s#/#r#o#r#.#p#n#g#############
#
###X#####
#####,###
####0####################################################z#


########
#### ,###
####6######################################################
##
###################G###
Les instructions de rotation gauche avec retenu :RCL
Oprande,Nombre###2###H##### ###########2#8##############################d####
####
,###
##S##<####A########################r#c#l###p#s#/#r#c#l#.#p#n#g##########@#]#7

####X#####
#####,###
####0###################################################@##g#########
####

,###
####6#########8#############################################`## ###
#################G###
Les instructions de rotation droite avec retenu :RCR
Oprande,Nombre###2###H##### ###########2#8##############################d####
####,###
##S##<####A########################r#c#r###p#s#/#r#c#r#.#p#n#g############d

`####X#####
#####,###
####0######################################################c#########
#####,###
####B#########D#####################################################
##,#
###r#################,###
Les instructions logiques AND, OR et XOR ###*####################+#############################
#####,###
####<#############################################################
Z###b####################Syntaxe:
AND Destination,Source OR
Destination,Source
XOR Destination,SourceDestination = registre/case mmoire
Source = registre/valeur immdiate/case mmoire condition que Destination ne soit
pas une case mmoire.###j##############
###################################################################################
###################################################################################
###################################################################################
####################################*##############################################
####################H#####
#####,###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g######################################

0##

#
#####|
#############0######
#####(#####
######################
#####0#########r#####
#####0##
###S###############################################################

#################r#####
#####0##
###S############8####################################################

#################[######8#####

#######

#####{####
#####0#############

##{###T###B#
#####0###
##c##$###D#########################################

##M###

#####T###B#
#####0###
##c##$###D######################################m###

######

#####T###B#
#####0###
##c##$###D#######################################
##

#####

##########
#####0###
####H#########T#####################################################
#########

#####{#####################K### 0 1 1 1
0 0 0 1
0 1 1 0 #######L###########L##############@#####
#### 0###
####B##############################################################
##=
####D######<######4##########_#_#_#P#P#T#9##############################
#################"###
Les instructions de comparaison###0#########!
################### ##################

#######################
####
0###
####<#########L##################################################Z#
#K#######################Syntaxe:
CMP Destination,Source TEST
Destination,SourceDestination = registre / case mmoireSource = registre / case
mmoire / valeur#################
###################################################################################
###################################################################################
#########################################$##############=#####
#####0###
####<##########r###################################################j
#########################Exemples:
CMP AL,CL
; compare AL CL
CMP AL,0
; compare AL 0
TEST AL,AH
; ET logique entre AL et
AHRemarque: TEST laisse les oprandes du ET logique inchanges; les indicateurs
sont positionns en fonction du rsultat du ET logique. ##################t#####!
################################################
#################################################################
###############################################################
#############################################################################
###################################################################################
############################################################y##############H#####
#####0###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#k#################################

0##

#
#####################4###########(#####
######################
#####4#########r#####
#####4##
###S############\=r########################q####v####################r###

#################r#####
#####4##
###S############4>r############################j#####################r###

#################m###

#####4###
####0####>r##############################################

##########|
######t##########_#_#_#P#P#T#9####V######N###################################
##############################################################E###
Les
instructions de saut testant un flag.JC / JNC Jump if Carry / not CarryJS / JNS
Jump if Sign/ not SignJO / JNO
Jump if Overflow / not OverflowJP / JNP
Jump if Parity / not ParityJZ / JNZ
Jump if Zero / not Zero
Les
instructions de saut sur test arithmtique sign.JE
Jump if EqualJNE
Jump if Not EqualJG
Jump if GreaterJGE
Jump if Greater or
EqualJL
Jump if LessJLE
Jump if Less or Equal
Les instructions
de saut sur test arithmtique non sign.JA
Jump if AboveJAE
Jump
if Above or EqualJB
Jump if BelowJBE
Jump if Below or
Equal######.#####!############# ##############:#####!
################>#####!
#######_#########################+###########################################
###################################################################################
###########################################
###################################################################################
########################################################:####################

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

#########

###

####>############################################################################
#########-################D###.############## ###;##############
###>#######_#######
##############H#####
#####4###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#!M#################################

0##

######################8###########(##### ######################
#####8#########r#####
#####8##
###S############,_r########################q####v####################r###

#################r#####
#####8##
###S#############`r#################################################r###

#######################
#####8###
####6#########Par#########################################3######
####################l#a#n#g#a#g#e# ## C## :##i#n#t# #n#e#a#r#
#s#o#m#m#a#t#i#o#n#(#v#o#i#d#)# #{##i#n#t# #x#=#0#;##_#C#X#=#1#0#0#;##d#o# #{#
#x#=#x#+#_#C#X#;##_#C#X#=#_#C#X#-#1#;##}# #w#h#i#l#e# #(#_#C#X#!#=#0#)#;#
#r#e#t#u#r#n#(#x#)#;####&###p#########
#############c############################# ########### #############
########### #############
########### #############
###########
#############
########### ###

##########E#####
#####8###
####6#########Pjr#########################################=###!

###################i###Assembleur:_sommation proc near MOV


CX,100Boucle:
MOV
AX,0 ADD
AX,CX
LOOP Boucle_sommation endp###&###j#########

#############^################,#####################D############################
H#####
#####8###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#####X

#############################

0##

######################@#####X######(##### ######################
#####@#########X#####
#####@###
####0###########################################################r####
#
#####@##
###S############r################################################r###

#################r#####
#####@##
###S############r############################:#####################r###

#################
####
#####@###
####<#########lr################################################
####`
################`###.#m#o#d#e#l# #s#m#a#l#l##.#d#a#t#a#
#t#a#b#l#e#_#1# # # # #d#b# # #5# #d#u#p#(#?#)##t#a#b#l#e#_#2# # # # #d#w# # #4#
#d#u#p#(#?#)##i#n#i#t#i#a#l#_#1# # #d#b# # # #1#,#2#,#5#,#4#,#9##i#n#i#t#i#a#l#_#2#
# #d#w# # # #1#0#0#0#,#1#0#0#2#,#1#0#0#5#,#1#0#0#8##.#c#o#d#e##p#r#o#g#r#a#m#m#e#
#p#r#o#c# #n#e#a#r##m#o#v# #a#x#,#@#d#a#t#a#
#;# #i#n#i#t#i#a#l#i#s#a#t#i#o#n#
#s#e#g#m#e#n#t# #d#e# #d#o#n#n#e#e#s##m#o#v# #d#s#,#a#x##m#o#v# #e#s#,#a#x##m#o#v#
#c#x#,#5#
#
#;# #5# ##l##m#e#n#t# ## #t#r#a#n#s#f#e#r#e#r##c#l#d#
#
#;# #t#r#a#n#s#f#e#r#t# #d#a#n#s# #l#e# #s#e#n#s# #c#r#o#i#s#s#a#n#t# #
#m#o#v# #s#i#,#o#f#f#s#e#t# #i#n#i#t#i#a#l#_#1# #;# #a#d#r#e#s#s#e# #d#u#
#t#a#b#l#e#a#u# #s#o#u#r#c#e# #d#a#n#s# #S#I##m#o#v# #d#i#,#o#f#f#s#e#t#
#t#a#b#l#e#_#1#
#;# #a#d#r#e#s#s#e# #d#u# #t#a#b#l#e#a#u# #d#e#s#t#i#n#a#t#i#o#n#
#d#a#n#s# #D#I##r#e#p# # #m#o#v#s#b#
#
#;# #t#r#a#n#s#f#e#r#t# #d#e#s#
##l##m#e#n#t#s# #d#e# #i#n#i#t#i#a#l#_#1# #v#e#r#s# #t#a#b#l#e#_#1##m#o#v#
#c#x#,#4#
#;# #n#o#m#b#r#e# #d## #l##m#e#n#t#s# ## #t#r#a#n#s#f#e#r#e#
#m#o#v# #s#i#,#o#f#f#s#e#t# #i#n#i#t#i#a#l#_#2# #;# #a#d#r#e#s#s#e# #d#u#
#t#a#b#l#e#a#u# #s#o#u#r#c#e# #d#a#n#s# #S#I##m#o#v# #d#i#,#o#f#f#s#e#t#
#t#a#b#l#e#_#2#
#;# #a#d#r#e#s#s#e# #d#u# #t#a#b#l#e#a#u# #d#e#s#t#i#n#a#t#i#o#n#
#d#a#n#s# #D#I##r#e#p# #m#o#v#s#w# #
#;# #t#r#a#n#s#f#e#r#t# #d#e#s#
##l##m#e#n#t#s# #d#e# #i#n#i#t#i#a#l#_#2# #v#e#r#s# #t#a#b#l#e#_#2##m#o#v#
#a#x#,#4#c#0#0#h##i#n#t#
#2#1#h#
#;# #F#i#n# #d#u#
#p#r#o#g#r#a#m#m#e# #e#t# #r#e#t#o#u#r# #a#u# #s#y#s#t##m#e# #d##
e#x#p#l#o#i#t#a#t#i#o#n##p#r#o#g#r#a#m#m#e# #e#n#d#p##e#n#d#
#p#r#o#g#r#a#m#m#e########1###########1#################

#######
###################
###################
###################
#############
###
#######
###################
###################
#############
########### ####################################### ###########
#############
########### #############
#####################
########### #############
###################################################################################
###########################&#################9#################<###################
################5###########################################
###########################9#################<###################################5#
####################################################F##############################
################H#####
#####@###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#PH###E##############################

0##

#####################$D################9######(##### ######################
#####D#########0####
#####D###
##S#######A
#########
###?#####*###h#t#t#p#:#/#/#w#w#w#-#g#t#r#.#i#u#t#v#.#u#n#i#v##p#a#r#i#s#1#3#.#f#r#/#C#o#u#r#s#/#M#a#t#/#A#r#c#h#i#t#e#c#t#u#r#e#/#C#o#u#r#s#/#p#
o#l#y#a#r#c#h#/#i#m#g#/#c#a#l#l#i#m#b#r#i#q#u#e#s#.#p#n#g###p#s#/#c#a#l#l#i#m#b#r#i
#q#u#e#s#.#p#n#g############

i####X#####
####$D###
####0####################################################Z##j####r####
#
#####D##
###S############r################################################r###

#################r#####
#####D##
###S############lr##########################/######################r###

#################^#####
#####D###
####6##################################################################
l######d#####
############s###F#####
#####D####################"#########
#########
##############s#F#########
#####D###
####B#########r##########################################?
####################s###F#####
>##################################################### #@#`#####H###B#
#### D###
##C##########################################s##########H###B#
####
D###
##C######################################F###s###F######H###B#
#####D###
##C##############################################F######H###B#
####

D###
##C##################################s#######s###F###########
#####D###
####<##########r#################################################j##+
####^#################*###L'instruction CALL effectue donc les oprations: Empiler la valeur de IP. A ce moment, IP pointe sur l'instruction qui suit le CALL.
- Placer dans IP l'adresse de la premire instruction de la procdure (donne en
argument). Et l'instruction RET: - Dpiler une valeur et la ranger dans IP.
#######+###########+####################8#####
####,##############
#####D#############

,##S####`#####
#####D###
####0###################################################,####
###########

#####
#####D###
####B##########r##############################################"###
####`########,######,###;######################### #C#a#l#c#u#l# # # # # # #
#P#R#O#C# # #n#e#a#r# # # # # # # # # #
#;# #p#r#o#c#e#d#u#r#e# #n#o#m#m#e#e#
#C#a#l#c#u#l## #& & & # # # # # # # # # # # # # # # #
#;#
#i#n#s#t#r#u#c#t#i#o#n#s# # # # # # # ## # #R#E#T# # # # # # # # # # # # # # # #
#
#;# #d#e#r#n#i#e#r#e# #i#n#s#t#r#u#c#t#i#o#n## #C#a#l#c#u#l# # # # # #
# #E#N#D#P# # # # # # # # # # # # # # # #;# #f#i#n# #d#e# #l#a#
#p#r#o#c#e#d#u#r#e####B###<################
#########"###
######c###############C################################# ###'#######
#############
########### #############
###################
###B#################:####### #######################

#####D###
####<####@r#######################################################,#M
#

##<#####################Exemple:#######

#########

###################

#####D###
####0####r#############################################,##e###
F####################C#A#L#L# #a#d#d#r#e#s#s# # #
###P#C# # # # # # # #
#
#(#P#C#)# #+# #3##(#S#P#)# # #
#(#P#C#)#H##(#S#P#)# ## #1# #
#(#P#C#)#L## #S#P# # # # # # #
#
#(#S#P#)# #-# #2## #P#C# # # # # #
#
#
#a#d#d#r#e#s#s# ####$###j#########

#############^##############,#####################U############################^#
##"#
#####D###
####6########################################################z#######
^###"#
#####D###
####6#######################################################C#z######
^###"#
#####D###
####6########################################################z##&####
^###"#
#####D###
####6#######################################################S#z######
^###"#
#####D###
####6########################################################z##A####
/###

#####D###
####0####Xr############################################# <#Y###
#################m###RET ;Retour de sous-prog
PCL
((SP) + 1)
PCH
((SP) + 2)SP
(SP) + 2
###$###n#######################i##########################
#########V##########X###"#
#### D###
####0##################################################F#F#

####X###"#
####!D###
####0###################################################F#

#####X###"#
####"D###
####0###################################################F#

)####R###B#
#####D###
##s##*###D####################>#####################p#p#####H#####
#####D###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#o##################################

0##

########## ###########H###########(##### ######################


#####H#########X#####
#####H###
####0###################################################0
###Y####r#####
#####H## ###S############
s################################################s###

#################r#####
#####H## ###S############
s############################-#####################s###

#################H#####
#####H###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#d###q
#############################

0##

#
#####
##0###########L#####q #####(#####
######################
#####L#########X#####
#####L###
####0###################################################

###@####r#####
#####L## ###S############
$s################################################s###

#################r#####
#####L## ###S############$s############################

#####################s###

#################\#####
#####L###
####6#########D&s############################################:#,#+#
######################ASSUME cs:_TEXT_ma_fonction
PROC
near
PUSH
bp
MOV
bp,sp
; return x + y;MOV
ax, [bp+4]
ADD
ax, [bp+6] POP
bp
RET_ma_fonction
ENDP
;
#############################################################################
#################
###############
#############
########### #############
###########
#############
########### #############
###
#######
###
#################################################

#####L###
####0#####0s#############################################,######!
####################En tudiant cet exemple, on constate que: 1. la fonction C
ma_fonction() a t traduite par une procdure assembleur nomme _ma_fonction, qui
lit ses arguments partir de la pile (pointeur BP).2. la fonction ne modifie pas
l'tat de la pile; 3. Avant l'appel de la fonction (CALL ), les arguments sont
empils (PUSH). Aprs le retour de la fonction, le pointeur SP est incrment pour
remettre la pile dans son tat prcdent (ADD sp, 4 est quivalent deux
instructions POP 2 octets). 4. La valeur retourne par la fonction est passe dans
AX (d'o l'instruction MOV [bp-6], ax). Le respect des conventions d'appel de
procdures est bien entendu trs important si l'on dsire mlanger des fonctions C
et des procdures en assembleur.
######,######################2######################`####################
##+##############################################################
#############4###########

#############:#########################/###########################################
######## #########################/#########################?###########
#############$###########

#######################################5###########################################
######################P###=#################6#################+#################
###########################H#####
#####L###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#@Y#################################

0##

##########@###########P###########(##### ######################
#####P#########X#####
#####P###
####0#######################################################p####r####
#
#####P##
###S############^s################################################s###

#################r#####
#####P##
###S############r############################9#####################s###

#################H#####
#####P###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#PHX#################################

0##

#3######+###P###########T###########(##### ######################
#####T#########X#####
#####T###
####0######################################################F####r####
#
#####T##
###S############ms################################################s###

#################r#####
#####T##
###S############ns#################################################s###

#################[###

#####T###
####<####ws######################################################:##K

####################?###Cas de Printf: int


Cdecl printf(const char
*__format, ...);#######@#########@################t##############################
###################################################################################
############

#####T###
####0####}s###################################################
t#################l###.#M#O#D#E#L# #s#m#a#l#l#,# #c# # #
#;# #M#o#d#e#l#
#m##m#o#i#r#e# #e#t# #c#o#n#v#e#n#t#i#o#n#s# #d## a#p#p#e#l# #c###.###p#r#i#n#t#f#
#P#R#O#T#O# #N#E#A#R#,# #
#
#;# #p#r#o#t#o#t#y#p#e# #d#e# #l#a#
#f#o#n#c#t#i#o#n# #p#r#i#n#t#f# #(#V#A#R#A#G#:# #
#
#
#;#a#r#g#u#m#e#n#t#s# #v#a#r#i#a#b#l#e#s#)###p#s#t#r#i#n#g#:#N#E#A#R# #P#T#R#
#B#Y#T#E#,# #n#u#m#1#:#W#O#R#D#,# #n#u#m#2#:#V#A#R#A#R#G##
#.#D#A#T#A#####f#o#r#m#a#t# #B#Y#T#E# #'#%#i# #%#i#'#,# #1#3#,# #0#
#;#
#c#h#a##n#e# #d#e# #c#a#r#a#c#t##r#e#s# ## #a#f#f#i#c#h#e#r# #p#a#r#
#p#r#i#n#t#f###.#C#O#D#E###_#m#a#i#n# #P#R#O#C# #P#U#B#L#I#C# # #
#;#
#P#r#o#c##d#u#r#e# #a#s#s#e#m#b#l#e#u#r# #q#u#i# #f#a#i#t# #a#p#p#e#l# ##
#p#r#i#n#t#f# ###.###I#N#V#O#K#E# #p#r#i#n#t#f#,# #O#F#F#S#E#T# #f#o#r#m#a#t#,#
#a#x#,# #b#x##.###.###.###_#m#a#i#n# #e#n#d#p##E#N#D# #_#m#a#i#n#
#
#
#;# #F#i#n# #d#e# #l#a#
#p#r#o#c##d#u#r#e####################################################1#######
##########*#################"#################@#################.#################C
#######################################################################
############################H#####
#####T###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####g#Jkx###|##############################

0##

##########`###########`#####|######(##### ######################
#####`#########r#####
#####`##
###S############s################################################s###

#################r#####
#####`##
###S############s#################################################s###

####################

#####`###
####<#####s######################################################9#
#####v####################C:\DOS>debug-a24A2 : 0100 ORG 20024A2 : 0200 DB
"Bien le bonjour de la part de DEBUG!$"24A2 : 0225 ORG 10024A2 : 0100 MOV AH,0924A2
: 0102 MOV DX,20024A2 : 0105 INT 2124A2 : 0107 MOV AX,4C0024A2 : 010A INT 2124A2 :
010C [Return]-g###$#######################################<###

#######

###################

###K##############

#################

#####`###
####<####ds#######################################################,#A

########################DOSSEG.MODEL SMALL.STACK 50.DATALIGNE DB "Bien le


bonjour de la part de MASM/TASM!$".CODE MOV AX,@DATAMOV DS,AXMOV AH,09HMOV
DX,OFFSET LIGNEINT 21HMOV AX,4C00HINT 21HEND
##############################(########### ###O#######J#######
#################

#####`###
####<#####s########################################################
#

##m#################/###
le mme programme crit pour MASM/TASM :
###"###0#################0################H#####
#####`###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####h# #################################

0##

###########p###########d###########(##### ######################
#####d#########X#####
#####d###
####0##########################################################X####
#
#####d###
####0###################################################

###
###r#####
#####d##
###S#############s################################################s###

#################r#####
#####d## ###S############s#############################
####################s###

####################

#####d###
####<####hs########################################################
####X####################.#D#A#T#A##b#u#f#1# #B#Y#T#E# #"#T#h#i#s# #i#s# #a#
#s#t#r#i#n#g#"#,#'#$## #b#u#f#2# #B#Y#T#E# #1#0#0# #D#U#P# #(#?#)##.#C#O#D#E#
#s#u#b# #b#x#,# #b#x# # #
#
#;# #m#i#s#e# ## #z#e#r#o# #d#e# #b#x#
#.#W#H#I#L#E# #(#b#u#f#1#[#b#x#]# #!#=# #'#$#'#)##m#o#v# #a#l#,# #b#u#f#1#[#b#x#]#
#
#;# #L#i#r#e# #u#n# #c#a#r#a#c#t##r#e# ##m#o#v# #b#u#f#2#[#b#x#]#,#
#a#l# #
#
#;# #l#e# #p#l#a#c#e#r# #d#a#n#s# #b#u#f#2##i#n#c# #b#x# # #
#
#;# #i#n#c#r#e#m#e#n#t#a#t#i#o#n# #d#e# #b#x##.#E#N#D#W#
###############################4###=#######
#########################################################
#####################################################
###################################################################################
###################################################################################
###########################

#####d###
####0####,s############################################0
#6

##}#################+###
Directives de programmation
structure:###6###,#############################'########################H#####
#####d###

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####h#0##r#################################

0##

#####################h#####b######(##### ######################
#####h#########X#####
#####h###
####0###################################################
###,####X#####
#####h###
####0##########################################################r####
#
#####h##
###S############$zs################################################s###

#################r#####
#####h##
###S#############s#################################################s###

#####################
#####h###
####B####Ps######G##H##e###################################

########
#####E####################Procdure
(5)##########################################
#####h###
####B####(s######G#H#<###################################

########c###F###E####################Procdure
(2)######################################H#####
#####h###

####0##############h############### ###?#####/##
###############h##############h#####
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####h# w{#################################

0##

#4######,#########
###
l###########(#####
######################
#####l#########X#####
#####l###
####0######################################################,####X####
#
#####l###
####0###################################################z
##p####X#####
#####l###
####0#######################################################M
###r#####
#####l##
###S############\s################################################s###

#################r#####
#####l## ###S############Ls########################G####
#####################s###

#####################
#####l###
####B#####u######G#H#####################################

#########

####
F#####################Initialisation#########################################
#
#####l###
####B#####u######G#H#u###################################

########@#F###

##K#####################Procdure
transfert##########################################
#### l###
####B####@
u######G##H#u###################################

##########F#####I#####################Procdure
minimum######################################H#####
#####l###

####0##############h############### ###?#####?
##0###############l##############l############# l#####
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####Ri#0GZ###

#############################

0##

################
####x#####W######(#####
######################
#####x#########X#####
#####x###
####0###################################################]
######X#####
#####x###
####0###################################################t###
###r#####
#####x##
###S#############u################################################u###

#################r#####
#####x##
###S############t#u#################################################u###

#################i#####
#####x###
####6#########P4u############################################t###N###
#####################maximum proc near
mov si,offset tab1
mov bx,[si]
mov cx,5 boucle:cmp bx,[si]
jg suite
mov bx,[si] suite: add si,2
loop
boucle
mov ax,bx ret maximum endp_main proc near mov ax,@data mov ds,ax call
transfert call minimum call maximum call SOMME push ax push
ds mov
bx,
offset message push bx call _printf
call TRI mov ah,4ch int
21h _main endp end _main###F############

###########E###############8######################################
###################################################################################
###################################################################################
###################################################################
#######################################################################
#################
###################################################################################
##########################################

#################
#################
###################################################################################
###################################################################################
###############################
###################################
#################

##################################################
#####x###
####B####,Lu######G#/H#u###################################

###############I#####################Procdure
maximum##########################################
#####x###
####B####6u######G##H#u###################################

#########c
Y#

##K#####################Programme
principal###########################################
#####x###
####6####Qu#################################################,#Y#####
)#################=###push axpush
dsmov bx, offset messagepush bxcall
_printf
###&###>#########<##############################################################
###################################################################################
#########################################################
#####x###
####B####\\u######G##H#u###################################

#########6
,####i#####################Appel de
printf##########################################
############################H#####
#####x###

####0##############h############### ###?#####?
##0###############x##############x######### ####x#####
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####Hj##KS###E##############################

0##

#####################|#####-######(##### ######################
#####|#########X#####
#####|###
####0###################################################~

w#<#####r#####
#####|##
###S######################################w##########################

#################r#####
#####|##
###S#######################################w#<#,#########################

####################

#####|###
####<####H#########################################################5
####R#####################
Procdure
SOMME###$########################################
#####|###
####B##########G#H#g{###################################

########`
#C###i#####################Appel de
printf##########################################
############################H#####
#####|###

####0##############h############### ###?########################|
#####
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####Kj#`7#"####################0##

##########`#################"######(##### ######################
###############^#####
######## ###S#########################################F##
##############################
######## ###S#####################################
#0####################

#######################
################H#####
#########

####0##############h############### ###?########
##############33########8######0##########_#_#_#P#P#T#1#0########
##.####e# #D#####
###,##xZklT#>s'##

`j##cLB###6`+)%u#k#ob{B
$A#RhjhDU"##QUQVU#*jR~$\zm#*5733gf=3^C|(>O&fP'MhH!2t|
dttM##}
9O#x##L|Y
P.##st,}vh#

Mu#?BGb)##a*{wc#o~$LL$d#o#7G&P=mG}a#1mT3#3?^9#\b ###E|`#P

,###%g,Es@#

X###*#XT#k*`-p;p#####X#l#6#mj<##@#)#l##NRs#4#@#p/#h#
/#/#{/###^`###:N#
#z##0##@######`##:##p#e+Q#U#5#E9)b&P:s
Y(o

#y
#qg*6#T52,5#&#G1#
#lg1P8 l#k
>-# B}#w[URV&n#r#!
W'X)#jg@\.I_;nS#7%I"$9Nm"i _!i%P

[#

E}k~F###
HUH ##V;eujym#?w5##{#ao-#o#cO.B#\S#?{\&>
#F*#^#HJ9##iYgw#oCEx,#@H(K#d{~f>JoXt3#]`dKZ$&#
#w8=G36'Ts#iT#2#~SbbP?Si7#q###{`0cUr
(
#

] +ZhL#Z''HkIi9Gx-eL?####k#otS!#0j#A(zI
&RSz^6^MlX#U1#CZ#Q#dgf1Q&e0zX5Id
%Z^&#k##zj}<CZ`9*8#d_
|#@
4J#b}#m1#Ac+#k( Pp}@=9#|
U1xOS9o>#gYp>#
+ 9t8##l# &7i7,#>;i###G
#?
6\)*[{v#L##S|#0kLo% y#~mk]t#-:W
;u|:6srx{}{2,#;XO#{#uR,O<:#>/8#v#!%;##Mv{#K[R#IF0S#+
N#{#{[#Z#5K-k##x75gX?T!
p#dV#X}iHS~`Yc%1>^

!
7|yo##4uv#4q#]K'#)!*U###K#T|H CXWSZH
Skl##Kl|g"
S#Xf{iETE/'cV<u'#c$c{>#X@#P##*`-p;P##nO!!#e#"#.;!
z'VYd

#w"H#YHIn$}<uX[###31>Bwwx
/ 7oz7V #M
M#n#P#pf`#LV#(#x#T8,po#/`##p#$e!
y_6<lI}RV)N-4}#;hiUT"pm'e;wU#^nV
\-H#b7###gnu"!#mzs

@~uaqI +r~e2N<v##Z;~
/#C#p1##t~$Zwhn#o#jP p/e1#mNs0`N#[%r~
>1@g:#=3!q#u\[d#Ct#&[!M

-#G3
> 'OS_ 4u
/9BcT(#.#oPpo##$77mCZCc$?oolm
~K]j#k#Zw54T6#E?<O5p*W_#SLG;?
U=|}HGmSpy^/*<#|#iaU'zs?//###r#t#####@#####{##|p#####9###S!
####V######\##w####4####-##z############@###Z##########
#U########################;
+#############################################################################
Oh###+'0###T##########`#######h#################
#############
######

########################################0###Architecture interne du
microprocesseur 8086.
##########jelassi#########jelassi#########12##########Microsoft Office
PowerPoint#@###
###@#####e#@###P#i#k########G###S########g

#####

###)####'##########################

### ######################################

#############"""#)))#UUU#MMM#BBB#999#|
#PP#######3###f##########3##33##f3##3##3##3###f##3f##ff##f##f
##f#####3##f####
#######3##f########f########3#3#3#f#3##3##3#
#3##33#333#f33#33#33#33##f3#3f3#ff3#f3#f3#f3##3#33#f3#3#
3#3##3#33#f
3#3#3#3#33#f3#3#3#3###f#3#f#f#f##f##f##f##3f#33f#f3f#3f#3f#3f##
ff#3ff#fff#ff#ff##f#3f#ff#f#
f#f##f#3f#f#f#f##f#3f#f#f####
###3########33#f##3####f#3f#f3#f#f#3#3#f##
###3
#
#ff#
# # ###3#f
#######3##f#######3#33#f3#3#3#3##f#3f
#ff#f#f#f###3#f##
####3#f######3#f###
#3##f#####3#33#f3#3#3#3##f#3f#ff#f#f#f###3#f##
#
###3#f####3#f###ff#ff#f#ff#f#f##!
#___#www###########################
#########2######4###########'##A#
###x###########(###x###############K###################################
#############

#############"""#)))#UUU#MMM#BBB#999#|
#PP#########3###f########3###33##3f##3##3##3##f###f3##ff##f##
f##f#####3##f###########3##f##
######f#####3###3#3#3#f#3##3#
#3##33##333#33f#33#33#33#3f##3f3#3ff#3f#3f#3f#3##33#3f#3#3#3#3##3
3#3f#3
#3#3#33#3f#3#3#3#f###f#3#f#f#f##f##f##f3##f33#f3f#f3#f3#f3#
ff##ff3#fff#ff#ff#f##f3#ff#f#f#f#f##f3#f
#f#f#f##f3#f#f####
###3########33##f#3###f##f3#3f#f#f#3#3#f####
##3#ff#
#
####3#f########3##f#####3##33#3f#3#
3#3#f##f3#ff#f#f#f####
# 3 f #
#
###3#f#
#
####3#f###
##3##f###3##33#3f#3#3#3#f##f3#ff#f#f#f###3#f###
###3#f#
#
##3#f###ff#ff#f#ff#f#f#!
##___#www###########################
###

###################################################
###############
######
###################################################

##
####################################
##################
########
##############################

#################################
##################
###########################
#######################################
############

#
#
##################################
######
##

#
########################################
#### #
##

#
##
#############################################
################# ####
# ##

#
###############################
###################################
######
#

##
################################
##############################
############
#

#############

####


#!!'!'!'!'!'!'!'!'!'!'!'!'!'!'!'!'!'''''''!'''''''!'''!'!'!'!'!
r m!
3UUZUUZUUZUZUZUUZUUZU333-T-N-T---T-N-T---Tm#3
33-3-!e
m!
3Hkpkpkpkpkpkpkpkk
m#3m3!
km!
ZH33333#3mm
3!k'U!
#CCCCCU m!
mZHkO'#Z
m#3#m3!k-m3#m m!
ZHOOrrrIImZ
m#3mmm3!
eUUUIOCCm!
m#HkO'#UUU
m#3m3!kOr!
3O3 m!
mZHZU3ZrZZ
#3mmmm3!
k'e_3 m!
mZHkNp3
m#3

3 !
k'k_3
m!ZZZ-pZ33HT#333H33''-3'-'-'--3!
k'k_3
m!33-333-p333-33333333333'333k333m_____
_________3

U34343433434'H4343434334343
4334343433434343343434334343Z
CmCJCmCJCmCJCICmCJCmCJCmCJCmCJCmCJCmCJCmCmCmIJCmCmCmIJCmCJCm
#kk

C_ kkkklkkklkkklkkklkkk
#kC
Bm
m
#Cmm
Cm
m
#mmC
Bm
m
#
C
mk
l #
m o

BmF
Fm
#C
####E#E
CD#FEoEFk
#C#k#DkBl

BCl
#mmBlkkk
C
l

#k#EBlkk
m B
#
lkkm
### ### ### # # # # # ### # ### # # ### # # ###
moFFEoEnEnEoEoE
oEnEoEoEoEnEoEnEoEnEoEoEoEnEoEoEoEnEoEn

mmCmmmCm

CmCmmm

##########################################################
###################################################################################
###################################################################################
###############
######################################################.####+,D####.###
#+,###T########################################################
######
#######################################

##########

#####################Affichage
l'cran#########enit########w####################################################
#########################################Arial#####Times New Roman#
###Wingdings#####Modle par dfaut#####Image Microsoft Word#/###Architecture
interne du microprocesseur 8086. #####Mode dadressage#####Mode dadressage#-###Les
Principales Instructions de lassembleur#-###Les Principales Instructions de
lassembleur#.###Les principales instructions de lassembleur #-###Les principales
instructions de lassembleur#-###Les principales instructions de lassembleur####Les principales instructions de lassembleur#-###Les principales instructions de
lassembleur#####Notion de procdure #%###Passage de paramtres aux procdures#
%###Passage de paramtres aux procdures#####Interfaage assembleur-langage
C#####Assembleur et langage C#####Le compilateur Assembleur#####Le compilateur
Assembleur#####Thmes de programmation varis#####Thmes de programmation
varis#####Thmes de programmation varis#+###Traduction en assembleur de
procdures C#

###############Polices utilises#################Modle de
conception#################Serveurs OLE incorpors#################Titres des
diapositives######################## #######8#######@###########

###_PID_HLINKS########A##############################################C###h#t#t#p#
:#/#/#t#i#c#0#1#.#t#i#c#.#e#c##l#y#o#n#.#f#r#/#~#m#u#l#l#e#r#/#t#r#o#t#e#k#/#c#o#u#r#s#/#8#0#8#6#/#8#0#8#6#.#h#t#
m#l#.#f#r#############8#0#8#6######################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################R#o#o#t#
#E#n#t#r#y######################################################dO##
#)############8#n####@#######P#i#c#t#u#r#e#s################################
#################################################################K######C#
u#r#r#e#n#t#
#U#s#e#r###############################################################
######################,#########S#u#m#m#a#r#y#I#n#f#o#r#m#a#t#i#o#n################
###########(##################################################T############
##############################################################
##############################################################
###########################################################
###############################################################
###########################################################
################

###########_#+#########aida####a#i#d#a#N#E#X###########
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
#####################################R#o#o#t#

#E#n#t#r#y######################################################dO##
#)############1####@#######P#i#c#t#u#r#e#s##################################
###############################################################K######C#u#
r#r#e#n#t#
#U#s#e#r###############################################################
######################2#########S#u#m#m#a#r#y#I#n#f#o#r#m#a#t#i#o#n################
###########(##################################################T############
##############################################################
##############################################################
###########################################################
###############################################################
###########################################################
################