Hi everyone,
currently I'm stuck in chapter 4 on page 60/61:
"LOAD" is explained as followed:
Direct addressing
The most common way to address the memory is to express a specific address or use a symbol that refers to a specific address, as follows:
LOAD R1,67 // R1<---Memory[67]
// Or, assuming that bar refers to memory address 67:
LOAD R1,bar // R1<---Memory[67]
And "LOADI" is explained like this:
Immediate addressing
This form of addressing is used to load constants—namely, load values that appear in the instruction code: Instead of treating the numeric field that appears in the instruction as an address, we simply load the value of the field itself into the register, as follows:
LOADI R1,67 // R1<---67
If I get it right, it means, that "67" is the address to a - let's say - number in memory. For example wie stored "5" so "101" in this memory at the address "67".
"LOADI" loads the value (so "5" or "101") into the given register (R1) of the CPU. If this is correct, what does "LOAD" do? What does "<---Memory[67]" mean? After reading the description for "LOAD", I thought this command would load the actual value, which is stored at address "67" in the memory into the register "R1". But after reading the description for "Immediate addressing"/"LOADI", I got a bit confused.
Did I get something wrong?
And another point: English isn't my native language (it is german), so I translate every word in the book, which I do not know. "Immediate" was one of them. I looked "Immediate" up and found the translation "direkt", which literally translates to "direct", but "direct addressing" is an own term in this case. So is there another word for "Immediate"? Or this here maybe someone, who can give me a proper translation?
Thanks