Den 6502 er en computer -processor skabt af MOS Technology i 1975. Alle dens dataregistre er 8 bit bred , det er, kan de indeholde præcis et byte værd af information. Normalt er der byte fortolkes som et binært tal til aritmetiske operationer som addition og subtraktion . Imidlertid 6502 understøtter en særlig binær -kodet decimal ( BCD ) mode, hvor aritmetiske operationer operere uafhængigt på den nederste og de øverste fire bit af 8 - bit tal . Du kan konvertere en hexadecimal, byte -størrelse nummer til tilsvarende i 6502 BCD . Instruktioner
1
Vælg " hexByte " skal konverteres der ikke er større end hexadecimal 63 , da det er det største antal , der kan være repræsenteret ved en BCD byte .
2 < p> Konverter det hexadecimale tal til decimal ved at evaluere følgende formel : Hej
decByte = firstDigit ( hexByte ) * 16 + secondDigit ( hexByte )
for eksempel, hvis hexByte = 38 , derefter decByte = 3 * 16 +8 = 56 - decimal ækvivalent hexadecimal 38. . Sammenligningen i trin 1 garanterer, at decByte vil have to cifre
3
Konverter decimaltal til 6502 BCD ved at evaluere følgende formel :.
BCDByte = tabel ( firstDigit ( decByte ) ) tabel ( secondDigit ( decByte ) )
efter følgende omregningstabel : Hej
Decimal ciffer /BCD halv byte
0 /0000
< p> 1/0001
2/0010
3/0011
4/0100
5/0101
6/0110
7/0111
8/1000
9/1001
For eksempel, hvis decByte = 56 , så BCDByte = 01.010.110 - dvs de fire bits svarer til decimaltal 5 efterfulgt af fire bit svarer til decimaltal 6. .