Hi folks,
this a N00B question, how I can be able to distinguish between an opcode and an address, for example, imagine that I find out the following hex numbers in an EEPROM Map: F4 34 08 35 0B.

The book writer saids it means: Copy the byte on the address $3408 to the address $350B.  But the question is how I know that F4 means a opcode and not an address?

I hope I have explained this clearly.  redface

Thanks in advance,
taco.de.tripa
Posted on 2008-01-16 18:06:29 by taco.de.tripa
This is sort of a reversing question, but it's so general that I guess it's OK to answer it here.

The simple question is: you can't.

The more fulfilling question is that you'd need to have some knowledge of the system: obviously the CPU type, and where in ROM code execution begins. You can't just look at an arbitrary location in a ROM dump and know what it is, you will have to start disassembling from ROM entrypoint, following code execution, and thus mapping code/data parts.

IDA Pro is a very decent application for this kind of thing, it automates much of the task, and after this initial analysis it's interactive and lets you spelunk, marking code/data on your own.

That said, keep in mind that we are very careful about reversing discussions here at the asmcommunity.
Posted on 2008-01-16 18:41:27 by f0dder
Check your opcode manual and decode according to it. The cpu matters, because different cpu use different encoding methods. The first part of an opcode always tells you what it is about, while the other fields are optional
Posted on 2008-01-17 17:11:37 by roticv