2

I'm trying to make my C programming exciting by learning assembly programming.

I've encountered an image of flag registers in 8085 assembly programming. In that image blocks are named from d0-d7(numerals in subscript). Why are they named 'd'? Is this arbitrarily chosen? There is another register with the name 'D', are both same or different?

3 Answers 3

1

If the image you saw is like this one, D0-D7 imply bit positions in the status register, called F (for flags) when part of the AF register pair. The Ds are misleading because they imply some (nonexistent) relationship to the D register or the data pins (which are multiplexed with the address lines and are actually called AD0-AD7).

Describing bit positions for the status flags doesn't mean much of anything for most people because the only instructions that operate on F deal with a single bit at a time (conditional jumps, conditional subroutine calls and the instructions that set and clear the carry flag). The only way to operate on the flags as a whole would be to transfer them to or from another register by way of the stack.

1
  • Yes, that's how the image looked. Thanks for replying. Commented Feb 18, 2015 at 17:16
0

Yes there is difference

d0-d7 are 8 bit data bus and D is one of the register in 8085

0

In 8086 assembly that I learnt in Uni, D stood for data. There were four main register groups, AX, BX, CX, DX. Accumulator, Base, Count, and Data. And I suspect it didn't hurt that they were ABCD.

1
  • The register structure on the 8086 was not the same as the 8085. Commented Feb 18, 2015 at 13:57

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.