MOV A,@R0 MOV R7,#8 INC R0 L1: CLR C MOV B,A SUBB A,@R0 MOV A,B JN L4 XCH A,@R0 L4: INC R0 DJNZ R7,L3 MOV R3,#0 ; 求和 MOV R4,#0 MOV R7,#8 MOV R0,#52H L5: MOV A,R4 ADD A,@R0 MOV R4,A MOV A,R3 ADDC A,#0 MOV R3,A INC R0
DJNZ R7,L5 MOV A,R4 ;平均值 SWAP A RL A MOV B,A MOV A,R3 RR A RR A RR A ANL A,#00011111B ORL A,B MOV 60H,A RET
4.编写程序将R4R5R6中的3个字节数据对半分解成6个字节,存入显示缓冲区(DISMEM0~DISMEM5)。
CL:
MOV LCALL MOV MOV MOV LCALL MOV MOV MOV LCALL MOV MOV RET MOV ANL MOV MOV ANL
A,R6
CL
DISMEM0,R0 DISMEM1,R1 A,R5 CL
DISMEM2,R0 DISMEM3,R1 A,R4 CL
DISMEM4,R0 DISMEM5,R1 B,A A,#0FH R0,A A,B
A,#0F0H
SWAP A MOV R1,A RET 5.试编程把以2000H为首地址的连续10个单元的内容按升序排列,存放到以3000H为首地址的存储区中。
MOV DPTR,#2000H ;读到片内30H开始的单元 MOV R0,#30H MOV R7,#10 L1: MOVX A,@DPTR MOV @R0,A I