Faire la même chose pour l'ensemble des données 8 bits signées à partir de l'adresse de base $0200.
Commentaires
Il faudra en premier lieu charger la mémoire avec les nombres négatifs en décrémentant de $FF à$80, puis charger les
nombres positifs en incrémentant de $00 à$7F.
Programme
..:: Création d'une table de données en bits signés ::..
ORG $0000 * Début du programme
LDX #$0200 * Début 1ere donnée négative
LDY #$0280 * Début 1ere donnée positive
LDA #$FF * 1ere donnée négative $FF
Boucle STA ,X+ * Chargement et incrémentation du pointeur X
CMPA #$80 * Si donnée = $80 fin des données négatives
BEQ Positif
DECA * Décrémentation de la donnée
BRA Boucle
Positif LDA #$00 * 1ere donnée positive
Boucle1 STA ,Y+ * Chargement et incrémentation du pointeur Y
CMPA #$7F * Si donnée = $7F fin des données positives
BEQ Fin
INCA * Incrémentation de la donnée
BRA Boucle1
Fin SWI
Etat de la mémoire après exécution du programme
0200 FF FE FD FC FB FA F9 F8 F7 F6 F5 F4 F3 F2 F1 F0
0210 EF EE ED EC EB EA E9 E8 E7 E6 E5 E4 E3 E2 E1 E0
0220 DF DE DD DC DB DA D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
0230 CF CE CD CC CB CA C9 C8 C7 C6 C5 C4 C3 C2 C1 C0
0240 BF BE BD BC BB BA B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
0250 AF AE AD AC AB AA A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0260 9F 9E 9D 9C 9B 9A 99 98 97 96 95 94 93 92 91 90
0270 8F 8E 8D 8C 8B 8A 89 88 87 86 85 84 83 82 81 80
0280 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0290 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
02A0 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
02B0 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
02C0 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
02D0 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
02E0 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
02F0 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
© Copyright 1996−2000, @Pepper's.
Systèmes à Microprocesseurs − 6809
P1 Création d'une table de données 3