Quantcast Effective address in assembly Text - Physics Forums Library

PDA

View Full Version : Effective address in assembly


Ald
Sep7-08, 09:59 PM
I am suppose to determine the effective address if the instruction below and the contents of any affected register (except the PC) or memory location after each of the instructions in problem is executed. Assume the initial state (in hex) of the CPU and memory before every instruction is as follows: Processor is MC68hc12.
ACCA = 00 ACCB = 05 IX = 0111 IY = 0100

0100 FF E7 00 20 58 66 00 80 FF BC 10 00 9D 33 EF 76
0110 41 CC 71 55 00 00 D3 17 11 22 A1 01 13 66 85 EE

I don't even know how to start the problem. From what I could find the effective address is the address of the data referred to in the instruction. My text book didn't even define effective address. Could someone provide a little explanation on this or point me to some simple explanation of the concept.

Thanks

-Job-
Sep8-08, 01:03 AM
Each CPU type will have a slightly different machine language so you should first try to determine what commands the two instruction lines are executing. Typically CPUs take in instructions which contain the command type and command parameters, e.g. <command type> <parameter 1> <parameter 2>. Also, find out what the segment registers are, etc.

You need to do some reading on the processor.

Ald
Sep8-08, 01:54 AM
The latextlab site seems to be down any other suggestions for information. This is an assignment from the 1st chapter of a MC68hc12 book. It doesn't explain effective addressing, just uses the term. I'm totally lost.
Thanks for your help.

Jeff Reid
Sep8-08, 03:11 AM
Effective address just means the actual address used for an instruction's operand, or when the address itself is the operand, as in the case of the Load Effective Address (LEA) instruction on Intel cpu's.

Ald
Sep8-08, 11:34 AM
Thanks, so in the instructions below the effective address is in the operand, correct? How do I determine the address and affect registers?

I am suppose to determine the effective address and the contents of any affected register (except the PC) or memory location after each of these instructions are executed.

a. LDX [10,X]
b. LDY $100
c. LDY #100
d. LDY 0,Y
e. STAB -5,X
f. LDAB B,X
g. LDAB [D,Y]
h. STAA 1,-X
i. LDY 2,X+

Assume the initial state (in hex) of the CPU and memory before every instruction is as follows: Processor is MC68hc12.
ACCA = 00 ACCB = 05 IX = 0111 IY = 0100

0100 FF E7 00 20 58 66 00 80 FF BC 10 00 9D 33 EF 76
0110 41 CC 71 55 00 00 D3 17 11 22 A1 01 13 66 85 EE

Jeff Reid
Sep9-08, 05:42 PM
Thanks, so in the instructions below the effective address is in the operand, correct?The effective address is the address of the operand. Assuming # means immediate, then it's a special case.

How do I determine the address and affect registers?Go through the process that the cpu would go through.