Next: Address arithmetic, Previous: Heap Allocation, Up: Memory
@ a-addr – w core “fetch”
w is the cell stored at a_addr.
! w a-addr – core “store”
Store w into the cell at a-addr.
+! n a-addr – core “plus-store”
Add n to the cell at a-addr.
c@ c-addr – c core “c-fetch”
c is the char stored at c_addr.
c! c c-addr – core “c-store”
Store c into the char at c-addr.
2@ a-addr – w1 w2 core “two-fetch”
w2 is the content of the cell stored at a-addr, w1 is the content of the next cell.
2! w1 w2 a-addr – core “two-store”
Store w2 into the cell at c-addr and w1 into the next cell.
f@ f-addr – r float “f-fetch”
r is the float at address f-addr.
f! r f-addr – float “f-store”
Store r into the float at address f-addr.
sf@ sf-addr – r float-ext “s-f-fetch”
Fetch the single-precision IEEE floating-point value r from the address sf-addr.
sf! r sf-addr – float-ext “s-f-store”
Store r as single-precision IEEE floating-point value to the address sf-addr.
df@ df-addr – r float-ext “d-f-fetch”
Fetch the double-precision IEEE floating-point value r from the address df-addr.
df! r df-addr – float-ext “d-f-store”
Store r as double-precision IEEE floating-point value to the address df-addr.
sw@ c-addr – n gforth “s-w-fetch”
n is the sign-extended 16-bit value stored at c_addr.
uw@ c-addr – u gforth “u-w-fetch”
u is the zero-extended 16-bit value stored at c_addr.
w! w c-addr – gforth “w-store”
Store the bottom 16 bits of w at c_addr.
sl@ c-addr – n gforth “s-l-fetch”
n is the sign-extended 32-bit value stored at c_addr.
ul@ c-addr – u gforth “u-l-fetch”
u is the zero-extended 32-bit value stored at c_addr.
l! w c-addr – gforth “l-store”
Store the bottom 32 bits of w at c_addr.