zhliao
;将内部数据存储器40H~4FH单元的16个数传送到
;外部数据存储器100H~10FH单元中。(要求用循环指令实现)

    ORG 0000H
    SJMP MAIN
    ORG 0030H
MAIN:
    
    MOV R0, #40H
    MOV DPTR, #100H
LOOP:    
MOV A, @R0 MOVX @DPTR, A ;注意了,DPTR是16位的,寄存器间接寻址:寻址范围,内部低128字节单元(只能使用R0和R1做间接寄存器),纠结,keil软件看不到外部数据存储器的内容 INC R0 INC DPTR CJNE R0, #50H, LOOP SJMP MAIN END

 

;将片内RAM 40H单元的内容最高4位取反,最低2位置1,
;其余2位置0,并将结果保存在片外RAM 40H单元。
;提示:任何数跟1异或则取反,跟0异或则保持不变;
;任何数跟1相或则为1,跟0相或则保持不变;任何数
;跟0相与则置0,跟1相与则保持不变。
;对于位操作,先把某书存在c里面去先,之后在进行相应的位操作 eg MOV C ACC.5 ORL C, OV
ORG 0000H SJMP MAIN ORG 0030H MAIN: ;MOV 40H, #55H MOV A, 40H XRL A, #0F0H ;任何数跟1异或则取反,跟0异或则保持不变 ORL A, #03H ANL A, #0F3H MOV R0, #40H MOVX @R0, A SJMP $ END

分类:

技术点:

相关文章:

  • 2021-09-05
  • 2021-12-09
  • 2021-10-10
  • 2021-10-26
  • 2021-04-11
  • 2021-12-09
  • 2021-12-11
  • 2021-05-26
猜你喜欢
  • 2021-05-17
  • 2021-11-30
  • 2021-04-19
  • 2021-08-27
  • 2021-11-30
  • 2021-12-12
  • 2021-10-02
相关资源
相似解决方案