Vous êtes sur la page 1sur 19

Pr

.E
LB
OU
A
02

TM
AN
I
Pr
.E

8 TD N°1
LB
OU
AT
M
AN
I
8
Pr
.E
LB
OU
AT
M
AN
I
8
Pr
.E
LB
OU
AT
M
AN
I
2
Pr
.E
LB
OU
AT
M
AN
I
2
Pr
.E
LB
OU
ATM
AN
I
2
Pr
.E
LB
OU
AT
M
AN
I
2
Pr
.E
LB
OU
AT
M
AN
I
2
Pr
.E
LB
OU
AT
M
AN
I
Pr
2

.E
LB
OU
AT
M
AN
I
2
Pr
.E
LB

2
OU
AT
M
AN

1
I
2
2
Pr
.E
LB
OU
AT
M
AN
I
2
Pr
.E
LB
OU
A

1
TM
AN
I
2
Pr
.E
3

LB
OU
AT
M
AN
I
2
Pr
.E
4

LB
OU
ATM
AN
I
2

Pr
.E
LB
4

OU
AT
M
AN
I
* Programme qui détermine le nbre d'elts < $0F
* *********************************************

I
org $0100
DC.B $05, $13, $0A, $E3, $F1, $22, $21, $50, $50, $31, $A0, $F3, $0F, $22, $12, $05

AN
org $2500
move.b #$00, D0 ; compteur
move.w #$0100, A0
lab3 move.b (A0), D2
cmp.b #$0F, D2

M
BLS lab1 ; Branchement less or same (nbre >0)
bra lab2
lab1 add.b #$01, D0
lab2 add.w #$01, A0

AT
cmp.w #$0110, A0
bne lab3

SIMHALT ; halt simulator


OU
END $2500

* Programme qui détermine le nbre d'elts > $F0


* *********************************************
LB

org $0100
DC.B $05, $13, $0A, $E3, $F1, $22, $21, $50, $50, $31, $A0, $F3, $0F, $22, $12, $05

org $3000
move.b #$00, D1 ; compteur
.E

move.w #$0100, A0
lab3 cmp.b #$F0, (A0)
BHI lab1 ; Branchement high (nbre >0)
bra lab2
lab1 add.b #$01, D1
Pr

lab2 add.w #$01, A0


cmp.w #$0110, A0
bne lab3

SIMHALT ; halt simulator

END $3000

Listing # 01 #
* Programme qui détermine le nbre d'elts < $0F et > $F0
* *****************************************************

I
org $0100
DC.B $05, $13, $0A, $E3, $F1, $22, $21, $50, $50, $31, $A0, $F3, $0F, $22, $12, $05

AN
org $1000
move.b #$00, D0 ; compteur
move.w #$0100, A0
lab3 move.b (A0), D1
cmp.b #$0F, D1

M
BLS lab1 ; Branchement less or same (nbre >0)
cmp.b #$F0, D1
BHI lab1 ; Branchement high (nbre >0)
add.w #$01, A0

AT
bra lab2
lab1 add.w #$01, A0
add.b #$01, D0
lab2 cmp.w #$0110, A0
bne lab3
OU
SIMHALT ; halt simulator

END $1000
LB

* Programme qui détermine le minimun de la liste


* ***********************************************

org $0100
DC.B $05, $13, $0A, $E3, $F1, $22, $21, $50, $02, $31, $A0, $F3, $0F, $22, $12, $05
.E

ORG $1000
move.w #$0100, A0
move.b (A0), D0 ; minimum
lab3 add.w #$01, A0
Pr

move.b (A0), D1 ; on dpose la valeur à comparer (A0) dans le registre


D1
cmp.b D0, D1
BHI lab2 ; Branchement high (nbre >0)
move.b (A0), D0
lab2 cmp.w #$010F, A0
bne lab3

SIMHALT ; halt simulator

END $1000

Listing # 02 #
* Programme qui détermine le maximum de la liste
* ***********************************************

I
org $0100
DC.B $05, $13, $0A, $E3, $F1, $22, $21, $50, $02, $31, $A0, $F3, $0F, $22, $12, $05

AN
ORG $1000
move.w #$0100, A0
move.b (A0), D0 ; maximum
lab3 add.w #$01, A0
move.b (A0), D1 ; on dpose la valeur à comparer (A0) dans le registre D1

M
cmp.b D0, D1
BLS lab2 ; Branchement less or same (nbre >0)
move.b D1, D0
lab2 cmp.w #$010F, A0

AT
bne lab3

SIMHALT ; halt simulator

END $1000
OU
* Programme qui détermine le minimun:D0 et le maximum:D1 de la liste
* ****************************************************************

org $0100
LB

DC.B $05, $13, $0A, $E3, $F1, $22, $21, $50, $02, $31, $A0, $F3, $0F, $22, $12, $05

ORG $1000
move.w #$0100, A0
move.b (A0), D0 ; minimum = D0
move.b (A0), D1 ; minimum = D1
.E

lab4 add.w #$01, A0


move.b (A0), D2 ; on dpose la valeur à comparer (A0) dans le registre D2
cmp.b D0, D2
BLS lab1 ; Branchement Less or Same (nbre >0)
Pr

cmp.b D1, D2
BHI lab2 ; Branchement HIgh (nbre >0)
bra lab3
lab1 move.b (A0), D0
bra lab3
lab2 move.b (A0), D1
lab3 cmp.w #$010F, A0
bne lab4

SIMHALT ; halt simulator

END $1000

Listing # 03 #

Vous aimerez peut-être aussi