Ok, so I've started learning 8085 assembly language on my own a bit, and I have a couple questions I'm hoping someone can help me clarify..

So I'm reading this tutorial on 8085 instructions, and I come across a lot of example instructions.  My questions are regarding the binary/hex translations of these instructions..


Let's take the first instruction in the list for example:
MOV C, A (copy 8-bit data from accumulator reg to reg C)


Do registers A and C have specific binary translations regardless of context? (i.e.: A = 111, C = 001) Does MOV?
Is there a place where I can find a list of opcode binary representations for every instruction and/or register in the 8085 language?

My other question is why do so many hex codes in with an "H"? What does it mean?

Any help appreciated!
Posted on 2011-09-12 11:44:50 by LanguidLegend

Do registers A and C have specific binary translations regardless of context? (i.e.: A = 111, C = 001) Does MOV?


In general, yes... although there are sometimes exceptions (eg. the accumulator register might have shorter opcode encodings to save space).


Is there a place where I can find a list of opcode binary representations for every instruction and/or register in the 8085 language?


There's bound to be an instruction set reference manual for pretty much ever CPU ever made, which will give you the full info on that.


My other question is why do so many hex codes in with an "H"? What does it mean?


That's just a convention. A suffix of 'H' indicates that the number is in hexadecimal (for a number such as 54, you can't tell by just looking at it... It may be hexadecimal, decimal, or even octal).
You will often see other suffixes as well, such as 'd' for decimal, 'o' for octal, 'b' for binary.
Many assemblers also use this suffix notation.
It is similar to the prefix of '0x' in other programming languages (such as C/C++, Java, C#).
Posted on 2011-09-12 14:30:15 by Scali