A computer knows where all this data is held because every byte circuit is given a numeric location called an address, which is just a number, like a tag attached to the box and there are other circuits which route data to exactly the right box according to a given tag value. Your FIGnition probably only has 8192 bytes, and their locations start at -32768 and count up to -24577. Strange eh, but the numbers are just tags, I could have designed FIGnition to make them start somewhere else.
In Forth we can reserve space for some bytes of memory for us to store data of our own choosing. Try typing:
This reserves space for a 16-bit number and tags it with the symbol 'x'. It also initialises these 16-bits of memory to 24. We can find out what the location of x is inside ram:
Like it was said earlier, x is just a tag for a memory location from -32768 upwards, so -32630 is somewhere in RAM.
We can find out what's stored at x by typing x @ . ( @ is SW5, then SW1+SW3).
We can store a different value at x by typing number x ! ( ! is SW2+SW4). number of course can be a calculation:
Forth stores the number and removes it from the stack, so if we did:
And if we now did: