Example xxxx Instruction
For example, look at the following code.
In assembly language, 32-bit addresses can be given
names (called symbolic addresses) like VALUEA and
RESULT to make programming easier:
This code adds the 32-bit pattern (regarded an an integer)
starting at at address VALUEA in main memory
to the 32-bit pattern
starting at address VALUEB in main memory,
and saves the 32-bit result in register 5.
Then it adds the result in register 5 to the 32-bit pattern
starting at address VALUEC, and saves the final sum as a
32-bit pattern starting at address RESULT.
That was a very wordy explanation.
Usually one says the same thing in fewer words:
The code adds the 32-bit integer at VALUEA to the 32-bit integer
at VALUEB, and saves the result in register 5.
Then the 32-bit integer in register 5 is added to the 32-bit
integer at VALUEC and the 32-bit result is saved at RESULT.
Sometimes people use even FEWER words:
The 32-bit sum of VALUEA and VALUEB is formed in register 5.
Then the sum of register 5 and VALUEC is moved to RESULT.
Be careful that you understand what is really going on when
brief explainations are given.
In particular,
VALUEA and VALUEB are addresses, and one never adds addresses
together.
A brief explaination that says "...VALUEA is added to ..."
really means "...the pattern contained in the four bytes starting at
address VALUEA in main memory,
regarded as a 32-bit integer, is added to ..."
|