1.MOV: - This instruction is used to copy the data from one place to another.

Eg: - MOV Rd, Rs (This instruction copies the content of Rs to Rd)
         MOV M,Rs (This instruction copies the content of register Rs to memory location pointed by HL Register)
         MOV Rd, M (This instruction copies the content of memory location pointed by the HL
register to the register Rd.)




2.MVI: -
move immediate date to a register or memory location.


Eg: - MVI Rd, #30H (30h is stored in register Rd)

          MVI M, #30H(30h is stored in memory location pointed by HL Reg)




3.LDA: - Load accumulator. (this instruction copies the data from a given 16 bit address to the accumulator)

Eg: - LDA 3000H (content of memory location 3000h is coppied in accumulator)




4.LDAX(Load accumulator indirect): - The contents of the designated register pair point to a memory location. This instruction copies the contents of that memory location into the accumulator. The contents of either the register pair or the memory location are not altered.

Eg: - LDAX B



5.LXI(Load register pair immediate): - The instruction loads 16-bit data in the register pair designated in the
operand.
Eg: - LXI H, 2034H (2034H is stored in HL pair so that it act as memory pointer)
          
          LXI H, XYZ      (address of level XYZ is copied in HL pair)



6.LHLD(Load H and L register direct): - this instruction loads the contents of the 16- bit memory location into the HL register pair.

Eg: - LHLD 3000H (the content of location 3000h is copied into the HL reg pair)




7.STA: - the content of accumulator are copied into the memory location.

Eg: - STA 3000H (the content of accumulator is stored into the memory location 3000h)



8.STAX(Store accumulator indirect): - The contents of the accumulator are copied into the memory location specified by the contents of the operand (register pair). The contents of the accumulator are not altered.

Eg: - STAX B (the content of accumulator is stored into the memory location specified by the BC register pair.)



9.SHLD(store H and L register direct): - The contents of register L are stored into the memory location specified by the 16-bit address in the operand and the contents of H register are stored into the next memory location by incrementing the operand. The contents of registers HL are not altered. This is a 3-byte instruction, the second byte specifies the low-order address and the third byte specifies the high-order address.


Eg: - SHLD 3000H

{ 27 comments... read them below or Comment }

  1. Thank you so much..good place to learn and revise the instructions.

    ReplyDelete
  2. nice!!!! can i get some practice problems!!!

    ReplyDelete
  3. 5.LXI(Load register pair immediate): - The instruction loads 16-bit data in the register pair designated in the
    operand.
    Eg: - LXI H, 2034H (2034H is stored in HL pair so that it act as memory pointer)

    LXI H, XYZ (address of level XYZ is copied in HL pair)



    6.LHLD(Load H and L register direct): - this instruction loads the contents of the 16- bit memory location into the HL register pair.

    Eg: - LHLD 3000H (the content of location 3000h is copied into the HL reg pair)

    What is difference tem will u explain it

    ReplyDelete
    Replies
    1. both are same just the difference is in the type of addressing mode...google type of addressing mode for more information

      Delete
    2. No both arent the same. LXI copies the 16 bit address 3000H to HL pair as in 30H to H and 00H to L. LHLD will copy the data contained in 3000H memory location to L and data contained in 3001H memory location to H.

      Delete
    3. can you suggest some good resources(website,books etc etc) from where we could learn all this assembler stuff?

      Delete
    4. sorry i fail to distinguish btn MOV and MVI help me please

      Delete
    5. LHLD 3000
      (3000)-->L
      (3001)-->H

      Delete
    6. @Javesh Go through ramesh goankar

      Delete
    7. @shaban mov dest,source moves data between registers
      Mvi reg,xx stores an value xx in register

      Delete
    8. in LHLD instruction the data at two consecutive locations will load in HL pair
      for eg- LHLD 3000H
      then data at 3000 load in H reg and data at next location which is 3001 load in L reg

      Delete
  4. This comment has been removed by the author.

    ReplyDelete
  5. Why STAX H is not possible plz answer in detail

    ReplyDelete
    Replies
    1. Ldax H and stax H is not there as Mov M,A and Mov A,M does the job

      Delete
  6. If no1 and no2 are 8 bit the how to cpy no1 to no2 and if they are 16 bit

    ReplyDelete
  7. thanks for giving defined information of instructions

    ReplyDelete
  8. b ram and vibhuti microprocessor 8085 which any person have pdf book please send me my mail.id pravesh.bhagat@gmail.com

    ReplyDelete
  9. Replies
    1. nh nL is 16bit data nh lxi B,nhnl stores nh in B reg nl in C register

      Delete
    2. nh nL is 16bit data nh lxi B,nhnl stores nh in B reg nl in C register

      Delete
    3. can mov r,m be used after lxi d?

      Delete
  10. can i use "mov" instruction to move data to accumulator or i have to only use "mvi" instruction only?

    ReplyDelete
  11. Nice......... From these I will learn about so much instructions

    ReplyDelete

Labels

- Copyright © 8085 Microprocessor -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan -