1、 利用Keil uVision4 ①从片外7000H单元开始,将连续30个地址 的内容置为FFH。
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV DPTR,#7000H;16位数据传送指令仅此一条:MOV DPTR,#data16
MOV R2,#30
MOV A,#0FFH
LOOP: MOVX @DPTR,A;片外RAM数据传送MOVX。片外/内ROM用MOVC;
INC DPTR
DJNZ R2,LOOP
SJMP $
END
2、A中内容为41H,采用查表法,将4的ASCII码存放到40H单元,将1的ASCll码存放到41H单元。
我一开始写的:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV A,#41H
MOV R0,A
MOV DPTR,#TAB
ANL A,#0FH
MOVC A,@A+DPTR
MOV 41H,A
MOV A,R0
ANL A,#0F0H
SWAP A
MOVC A,@A+DPTR
MOV 40H,A
ORG 3000H
TAB: DB 30H,31H,32H,33H,34H
END
师傅讲的:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV A,#41H
MOV R0,A
MOV DPTR,#TAB
ANL A,#0FH
MOVC A,@A+DPTR;查表指令。表格当然是存放在ROM中,MOVC
MOV 41H,A
MOV A,R0
ANL A,#0F0H
SWAP A
MOVC A,@A+DPTR
MOV 41H,A
TAB:‘0123456789ABCDEF’
END
|