Le 6502 est un processeur d'ordinateur créé par MOS Technology en 1975. Tous les registres de données sont 8 bits de large , c'est à dire qu'ils peuvent contenir exactement la valeur de l'information d'un octet . Normalement, cet octet est interprété comme un nombre binaire pour les opérations arithmétiques comme l'addition et la soustraction. Cependant, le 6502 supporte un mode spécial de décimal codé binaire (BCD) , dans lequel les opérations arithmétiques opèrent séparément sur la partie inférieure et sur les quatre bits supérieurs du numéro 8 bits . Vous pouvez convertir un nombre hexadécimal, octet de taille à son équivalent en 6502 BCD . Instructions
1
Sélectionnez un " hexByte " être converti qui n'est pas supérieur à 63 hexadécimal , puisque c'est le plus grand nombre qui peut être représenté par un octet BCD .
2 < p > Convertir le nombre hexadécimal à décimal en évaluant la formule suivante:
decByte = FIRSTDIGIT ( hexByte ) * 16 + secondDigit ( hexByte )
par exemple, si hexByte = 38, puis decByte = 3 * 16 +8 = 56 - l'équivalent décimal hexadécimal 38. La comparaison à l'étape 1 garantit que decByte aura deux chiffres
3
convertir le nombre décimal à 6502 BCD en évaluant la formule suivante : .
BCDByte = tableau ( FIRSTDIGIT ( decByte ) ) tableau ( secondDigit ( decByte ) )
selon le tableau de conversion suivant :
chiffre décimal /BCD demi- octet
0 /0000
< p> 1 /0001
2 /0010
3 /0011
4/0100
5 /0101
6 /0110 Photos
7 /0111
8/1000
9/1001
Par exemple, si decByte = 56, puis BCDByte = 01010110 - c'est-à- les quatre bits correspondant à la décimale 5 suivis par les quatre bits correspondant à la décimale 6.