[Prev] [Next] [Contents] [Commodore] [New] [Search] [Home]

Let's look at it another way; here's an example of how a base 10 (decimal number) is constructed:

   Base raised by
   increasing powers:... 10^3 10^2 10^1 10^0
                        ---------------------
   Equals:.............. 1000  100   10    1
                        ---------------------

   Consider 4569 (base 10)  4    5    6    9 = (4*1000)+(5*100)+(6*10)+9

Now look at an example of how a base 16 (hexadecimal number) is constructed:

   Base raised by
   increasing powers:... 16^3 16^2 16^1 16^0
                        ---------------------
   Equals:.............. 4096  256   16    1
                        ---------------------

   Consider 11D9 (base 16)  1    1    D    9 = 1*4096+1*256+13*16+9

Therefore, 4569 (base 10) = 11D9 (base 16)

The range for addressable memory locations is 0-65535 (as was stated earlier). This range is therefore 0-FFFF in hexadecimal notation.

Usually hexadecimal numbers are prefixed with a dollar sign ($). This is to distinguish them from decimal numbers. Let's look at some "hex" numbers, using 64MON, by displaying the contents of some memory by typing:

   SYS 8*4096   (or SYS 12*4096)
   B*
      PC  SR AC XR YR SP
   .;0401 32 04 5E 00 F6 (these may be different)

Then if you type in:

 .M 0000 0020 (and press <RETURN>).

you will see rows of 9 hex numbers. The first 4-digit number is the address of the first byte of memory being shown in that row, and the other eight numbers are the actual contents of the memory locations beginning at that start address.


[Prev] [Next] [Contents] [Commodore] [New] [Search] [Home]
This page has been created by Sami Rautiainen.
Read the small print. Last updated July 10, 2002.