Vous êtes sur la page 1sur 154

Structure dun systme microprocesseur

Logique cble :

!
"

"

$
$

"

"

$
&

"
'

" (
(

'

) (

(
(

)
Logique programme :
)
(
*

"

, )

!
"
"
"
"

$
$
$

Architecture gnrale dun systme microprocesseur

" +

Bus de donnes

Port A

ROM

RAM

PIO
Port B

Bus dadresse

Bus de contrle

234(

2'4

&,3

Le microprocesseur

)
6 &.(

&

6' .( '
6 .(

7$

7(

La ROM
234 62

/
La RAM
2'4 62

'

7 /

"
"

Les dispositifs dentre-sortie


8
)

"

1
!
"
6
)

"

"

)
)
(

9 (

(:

Prsentation gnrale

<=>?

6<=>>(<=>-(<=>@7 ,
(
,

<=>>

6&,' <=- ( ' ,' <=@>( : 7


6&

( (A

(:7

<=>?
8

43B

, ;>

<=>? $

<='>?

<=#>?

Architecture interne du 6809

&
=
6

6
7(

) 7!

<=>?(

4' 6

<
<=>?

<; % 6- <7 .

(
<=>?

<=>?
)

9 (

(:

6C("()(: 7

6/D( 3. ( E32( : 7

)
)
"
"

!
6

$
"

)
8

Registres internes du 6809


<=>?
6

0-7

Accumulateur B

Accumulateur A
Compteur-Programme PC
Registre dindex X
Registre dindex Y
Pointeur de Pile Systme S
Pointeur de Pile utilisateur U
Registre de page DP
Registre dtat CC

Figure n2

Les registres sont les suivants :


Accumulateurs A,B,D

<=>?

<

'

Registres dindex X et Y

)E

<

Pointeurs de pile S et U

<=>?

J&

<

"
,

<

6.

B
E

2'4

J&

Compteur programme PC

<
)

7 ,

Registre de page DP

&

'

<=>?

'

& &

&

-@<
9

&

&
62

<=>>(

&

>

Registre dtat CCR (Condition Code Register)

!
" #

$ %

" #
'

&$ %
(

Bit C (Retenue)

Exemple : Addition

'

' MN->

'

'
)

'

C=1

N->

! NA>

1111 0000
0010 0000
1 0001 0000
(

-=

/)

1 C 1-( 1

1-

<

C
,

+,

+*

1- 7(

B 6

1
7

1- 61

3
1

1-O
'

Bit V (Overflow dbordement en complment 2)

)
-

"

-= C -H
L

>
Bit Z (Zro)

,
>
Bit N (Ngative)

,
P

(1

(
>

Bit H (Demi-retenue)

#(
;
>

@ 3

#(

>

<

> ?

! > >( >

>>(

> (

>(

(
*

<Q6>

>7-

*
''
'

! "# $ % &
<
C @

'

'

> >
C > >
> >
>

'

<

(
(

>
C> >
>>> >>>

Bit I (Interrupt Mask Masque dinterruption)

,2P 3

6L

Bit F (Fast Interrupt Mask Masque dinterruption rapide)

(
+

A,2P

'1

>

32

6L

7 '

)7

Bit E (sauvegarde des registres internes dans la pile)

,2P

A,2P(
(

'

&

>

)
)

Les modes dadressage


<=>?

3
F

<=>?

1. Adressage inhrent (ou implicite)

(
)
/)

/)

2'(

2#(,1 '(,1 #( B2'( B2#

DA2 '( &

'

&

&BOB '(#(E

'(#(E

2. Adressage immdiat
(

/)

' MN -

N >
SM

/)

E MN/>>>

'
)

<
N/>>>

)E

!
)

&

&

N/>(

&!

LDA #$E0
TFR A,DP

Transfrer le contenu de A vers DP

3. Adressage direct
(

= B#

4B#

&
&

&
-@<

/)

'

( &

' N>>

'

63

&

N >>>

N >7

4. Adressage tendu
(

/)

' N/>>>

'

N/>>>

5. Adressage tendu indirect


3
8
[]
/)

' [ N/>>>]

'
N/>>>

N/>>

6. Adressage relatif court


)

!
+

C -H 6N HA7

/)

T -= 6N=>7
6& 7

Adresse

Contenu

Etiquette

$8000

B6 E0 00

LDA

$8003

47

ASRA

$8004

24

03

BCC

PAIR

$8006

B7 E0 0A

STA

$E00A

$8009

B7 E0 0B

STA

$E00B

$800C

3F

PAIR :

Code op. Oprande

Commentaires

$E000

Si la retenue est 0, un branchement est


effectu Ltiquette PAIR. On se dplace
de +3.

SWI

7. Adressage relatif long


)

(
)

)
3

+
T5-H<= 6N=>>>7

C5-H<H 6NHAAA7
6& 7

/)

&',2

$B

>(

6
3

'' ()* +

&

"#

"

)E

G$

"

B$

"

& 6

P
"

)7

"

6" < C @7$

"

6"5-H<= C5-H<H7$

"

'( #

, )

! *

"#

( #$

6E(G(.
, )

B7

!
(

6 22>> >>7

22

/)

!E

>>

!G

>

!.

!B

>

'

3
'<

=;

'

(E

'
E

( ()

/)

( )

(( !

'

>

'/

(E

=;

, )

! *

"#

(
)(

"#

(
@

7(

( (
6

-7

)(
6

-7
)

)
/)

<

! "#
$'
$
()
"%
* +
+ %%
!.
#,, %
)
)
%/** %
!.
*%
, %# ,
0&

%&
%
*
,
.
)
%
.
.
*%

&

"#

* .

0 12

-3
526 7 1

. )(
6

-7

/)

*
.

3
.

/-

"#

(
<

6
/)

(
=

*
-

* .

0+ 2

-3
526 7 0+

% )(
(

7
!

'

3
'<

=>

'

(EC

'
E ,

'<

'

(ECC

.
'

E ,
'<

=-

'

("E

=5

'

(""E

! *

"#

'
E

, )

'
E

'<

#(

00

- 0

- 0

--

"
'(#

<=>?

&
'

'

22>>

'

22>> >

'

>

22> >

! "# $

'

3
'<

=@

'

#(E

'

6E7 C 6#7

, )

! *

,)(
(

*
/)
LDA

"(

,
)

0
=

<

&
!
$F0,PC

Charger laccu. A par le contenu de ladresse : (PC) +

$F0

->

Jeu dinstructions du 6809


3

<>=>?

",
",
",
",
",

"

",

1. - Instructions de transfert de donnes


!
"

<=>?$

"

"

11

( ()

23

45

' (

,)(

)(

+
2

23
/)

! /EU '( &


2

45
/)

2-

2-

! DA2 (E

11

( ()
0 6

' (

$ 7 , -

,)(
40 (

)(

(#

$ ( 8 -

Instruction

Fonction

LD

la donne en mmoire est charge dans le registre spcifie

ST

Le contenu du registre interne spcifi dans linstruction est


transfr dans lemplacement mmoire indiqu.

/)

!
' N >>>

'

BD' N->>>

1
/1

( ()

(
0

N >>>

'

' (

'

N->>>

# " )(

")# -

")# ")# 9 ")#

6
9

7
1

b7

b6

b5

b4

b3

b2

b1

b0

PC

U ou S

DP

CC

V
+

(
&

<

(
)

--

/)

Instruction

Fonction

PSH

Empilement de(s) registre(s) dans la pile.

PUL

Dpilement de(s) registre(s) de la pile.

!
&BOB MNAA

-5

ssss - C

CC

ssss - B

ssss -A

ssss - 9

DP

ssss - 8

X-haut

ssss - 7

X-bas

ssss - 6

Y-haut

ssss - 5

Y-bas

ssss - 4

U-haut

ssss - 3

U-bas

ssss - 2

PC-haut

ssss - 1

PC-bas

ssss

2. - Instructions de traitement de donnes


+

-;

"

"

"

"

11

( ()

)(7

7$
(

9 (

():
!

Instruction

Fonction

ADD

Addition du contenu mmoire un accumulateur

ADC

Addition du contenu mmoire un accumulateur avec retenue

ABX

Addition de laccumulateur B X

DAA

Ajustement dcimal de lacc. A

MUL

Multiplication de A par B (non signe)

SUB

Soustraction du contenu mmoire un accumulateur

SBC

Soustraction du contenu mmoire un accumulateur avec retenue

SEX

Extension de signe de laccu. B lacc. A

11

( ()

#,):
!

Instruc

Fonction

tion
AND

ET logique entre mmoire et registre interne

EOR

XOR entre mmoire et registre interne

OR

OU logique entre mmoire et registre interne

-@

'1

>

E32

6/32' MNAA7

1
/1

( ()

"#

(0 ( ()

#, -

(
$
9
(

Instruction

Fonction

ASR

Dcalage arithmtique droite.


Les bits sont dcals vers la droite. b0 est transfr vers C et b7 reste inchang

LSL ou ASL

Dcalage logique ou arithmtique gauche.


Les bits sont dcals vers la gauche. b7 est transfr vers C et b0 est mis 0.

LSR

Dcalage logique droite.


Les bits sont dcals vers la droite. b0 est transfr vers C et b7 est mis 0.

ROL

Rotation gauche
Les bits subissent une rotation vers la gauche. b7 est transfr vers C et la valeur
dorigine de celui-ci est transfre vers b0.

ROR

Rotation droite
Les bits subissent une rotation vers la droite. b0 est transfr vers C et la valeur
dorigine de celui-ci est transfre vers b7.

/)

232' $ 23 # $ B2' $ B2#

1
;1

( ()

( () 9

( ()

) <

"#

( ()

-<

!
,

A
2

>

/
,1

34
1/U

13&

/1

&

( ()

(( (

(
+

"

"

"

/11

( ()

( ((

"

B
$

'

-H

#,D

4 (

9$:. " ;9$:9 "

)(
10

4&

"

- " )') (# "


)

) ' (# =(

#(

4 #,): 1

-"<. ;-"<9

.--2 = "
DBD

4 (
.--2 =

/11

( ()

:(:. ;:(:9 ;:(: "

#(

"=

( ((

(
;

6 ( 1( W( L7

)
".
".

!
!

)
T -=
T5-H<=

C -H
C5-H<H
S

-=

Instruction

Fonction

BCC ou BHS

Branchement si pas de retenue


Si C=0, alors : PC

PC + N

BCC N ; LBCC NN
(ou)

PC

BCS N ; LBCS NN

BCS ou BLO

Branchement si retenue

BEQ

Branchement si gal zro

BNE

Branchement si diffrent de zro

BGE

Branchement si suprieur ou gal zro (sign)


Si (NV)=0

alors : PC

PC + N

(ou)

BLT

Branchement si infrieur (sign)

BGT

Branchement si suprieur (sign)

BLE

Branchement si infrieur ou gal (sign)

BHI

Branchement si suprieur (non sign)

BLS

Branchement si infrieur ou gal (non sign)

BMI

Branchement si ngatif

BPL

Branchement si positif

BVC

Branchement si pas de dbordement

BVS

Branchement si dbordement

( ()

( )(

)(

PC + NN

PC

PC + NN

"()
!

-?

Instruction

Fonction

CWAI

Mise zro dindicateurs dtat et attente dinterruption

CWAI #N

CC = CC and N. Ceci peut mettre 0 certains bits donc dmasquer les


interruptions.
SYNC

Synchronisation avec une ligne dinterruption

SYNC

RTI

Retour de sous-programme dinterruption

RTI

SWI/SWI2/SWI3

Interruptions logicielles
Ltat complet est sauvegard dans la pile systme.

5>

Les interruptions
P

"

(
(

"

&
)

(
)

.
3

Interruptions matrielles
<=>?

614,(,2P(A,2P7
62/B/D7

Interruption NMI (Interruption Non Masquable)


14,

/
)

43B

(
7

<=>? .

14,
0

"

14,

NAAA ! NAAA 6

NAAA (

NAAA 7

62D,7

"

)
B

14,(
)

&

NMI

1E

Sauvegarde des registres dans la pile Systme

Contenu de S

Espace
Mmoire

1 I
1F

"
"#
"'
"?
"=
"H
"<
"@
";
"5
""

'
#
&
E"
E"
G"
G"
."
."
& "
& "

0 BA
1 BS

Recherche du vecteur NMI


contenu dans FFFD : FFFC

0 BS

Excution du sous-programme de NMI

&1 -

2 3

5&

4
04

6% , -

7/

5-

8&9

6 4

?&

3 =

6 4% ,

&

>3 = %

6%

>>>
-

'

<&

@&

%%

>>>!

&

2 3

2 3

Interruption IRQ (Interruption normale)


,2P
,

,2P

,2P

7(

6 )

B7

"
,2P

NAAA= !NAAA? 6

NAAA=(

NAAA?7
"

2D,
B
(

&

<=>?
,2P

55

IRQ

I=0

1E

Continue lexcution
du programme en
cours

Sauvegarde des registres dans la pile Systme

"

)
"

1 I

0 BA
1 BS

A
B
DP
X-haut
X-bas
Y-haut
Y-bas
U-haut
U-bas
PC-haut
PC-bas

"#
"'
"?
"=
"H
"<
"@
";
"5
""

Recherche du vecteur IRQ


contenu dans FFF8 : FFF9

0 BS

Excution du sous-programme de
IRQ

5;

$ %

>

+4*

!
( $?

( $?

14*

'>

84:

H4*

(
&$ %

59.?

9(? 6 #

&&&B

CD

E
#

&&&

4* !
B4*

>

)
$ %

$ %

! (6

F4*
4*

A
) !

B5

$ %

)
3

#
3

$ %

59(? 6 * <-

B @

$ %

$ %

Interruption FIRQ (Interruption rapide)


A,2P
5
-

,2P
!& 6

26

6
7

A,2P
A

,2P P

A,2P

7(

A,2P
&

"
A,2P

NAAA<(

NAAA< !NAAAH 6

NAAAH7
2D,

&

<=>?
A,2P

5@

FIRQ

F=0

Continue lexcution
du programme en
cours

0E

Sauvegarde des PC et CCR dans la pile Systme

1 I

Espace
Mmoire
CC
PC-haut
PC-bas

1 F

Contenu de S

"5
""

0 BA
1 BS

Recherche du vecteur FIRQ


contenu dans FFF6 : FFF7

0 BS

Excution du sous-programme de
FIRQ

&1

>3 =

5<

5&

>

%
%

; >B #%

>3 =

; >B #

C #

3 =

8&

04

6%, -

'A #

7/
<&

;
?&

&

6 4% ,

'D B

D;B ( 6 %

%
@&
&

>>>
-

>>>@
'D;B (

>3 =
&

>3 =

3
4

<=>?

( )

(
:::

<=>?

! BX ,( BX ,-( BX ,5

Interruption SWI (Software Interrupt)


BX ,

)
<=>?

BX ,

5H

SWI

1E

Sauvegarde des registres internes dans la pile Systme

1 I
1F

0 BA
1 BS

Recherche du vecteur NMI


contenu dans FFFA : FFFB

Espace
Mmoire

Contenu de
S

CC
A
B
DP
X-haut
X-bas
Y-haut
Y-bas
U-haut
U-bas
PC-haut
PC-bas

"
"#
"'
"?
"=
"H
"<
"@
";
"5
""

0 BS

4 (I$
+4*

J
A
Excution du sous programme
de #SWI#
'>

CD

14:

84*

$ %

F4*

4*

>

)
B @

&$ %

)
&&&.

H4* !
4*

) !

#
@

&&&9
* <-

)
B
(I$

(I$

Interruption SWI2/SWI3 (Software Interrupt)

5=

BX ,-VBX ,5
BX ,
)

<=>?
BX ,

5?

SWI2

SWI3

1E

Sauvegarde des registres internes dans la pile Systme

1I

Espace
Mmoire

1F

0 BA
1 BS

Recherche du vecteur SWI2


contenu dans FFF5 : FFF4

Recherche du vecteur SWI3


contenu dans FFF3 : FFF2

CC
A
B
DP
X-haut
X-bas
Y-haut
Y-bas
U-haut
U-bas
PC-haut
PC-bas

Contenu de S

"
"#
"'
"?
"=
"H
"<
"@
";
"5
""

0 BS

Excution du sous
programme de SWI2

Excution du sous
programme de SWI3

;>

A3

A3

*3

'

& A3

%3

6 (

6
3

%
3

6
7

'-

,
E

F(

Bus de
donnes
Contrle
A
Port A (8 bits)
)
%.>2

Port B 0. )(Contrle
B

)"7 ): $
?) ") (
?
@9 @
? #)
? #*)
?A1

Bus
dadresse
Bus de
contrle

>

Structure interne du PIA 6821


&,'
'

0-

&,'

+
=

'

# D&

32'

32#

'!!
'
&

#
!! D & !

. >
.

62/B/D7 K
"

>(

&,'
E '

'

# D&

(
3

;-

CA1

CA2

Port A

Port B

CB2

CB1

ORB

ORA

DDRB

DDRA

CRA

Slection
de
registres

Bus de
donnes

IRQA

IRQB

Structure externe du PIA 6821


,
>? B!

>" H

&,'

S
$
>

&,'

"

-(> -( -( - =

-( -( -(+
>

>

.+ .

6 2'-( 2#-7
U

2B>

)
'>

2B

&,'
'

;5

), #

* #) ()

( ?
-

/
<=>?
9C &

)(

-&

4 0 )()#) ()
A3 4
D

,2P( A,2P

14,

"
,2P'

,2P#

,
&,'

>?

B!

=
+
2'

>?

B!

>?

)(

"()

2#

!
Y 6 2'H" 2#H7 /

+
Y

+
5(;

Y
/

(
Y 6 2'<" 2#<7

;;

CA1

IRQA

D0-D7

Ampli.
Bus de
Donnes

Registre
de
Contrle A
(CRA)

Registre
dentre
du bus

CS1

Slect.
de
Botier

Registre
de
Sortie B
(ORB)

/CS2
RS0
RS1
RS2
R/W
E
RESET

CA2

Registre de
Sens de
transfert
(DDRA)
Registre
de
Sortie A
(ORA)

CS0

Contrle
Dinterrup.
Port A

Interface
Avec la
Priphrie
Port A

Interface
Avec la
Priphrie
Port B

PA0-PA7

PB0-PB7

Registre
de
Sens de
transfert
(DDRB)

Slect.
De
registres
Registre
de
Contrle B
(CRB)

CB1
Contrle
Dinterrup
.Port B

CB2

IRQB

;@

>

A3

;
&,'

2'

2#

<=>?(
2'-

2#-

&,'
.
9

F
*

<

;<

'

.
L

1
(

+
:

;H

F &;

'-"' @
&,' 6'

1
&

1
&

1
&/

D
F

/
5
E

E
!
!

5
E

E
!
!

D
5

;=

(E#

#),

2'>
'

2#>

2'

# 6

(
2#

'

0-7

- .

$ %. 5$ %96

- 9
6

H6

"

>

5$ %96

6
$ %.
G

>

-.
5-9
!

"

"

>

>

- .H5- 9H6
>

-.
5-9
!

"

>

5$ %96

$ %.
G

>

-.
5-9
!

"

"

>

;?

>

- .H5- 9H6
>

-.
5-9
!

F5 &

&

"

2'H 6 2#H7

>

&.

32' 632#7
"

' 6 # 7

6 2'>Q>

2#>Q>7(

&. ,2P' 6,2P#7

K(

2'> 6 2#>7

2
2E- 6EQ'

#7

2E 6 2E-Q>7

(E#

#),

2E@ 6EQ'

2B>

32E 6 2E-Q 7 6

07

#7

E-

" 2E@Q

7
Y 7

' 2 +>7

#-

2'5
,2P'

2';

2#5

,2P#

2#

'-

" 2E@Q>

'-

2B

#- 6

057

$ %. 5$ %96

@>

- .

9
9

5-

9 6

"

>

5$ %96

$ %.
G

>

-.+
5-9+
!

"

"

>

>

- . 5- 9 6
>

-.+
5-9+
!

"

>

5$ %96

$ %.
G

>

-.+
5-9+
!

"

"

>

>

- . 5- 9 6
>

-.+
5-9+
!

F8 &

D5

&

"

2'< 6 2#<7

>

&.

32' 632#7

"

'- 6 #-7

6 2'5Q>

2#5Q>7(

&. ,2P' 6,2P#7

K(

2'5 6 2#57

(
)

' 2 +7

"

" 2E;Q

" 2E;Q>

"

5- 28? 6

-.+

-9+

5- .1

- 916 *

1
-2+

"

5- 28? 6
(

'

'

&.
'
"

'-

'

&.
"

#-

&.
#

"

2E5
2E5Q>

'E-

6>7 *
6 '

" 2E5Q

# 7

E-

#-

'-

6>7

&.

6 2'@Q 7

6 2';Q>7
'-

'

'

'

>

@-

>

>

'

2'H

'

&.
32'
>

'

'
/

&,'

&.

&.
32'

#-

6 2#@Q 7

6 2#;Q>7
#-

>

>

>

'

2#H

&.
32#
>

'

' -

/
&,'

&.

&.
32#

@5

% A3

,
%--

C 4C
%

A1
4

<

"

@;

&

' ,'

<=>?
(

"

6=

"

6;

?
6

' ,'

"

(: 7

!
7(
7(

!
"

! D)

"
"5

! 2)
Y

(
(

V
Bus de
donnes

)"7 ):
- )
"
: C
K

)
%.>2

%. >

Bus
dadresse
Bus de
contrle

>

@@

Structure interne de lACIA 6850


' ,'

0)

E '

&,'

&

(
3

'9! & 9
(

'! &
(

%
(

'; & ;

,!
( F

,2P

TDR

D)

B>
B

CR

B-

2B

2DB
DB

SR

>" H

2VX

RDR

2)

@<

Structure externe du LACIA 6850


,

>? B

>" H

# ()

F()

' ,'

>

0 7)"

# (8

' ,'

"

-(> -( -( - =
-( -( -(+
# ()

>
. .

!
,)(

,)(

# (-

2VX
' ,' .
Y
U

2B>

2B

'>
(

2VX

), # * #) ()
/
<=>?

@H

( ?

)(

9C

)(

"()

,2P $ A,2P

14,

"
,2P

,2P

,2P
,
!
"

D) 6

"

2) 6

7!

7!

Y
' ,'

Y
6 DB !
62DB ! 2

D B

7(

D B
6

7(
!

9; ' 6

9 ;
(
4

' ,'

7
4

DB

3
1

%
(

9; '
Y

9 ;

@=

! ! '!

4
1

!
"

D) J6

"

2) J6

@?

CA1

IRQA

D0-D7

Ampli.
Bus de
Donnes

Registre
de
Contrle A
(CRA)

Registre
dentre
du bus

CS1

Slect.
de
Botier

Registre
de
Sortie B
(ORB)

/CS2
RS0
RS1
RS2
R/W
E
RESET

CA2

Registre de
Sens de
transfert
(DDRA)
Registre
de
Sortie A
(ORA)

CS0

Contrle
Dinterrup.
Port A

Interface
Avec la
Priphrie
Port A

Interface
Avec la
Priphrie
Port B

PA0-PA7

PB0-PB7

Registre
de
Sens de
transfert
(DDRB)

Slect.
De
registres
Registre
de
Contrle B
(CRB)

CB1
Contrle
Dinterrup
.Port B

CB2

IRQB

<>

>

% 3
' ,' 6

057

(9
' ,'
.

D 2/

7
(

D) (

BD3& .

BD'2D
6

*
BD3& '

(
+

D 2/(
(

7
(

(
F
62) 7
' ,'
2 2A

F B
7(

' ,'

=
$

+
*
F

<

;
' ,'

)
2VX
' ,'

<
9

.
(

M
I

<-

9
'-"'

' ,' 6'


9
4

F &;

7
$

1
&

% 3
S4

>5

<5

7 4

2
2> 2 Q
Y 64'BD/2 2/B/D7

' ,'

2/B/D

GH>/

4
7 /
' ,'

V
(

BD3&(

6,2P7(

E
-

E
6

% 3
6

;B

+G B

#
E

9;

E
,

'

6
(
(

(
(

' ,'

&

2
>

<;

>

>

>

9
%
>

9%
;

' 5# 8

<(
6

BD3&

F7 !

&

<@

>

>

>

>

>

>

>

>

>

>

>

&

&

<<

>

' ?
Y

&

(
+
(

#2/'% 6

2DB

!
2

<

2DBQ>( ,

>

>

2DBQ>( ,

>

2DBQ ( ,

>

2DBQ>( ,

J
6

<H

' ,'

2< 2@Q >

'- H6
HQ

2HQ>

!
(

>

<=

<?

(
6=

DB
B2> ! 2 2A 62
.
F

!2

,
2 2A P

7
>(

2 2A >
B2 ! D 2/ 6D

!2

H>

D 2
B2

>
B2

B2- !

2< 2@Q>

7
(

(
8

B22HQ
B25 ! DB 6
DB
+

D B

B2; ! A/ 6A

!,

7
DB

P
D 2/

!/

>(

7
(

F(

+
(

B2@ ! 3L21 62

7
F

,2P
S>

2)
B2< ! &/ 6&

!/

7
S

B2H ! ,2P 6,

7
,2P D
,2P

,2P

H-

0
0

H A3

F&

% -A3 '

6 ,

A3 '

"

#
?
#

4A 8 &

" >

--

3
A

< 0!;
'#
?

A3

&
"0

"05

'3239(
'!0

3(

"0
A3 &
!!

& "0<
& "0<

F5 &
'<
/

#
?

'#
?

'< ;D( 3
%

;D(
* C

A3

&
"0

"05
*

'3239(
'!0

3(

A3 &
!!

& "0<
& "0<

*0

"0 5
6

4A

<*

@#

0!; 4A

*A

F8 &

H5

% --:

4 '

# ,

% ,

,
*

'#
?

"0

A3

'3239(

"05

'!0

&

3(

A3 &
!!

& "0<
& "0<

*0

"0 <
'

( 4 % --

0!

F< &

4
'A @(
'A @(

3 7

4 #

#
?

%
"0

&

'3239(

"05

'!0

3(

"0 ?
A3 &
!!

& "0<
& "0<

*A

4 % --

F? &

% -4

"0

,(

A3

"05
*

'
'#
?

,
%

4 '

&

'3239(
'!0

3(

A3 &
!!

& "0<

H;

& "0<
*0

"0

+6 -.

16 '

-.+

-.+ 5

)6
5

86

)
-

' -

4 % --

(
0!

F&

( 1

4
,

4%

' #

'#
?

"0

A3

'3239(

"05

'!0

&

3(

A3 &
!!

& "0<
& "0<

*0

"0

+6 -3 #

-.

16 (

-.+
'A

0
(

#A

-.+

(
4

--

F@ &
<

'

A3

(
5( =

#%

'

8( =
--

A3 5

%
;

0;09

# %
C

% --

H@

3239

!0

& "0 0
<. = <.1

@ *' (

<.8 = <.H

-. ;-.+

H<

9A & A
0

% A3

&

.
(

&'> T &'H

7 /

)=
>

&#>"&#H

(
(

+
A3

"0

#- '

-7 2

'- #
L

A3
'#
?
"0

"0

A3

@
&

'3239(

"05

'!0

P
A
0
P
A
1

3(

'

'-

P
A
2
P
I
A
#

#-

HH

A
7

P
B
0
P
B

* -.
* -.+

1
P
B
2

P
B
7

9A5 & I
&,'
/)

H
0!

&,'

)
H

N> NA(

N>

&,' D

N/-'>
>(@

)()

($

"

(<$

H=

!
9
H

"

".
"B

"B

N/ > 6

N/->>

A3 &
!!

& "0<
& "0<

!! D+ D & "0< 5
D

& "0< 8

/)

N/-=>

0-!

&,'

T
)

A7

>

H
'6

7 6&'>"&'57

N/-'>(
#

"B

"B

&

N/- >

)()

N/ >> 6

'7

N/->>

($

"

(<$

H?

!
9
H

"

".
*

A3 &
!!

& "0<
& "0<

!! D+ D & "0< 5
D

& "0< 8

=>

9A8 & A3
/)

0 ! &,'
,2P

!
7 .

)
&,' 6

'

6&,'D=7
' 7

N/>/>

&#>"&#<

-7 .

!
/ B

&,'D-

! &';"&'H
/ B

57 .

! &'>"&'5

"

"

"

'

&,' !

A3 &
!!

& "0<
& "0<

!! D+ D & "0< 5
D

& "0< 8

4 ;$4

)) "

##J#

K 7

=-

$3

()

( )

4 % $ L #( J( M '')7 ,

()

0@9 0 9@-

=5

9A

&9

1) Introduction

!
"
"
"

67

+6 7

&

"

@ 4!

"

"6 4

' ,'
"

"

' ,'

2) Donnes techniques

4 >?#

' ,'

&9

&

& 9; H 9; ! !

'6

*J

(
C

"
9

"

E
0

% 3

"

-(

'
-6

"

4%

& "0@

' +G B (

& "0@

' +G B (

& "0@

' +G B (

& "0@

' +G B (

&

=;

3. Sous-programmes

"

+
+

!
"

"

)()

"

2Y

"

)()

"

() $
"

"/
85 !
"
)()
(
N>>>
NAAAA
"

E# $
E

"
"

-Q 4O9

>(@

)()

() $

!
! N/->5
! N/-><

'
'

Y
/

""

/ ',

#
<

4
'*.$

(I$

=@

8 8 3239

"

)()

"

E# $

"
"
"

"

)()
'7 Q

6'

!
' ,'(
Y

() $
Y

!
! N/ ->
! N/ -'

'
'
6'

,1,D' ,'7

'

8<

$ $:.-$.

19 J

"

)()
(
6' '7 Q

"

E# $ (

"
6'
6'

)()
'7 Q
#7 Q

() $

'
/

! N/-->
3.D O

4. Programme

'

(
#'.

Z
Z

=<

<
/
H

! 62)7 Q > AA
+

C> > >

<5

/
+7

6
'B ,,7

7( ' 6

<8
4

Y ! [>>>

<< D

>>>

[>>>

% C

&
D

N>>

>>
)

"
"

>>>

+
+

=H

==

0
0

&

7 /)

9
6'( & (

6 3 H> >>
G>
GH >
@
4

H>

@
-7 /

0
7 /

&
9

6 3 H> >>
GH>
4

H >>>
GH >

45
GH B
4

H>
.
[H >>>]

N H >>>
GH;

@
@
4

N&

=?

-7 /

&

B
D

&

';B2) (

7 /

<=>?
)

6=>;>7O

S2

6=>; 7O

)
S;

6=>@>7O 3

S
6=>;A7O

7
7
7

) 6E !

-7

)7
* 6

&

N=>>>

?>

"

<
M

"

<

"

<

o
c
t
e
t

>

1
"

o
c
t
e
t
0

&

N/>>> "

N/>>A N/>-> T N/>-A


7
7
7

) 6E !

-7

)7
* 6

&

N=>>>

&

N/>-> T

N/>-A N/>>> " N/>>A


7
7
7

) 6E !

-7

)7
* 6

&

N=>>>

?-

Exercice :
.

N/>>>

N/>>A

6
N>>>>7

N>>>> 7

/)

"

N>>>>

"

N>>>

"

N>>>-

/)

';B2) (

<=>?
<
6=>5>7O

! 1Q1O1

4Q4O4

6=>;>7O

6=>@>7O 3

S
6=>;A7O

7
7
7

) 6G !

-7

)7
* 6

&

N=>>>

?5

"

N
H

8
"

N
L

"

M
H

<
"

M
L

<

"

<
>

o
c
t
e
t
2

"

S
H

?;

c
t
e
t
1
S

"

o
c

<
>

t
e
t
0

A
D

?@

'

?<

?H

0
0

'

&

(
(

(
6 34&D

&

-7 /

# %

# %-

)
+

.#)*

6 3 H> >>
GH>
4

H >>>
GH >

45
GH B
4

H>
.
[H >>>]

N H >>>
GH;

@
@
4

N&

?=

Instruction
A deux octets

Code opration

Donne ou adresse ventuelle

Instruction
A un octet

Instruction
A trois octets

Donne ou adresse ventuelle

??

Bus de donnes interne (8bits)

&

&

'

RI

Dcodeur

Squenceur

Unit de commande

>>

Accumulateur B

Accumulateur A
Compteur-Programme PC
Registre dindex X
Registre dindex Y
Pointeur de Pile Systme S
Pointeur de Pile Utilisateur U

Registre de page DP
Registre dtat CC

>

!
D

!
65 (77

"2
"

" /)

6 !

7
(7

>

!
6& 7
F

=
6

'

,2

!
.

,2(
)

,
)
)

>-

D$ H

6 4 .92
42279

>
!

4 .G
%

4
'

%
0

9 *

&

4 .92

.)

. D4

9?0

9?0

2?0'

2?0'

! H

6 4 . -. " ;. -9 "
4 .--2 .--27"7-

>
!

4 .G

>

>

- *
%

4
'

%
0

&

4 . -. O0+

.)

. D4

.?0

.?01

-?

-?

!! H

4
6 4.

9 " ;.

"

4 .--2 .--27"

>
!
3

. " ;.

4 .G

*
%

4
'

&

>5

4.

.)

. O0+

. D4

.?0

.?01

2! H 09

6 4.
>

4 '!!
3
%

'

9 " ;.

-- O

. " ;.

P.

&

.M.

.
N

'

&

-,

>

%
0

4.

.)

. O0 &

. D4

.?0 +

.?0 +

; H!

6 ,

6 4 .(*. ;.(*9 ;.(* "


>

4
/

5. 9 "6

4
3 *

3
H)

>

4
'

&

>

%
0
.)

4 .(*.
4

. D4

.?0 +

.?0+8
-? ; ? ; ? ;N? ?

>;

; H!

6 ,

6 4 .(*. ;.(*9 ;.(* "


>

4
/

5. 9 "6

)
%

.)

4
'

&

4 .(*.
4

. D4

.?0

.?0-? ; ? ; ?

HD
6 4 9--

4 '

;*9-D

5
<

5
<

>

4 ( -?

4 <- <- 7

<- <- 7

>@

4(

>

>

= +
3

<-

7 +H

>
>

8Q

'

%
0

&

4
.?0+
-"<. O0

-? 50+ R0

9-- ':$%
* . O0 +
KKKK
' #4

O0&

D ;HD

6 4 9-(

;*9-(
D

5
?

5
?

>

4 ( -?

4(

4 <- <- 7
-

>

<- <- 7
3

<-

>+

'

&

><

4
.?0
-"<. O0+

-? 50

S0+ 6

9-( ':$%
* . O0 +
KKKK
' #4

O0&

D0= H D
6 4 9'%

;*9'%
D

D
0
5

>

4(

4 <- <- 7

4(

3 >

5 ? 6
>+6

'

<- <- 7

&

4
.?0
-"<. O0

? 50

?0

9'% ':$%
* . O0 +
KKKK
' #4

O0&

DL0 H D
6 4 9L'

'

;*9L'

>H

L
0

D
L
0

>

4 ( 5 N6 ?

4 (

4 <- <- 7

<- <- 7
3

3 >

>+6

'

%
0

&

4
.?0+

N? 50+ R0 6

-"<. O0
9L' ':$%
* . O0 +
KKKK
' #4

O0&

DL9 H D

'

6 4 9L:

;*9L:
D

D
L
9

5
0

>

4(

75 N6 ?

4 <- <- 7

<- <- 7

>=

4 (

3 >

>+6

'

&

%
0

4
.?0+
75 N6? 50+ R0

-"<. O0

9L' ':$%
* . O0 +
KKKK
' #4

O0&

DJ3 H D

'

6 4 9,$

;*9,$
D

D
J
3

5
5

>

4(

4 <- <- 7

7- ?

<- <- 7

4(

J
7

>+6

'

3 >

&

>?

DJ; H D

'

6 4 9,(

;*9,(
D

<

D
J
3

5
<

>

4 <- <- 7

4( -?

>9--

'

<- <- 7

&

D39 H 9
6 4 9$:. " ;9$:9 "
$

'

9
$

>

.
9

&

'

:
9

>

4 .--2

4*

"

--

! ;

4
'

&

>

'@

9$:

.?0-F

9$:. O0B

.?0-F
?

D 0HD

6 4 9*'

'

;*9*'
D

5
>

5
>

>

4(

75 N6 ?

4 (

!
>+6

4 <- <- 7

<- <- 7
3

3 >

'

&

%
0

4
.?0
75 N6? 50

-"<. O0+

S0+ 6

9*' ':$%
* . O0 +
KKKK
' #4

O0&

HD

6 4 9,$

'

;*9,$
D

5
?

5
?

>

4(

4 <- <- 7

>9-(

'

<- <- 7

&

D ;HD

6 4 9*(

'

;*9*(
D

5
8

5
8

>

4 <- <- 7

4 ( -7 ?

<- <- 7

4 (

3 >

>+6

'

&

D 9HD

6 4 9*:

'

;*9*:
D

5
!

5
!

>

4(

N?

4 <- <- 7

4 (
7

<- <- 7
)

3 >

>+6

'

&

D 3HD

6 4 9"$

;*9"$
D

5
D

>

4(

4 <- <- 7

<- <- 7

4(

>+6

'

3 >

&

D20 H D
6 49 '

-;*9 '
D

2
0

D
2
0

>

4(

4 <- <- 7

<- <- 7

4 (

5 ? 6

3 >

!!

>

+6

'

&

%
0

4
.?0
-"<. O0+

? 50

0+ 6

9 ' ':$%
* . O0 +
KKKK
' #4

O0&

DA H D

6 4 9<*

;*9<*
D

D
A
5

>

4(

4 <- <- 7

<- <- 7

4(

3 >

>+6

'

&

HD
6 49 .

;*9 .
D

>

4 <- <- 7

<- <- 7

>

>+6

'

&

D 2H2 2D
6 49

;*9
D

<

>

4.

'

&

D; H D

6 4 9(

;*9(
D
;

>

4 <-* (

<-, ( +

<- <- 7
!
@

<- <- 7

CD

>

!
>+6

'

&

DI H D
6 4 9N-

;*9ND

D
I
5

>

4 ( N?

4 !!

<- <- 7
3

>

>

'

<- <- 7

&

DI H D
6 4 9N-

;*9ND

I
;

D
I
5

>

4 ( N?

4 !!

<- <- 7
3

'

<- <- 7

&

4M
6 4 -* . ;-* 9 ;-*

"

'

&

&

&

"
-

&

.
-

&

4 .--2

>

6 "

4*

>

4
'

&

>

AH

6 4 -"<. " ;-"<9 " ;-"<

"" ;-"<2 "" ;-"<T "" ;-"<

"" ;-"<(

"
$

'

&

'

"
<
.
-

"
<
9
"
<

1
"
<
(
"
<

1
"

<
2
"
<

->

T
-

>

4 5 6 = 5"6

4-

--

6 *

4
'

&

H
6 4 -/". ;-/"9 ;-/" "
$

'

"

"
-

"
.
-

"
9

>

4 .--2 .--2

4*

6 " "

>

4
'

&

>

G 3H

6 4 --I.$ O0
$

.
$

O
0

>

4 --

--

--

4 !!

! E

!!

4 5

0 6

'

&

CD

H N
6 4 ..
$

>

4. . 7
-

4
%

!
4

,?

4
%

!
4

-?

4* !
!

)
.

#
$

-5

>. -

9-

9-

4
'

&

!0 H !
6 4 '-. ; '-9 ; '- "
$

'

H
'

"
8
'

.
F
'

>

4 .--2 .--2 =
4*

6 " "=

-;

4
'

&

IB

"

H 10

6 4 '/ . " ;'/ 9 "


$

'

'

&

'

.
'

>

4 .--2 .--2 "

4 '!!

2/

4
'

&

>

-@

0$L H 0
6 4 '2L

+
$

'
'

2
L

>

4' 3

'

!
&

& 0$L #
!A

32 H 3
6 4 $ -. ;$ -9 ;$ - "
$

'

-<

H
-

"
$

8
-

.
$

F
-

>

4 .--2 .--2 7

6 " "7

>

4
'

&

IB

"@>#

K AH;
6 4 U"< "
'

-H

"

'

'

'

<

"
4 <- .

>

"

<-

>

'

&

K; H ;

6 4 U( "
'

"

>

( = <-* ;( =+ <-,

<- .
!

4 -3

<-

>

"

!D
!!

)#

-=

'

&

!H

%
6 4 * . ";* 9 " ;*

"" ;* 2 "" ;* T "" ;*

"" ;* ( "
'

&

'

&

'

&

'

'

'

&

'

'

'

'

'

'

'

.
*

9
*

(
'
*

'

'

*
'
2
*

-?

'

>

4 .--2

4*

'

'

'

"
3

4
'

&

>

0 H

6 4 *'.2 ";*'.T " ;*'.( " ;*'.

"

'

.
(
*

'

'
.
2
*

'

5>

.
T

>

4-

!!

0 $

4
'

&

0 O --

%
0

"

&

P 0 ;

0 1 % --

$ B"0

0 $H #
$
$B"0
PB

; H!

6 4

6 4 *(*. ;*(*9 ;*(* "


$

'

(
*

"
*

(
*
.
*

(
*
9

>

4
/

5. 9 "6

4
3 *

3
H)

> $

>.(*

4
'

&

IB 2
%

& B"

;
N

B" 5

>

; H!

6 4

6 4 *( . ;*( 9 ;*(
$

"
'

5-

"
*

.
*

>

4
/

5. 9 "6

!
*

>

4
'

&

55

& B"

B" <

1 H
6 4" *

"

>

.@9

4"

95

4
'

&

B@
%

& B" @

!B"

DB"5

5;

20L H

45
6 4 'L. ; 'L9 ; 'L "
$

'

"
*

.
*

>

4 .--2

= .--2

6 "

"

>+

4
'

&

IB

"

IB

5@

2 AHA

6 4 /<
$

<

>

4 .

!!

'

&

H 1

6 4 / . " ;/ 9 "
$

'

5<

&

'

/
.
-

4 .--2 .--2 /

>
!

4 *
/

'

"
--

#
%

&

/ .M/ 9

/ -N

'

&

>
-3

A;J H 0

7/

6 4 <(,

;<(, O0
$

<

5H

,
(

<

(
,

4((=

>
!

4'

CD

5(6

5 6

4 <- KKK --

<

>

;
3

%
'

&

/)

! .QNHA/=

&BO. '(E

E NHA/<VH
' NHA/@

&BO. MN--

A1 H !

.QNHA/@

7/

5=

6 4< *

;< * O0
$

<

1
F

*
(

<

1
H

4((=

>
!

CD

5(

6 *

5(6

5 6

4 <- KKK --

<

>

;
3

%
'

&

5?

/)

! .QN;5

&. .

2('(E

.QN;5 @

&BO. MN-5

N;5

N;5 -

'

N;5 5V; E

4
6 4 /*. ; /*9 ; /* "
$

'

H
/

*
8
/

*
.
F
/

*
9

;>

>

4
/

5. 9 "6

4 '!!

)
! >

&

-5

4
'

%
@
%

&

D
,

& DB"

/ & DB" 8

B"

B" 8

4
6 4 / .; / 9; /
$

"
'

H
/

8
/

.
F
/

>

4
/

5. 9 "6

4 '!!

)
! >

&

-5

4
'

&

D
,

& DB"
B"

/ & DB" <


B"

;-

93 H

%
6 4 :$
$

1
:

>

4 5(<6 --

4 . D
* --

5'? 6

4 <

'

&

9; H

5'? 6

-- #
,

'

)
N

*
6 4 :(
$

;5

1
:

>

( <-* ;( 7 <-,

<- .
!

"

4 * <U(

CD

>

&

;D H ;

!!

9(

'

6 4(9-. " ;(9-9 "

'

(
9

&

'

;;

4 .--2 .--2 = "

>
!

4 (
3
%

>

>

- *

4
'

&

%
0

4 (9-. 0 1

.)

. D4

<?08F

<?08F

9?01F

.?01

--?0

--?0+

08F 1 4 0 1

08F 1 40 1

;D H ;

6 4(9-. " ;(9-9 "


4 .--2 .--2 = "

>
!

4 (
3
%

- *

4
'

%
0

&

4 (9-. 0 1

.)

. D4

<?08F

<?08F

9?01F

.?01

--?0

--?0+

08F 1 4 0 1

08F 1 40 1

;9 H ;

6 4 (:. ";(:9 " ;(:

"" ;(:( "" ;(:

"" ;(:2 "" (:T "

;@

'

&

'

&

'

&

'

&

&

&

'

.
(
:

9
(
:

(
:
(

&
(
:

&

&

&

&

&

&

&

&

&

2
(
:
T

>

" .--2

4*

4
'

&

;<

>

'@

4 (:. 0'

;1D H ;

4%

6 4 ( 9. ";( 99 " ;( 9

""

'

&

'

9
.

9
9

(
1
9

>

.--2 .--2 "

4*

4
'

&

;H

'@

4 ( 9. 0'

;G 3 H 3
6 4 (I$
$

1
&

9
.

(
I
$
+

1
&

(
I
$
1

1
&

>

.--2 .--2 "

4*

CD

!
)

;=

'

&

;?

;O2 H ;7

6 4 (T $

(
T

>

. A

4*

'

&

9> H 9

6 4 :&

4
+
$

@>

:
&

>

&

'

&

9;9 H 9

6 4 :(:. ;:(:9 ;:(: "

'

(
:

(
:
.

:
9

>

.--2 =

4*

!!

>

4
'

6 "

&

@-

@5

Bus de donnes

Instruction

Instruction
Dcodeur

@
PC

Commande
De Lecture

&

CPU
Mmoire
Bus dadresse

@;