This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Newbie Question about looping through ranges longer than 256

Hello forums, I started playing with a coding the 8051 after a long search for an assembly language to learn and it seemed like the way coolest one.
I looked around a bit for how to do this but I probably just couldn't word it correctly; what I'm trying to do is fill memory locations 0x0200-0x05ff with a certain value, doesn't matter what it is. If i had to just do something like fill locations 0x200-0x2ff it would be easy as I could just use:


   mov r0, # 100h
   mov dptr, # 200h
a: mov a, #27
   mov @dptr, a
   inc dptr
   djnz r0, a

but what is the best way to do it for more than 256 bytes?

Answers on a postcard please.

Parents
  • If you think that your loop program will execute 500 times, then you are wrong.
    Your loop will execute just 105 times only, which does not exceed 256 i.e. one byte count.

    Always good to see someone giving a newbie bad advice in a way that makes them feel a fool. Before you do it, you should check your own calculations. Idiot.

Reply
  • If you think that your loop program will execute 500 times, then you are wrong.
    Your loop will execute just 105 times only, which does not exceed 256 i.e. one byte count.

    Always good to see someone giving a newbie bad advice in a way that makes them feel a fool. Before you do it, you should check your own calculations. Idiot.

Children