第一题:把7000H~70FFH的内容清零;共 256 个单元。
ORG 0000H
CLR A
MOV DPTR, #7000H
MOV R2, #0 ;相当于256
LOOP:
MOVX @DPTR, A ;写入0
INC DPTR
DJNZ R2, LOOP ;减一,非零转移
SJMP $ ;停机,看结果吧
END
第二题:对外部数据单元7000 H送入立即数BD H,然后把7000H单元内容拆开,高四位送入7001H,低四位送入7002H。
ORG 0000H
MOV A, #0DBH
MOV DPTR, #7000H
MOVX @DPTR, A ;写入
MOVX A, @DPTR ;取出7000H单元内容
MOV R2, A ;暂存
SWAP A ;交换高低四位
ANL A, #0FH ;保留低四位
INC DPTR
MOVX @DPTR, A ;写入
MOV A, R2 ;取出暂存内容
ANL A, #0FH ;保留低四位
INC DPTR
MOVX @DPTR, A ;写入
SJMP $
END
单片机难啊!