第1个回答 推荐于2018-04-27
;将内部RAM中41H~43H单元中的数左移4位,移出部分送到40H单元。
;先准备数据:
MOV 40H, #0
MOV 41H, #34H
MOV 42H, #56H
MOV 43H, #78H
;40H 41H 42H 43H
; 00 34 56 78
MOV R1, #40H
MOV R0, #43H
MOV A, @R0 ;取数.
SWAP A ;高低四位交换.
XCHD A, @R1 ;暂存"高"四位.
MOV @R0, A ;存放.
DEC R0 ;42H
MOV A, @R0 ;取数.
SWAP A ;高低四位交换.
XCHD A, @R1 ;暂存"高"四位.
MOV @R0, A ;存放.
DEC R0 ;41H
MOV A, @R0 ;取数.
SWAP A ;高低四位交换.
XCHD A, @R1 ;暂存"高"四位.
MOV @R0, A ;存放.
;本程序也可编写成循环结构.
SJMP $
END
;程序执行完后,数字分布如下:
;40H 41H 42H 43H
; 03 45 67 80本回答被提问者和网友采纳