⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd1.asm

📁 我在公司做的基于430F206的互感器现场效验仪
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	OUT	* ,0300h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	13
;>>>> 	                                Lcd_wd=Cursor_Y;        wait();
	MAR	*+
	OUT	* ,0300h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	14
;>>>> 	                        Lcd_wc=MWRITE;  wait();
	LACK	66
	MAR	* ,AR0
	SACL	* 
	OUT	* ,0301h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	15
;>>>> 	                 for(Counter1=0;Counter1<Dot2;Counter1++)
	LACK	0
	MAR	* ,AR2
	MAR	*+
	SACL	* 
	ZALS	* 
	SBRK	9-LF6
	SUBS	* 
	BGEZ	L36
	SBRK	2
L35:
	.line	17
;>>>> 	                                if(Flag==Abnormal)
	LAC	* 
	SUBK	1
	BNZ	L37
	.line	19
;>>>> 	                                        Lcd_wd=~(*(Data_Add++));
	MAR	*+
	LAR	AR3,* ,AR3
	LAC	*+,AR2
	SAR	AR3,* ,AR1
	CMPL
	SACL	* 
	OUT	* ,0300h
	.line	20
;>>>> 	                                                wait();
;>>>> 	                                else 
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	B	L38
L37:
	.line	24
;>>>> 	                                        Lcd_wd=*(Data_Add++);
	MAR	*+
	LAR	AR3,* ,AR3
	OUT	*+,0300h,AR2
	SAR	AR3,* ,AR3
	LAC	* 
	.line	25
;>>>> 	                                                wait();
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
L38:
	.line	15
	MAR	* ,AR2
	ADRK	10-LF6
	LAC	* 
	ADDK	1
	SACL	* 
	ZALS	* 
	SBRK	9-LF6
	SUBS	* 
	SBRK	2
	BLZ	L35
L36:
	.line	29
;>>>> 	                        Cursor_X++;
	LARK	AR2,1
	MAR	*0+
	LAC	* 
	ADDK	1
	SACL	* 
	.line	9
	ADRK	3
	LAC	* 
	ADDK	1
	SACL	* 
	RSXM
	SBRK	9-LF6
	LAC	* ,12,AR0
	SACH	* ,1
	ZALS	* ,AR2
	ADRK	9-LF6
	SUBS	* 
	SBRK	3
	MAR	* ,AR0
	BGZ	L33
L34:
EPI0_6:
	.line	31
	MAR	* ,AR1
	SBRK	6
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	390,000000000H,5

	.sym	_Lcd_Character,_Lcd_Character,32,2,0
	.globl	_Lcd_Character

	.func	404
;>>>> 	void    Lcd_Character(unsigned int Row,unsigned int Column,unsigned int Character)
******************************************************
* FUNCTION DEF : _Lcd_Character
******************************************************
_Lcd_Character:

LF7	.set	0

	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,3
	LAR	AR0,*0+,AR2

	.sym	_Row,-3+LF7,14,9,16
	.sym	_Column,-4+LF7,14,9,16
	.sym	_Character,-5+LF7,14,9,16
	.sym	_Cursor_X,1,14,1,16
	.sym	_Cursor_Y,2,14,1,16
	.line	2
;>>>> 	        unsigned  int   Cursor_X,Cursor_Y;
	.line	4
;>>>> 	        Cursor_X=(Row*Lcd_AP+Column+0x0000)&0x00ff;
	LARK	AR2,-3+LF7
	MAR	*0+
	LT	*-
	MPYK	40
	PAC
	ADD	* 
	ANDK	255
	ADRK	5-LF7
	SACL	* 
	.line	5
;>>>> 	        Cursor_Y=((Row*Lcd_AP+Column+0x0000)&0xff00)>>8;
	SBRK	4-LF7
	LT	*-,AR0
	LACK	40
	SACL	*
	MPYU	*,AR2
	PAC
	ADDS	* ,AR0
	ANDK	65280
	SACL	* 
	RSXM
	LAC	* ,7,AR2
	ADRK	6-LF7
	SACH	* ,1,AR0
	.line	6
;>>>> 	        Lcd_wc=CSRDIR_RG;       wait();
	LACK	76
	SACL	* 
	OUT	* ,0301h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	7
;>>>> 	        Lcd_wc=CSRW;    wait();
	LACK	70
	SACL	* 
	OUT	* ,0301h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	8
;>>>> 	                Lcd_wd=Cursor_X;        wait();
	MAR	* ,AR2
	MAR	*-
	OUT	* ,0300h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	9
;>>>> 	                Lcd_wd=Cursor_Y;        wait();
	MAR	*+
	OUT	* ,0300h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	10
;>>>> 	        Lcd_wc=MWRITE;  wait();
	LACK	66
	MAR	* ,AR0
	SACL	* 
	OUT	* ,0301h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	11
;>>>> 	                Lcd_wd=Character;       wait();
	MAR	* ,AR2
	SBRK	7-LF7
	OUT	* ,0300h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
EPI0_7:
	.line	12
	MAR	* ,AR1
	SBRK	4
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	415,000000000H,3

	.sym	_Lcd_Ascii,_Lcd_Ascii,32,2,0
	.globl	_Lcd_Ascii

	.func	432
;>>>> 	void    Lcd_Ascii(unsigned int Row,unsigned int Column,unsigned int Character,unsigned int Flag)
******************************************************
* FUNCTION DEF : _Lcd_Ascii
******************************************************
_Lcd_Ascii:

LF8	.set	0

	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,2
	LAR	AR0,*0+,AR2

	.sym	_Row,-3+LF8,14,9,16
	.sym	_Column,-4+LF8,14,9,16
	.sym	_Character,-5+LF8,14,9,16
	.sym	_Flag,-6+LF8,14,9,16
	.sym	_Data_Add,1,30,1,16
	.line	2
;>>>> 	        pointer *Data_Add;
	.line	5
;>>>> 	        Data_Add=Ascii+((Character-0x20)<<4);
	LARK	AR2,-5+LF8
	MAR	*0+
	LAC	* ,4,AR1
	SACL	* 
	LAC	* ,AR2
	ADLK	_Ascii+-512,0
	ADRK	6-LF8
	SACL	* 
	.line	6
;>>>> 	        Lcd_Cctw(Row,Column,8,16,Data_Add,Flag);           
	SBRK	7-LF8
	LAC	* ,AR1
	SACL	*+,AR2
	ADRK	7-LF8
	LAC	* ,AR1
	SACL	*+
	LACK	16
	SACL	*+
	LACK	8
	SACL	*+,AR2
	SBRK	5-LF8
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	* ,AR1
	SACL	*+
	CALL	_Lcd_Cctw
	SBRK	6
EPI0_8:
	.line	7
	SBRK	3
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	438,000000000H,2

	.sym	_Lcd_Out_Bmp,_Lcd_Out_Bmp,32,2,0
	.globl	_Lcd_Out_Bmp

	.func	455
;>>>> 	void    Lcd_Out_Bmp(unsigned int Dot_X,unsigned int Dot_Y,unsigned int Dot1,unsigned int Dot2,pointer *Data_Add,unsigned int Flag)
******************************************************
* FUNCTION DEF : _Lcd_Out_Bmp
******************************************************
_Lcd_Out_Bmp:

LF9	.set	0

	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,5
	LAR	AR0,*0+,AR2

	.sym	_Dot_X,-3+LF9,14,9,16
	.sym	_Dot_Y,-4+LF9,14,9,16
	.sym	_Dot1,-5+LF9,14,9,16
	.sym	_Dot2,-6+LF9,14,9,16
	.sym	_Data_Add,-7+LF9,30,9,16
	.sym	_Flag,-8+LF9,14,9,16
	.sym	_Cursor_X,1,14,1,16
	.sym	_Cursor_Y,2,14,1,16
	.sym	_Counter1,3,14,1,16
	.sym	_Counter2,4,14,1,16
	.line	3
;>>>> 	        unsigned  int   Cursor_X,Cursor_Y;
;>>>> 	        unsigned  int   Counter1,Counter2;
	.line	6
;>>>> 	        Cursor_X=(Dot_Y*Lcd_AP+(Dot_X>>3)+0x4000)&0x00ff;
	RSXM
	LARK	AR2,-3+LF9
	MAR	*0+
	LAC	*-,12,AR1
	SACH	* ,1,AR2
	LT	* ,AR1
	MPYK	40
	PAC
	ADDK	16384
	ADD	* ,AR2
	ANDK	255
	ADRK	5-LF9
	SACL	* 
	.line	7
;>>>> 	        Cursor_Y=((Dot_Y*Lcd_AP+(Dot_X>>3)+0x4000)&0xff00)>>8;
	SBRK	4-LF9
	LAC	*-,12,AR1
	SACH	* ,1,AR2
	LT	* ,AR0
	LACK	40
	SACL	*
	MPYU	*,AR1
	PAC
	ADDK	16384
	ADDS	* ,AR0
	ANDK	65280
	SACL	* 
	LAC	* ,7,AR2
	ADRK	6-LF9
	SACH	* ,1,AR0
	.line	8
;>>>> 	        Lcd_wc=CSRDIR_RG;       wait();
	LACK	76
	SACL	* 
	OUT	* ,0301h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	9
;>>>> 	        for(Counter2=0;Counter2<Dot2;Counter2++)
	LACK	0
	MAR	* ,AR2
	ADRK	2
	SACL	* 
	ZALS	* 
	SBRK	10-LF9
	SUBS	* 
	BGEZ	L40
	ADRK	7-LF9
	MAR	* ,AR0
L39:
	.line	11
;>>>> 	                        Lcd_wc=CSRW;    wait();
	LACK	70
	SACL	* 
	OUT	* ,0301h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	12
;>>>> 	                                Lcd_wd=Cursor_X;        wait();
	MAR	* ,AR2
	OUT	* ,0300h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	13
;>>>> 	                                Lcd_wd=Cursor_Y;        wait();
	MAR	*+
	OUT	* ,0300h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	14
;>>>> 	                        Lcd_wc=MWRITE;  wait();
	LACK	66
	MAR	* ,AR0
	SACL	* 
	OUT	* ,0301h
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	.line	15
;>>>> 	                        for(Counter1=0;Counter1<(Dot1>>3);Counter1++)
	LACK	0
	MAR	* ,AR2
	MAR	*+
	SACL	* 
	SBRK	8-LF9
	LAC	* ,12,AR0
	SACH	* ,1
	ZALS	* ,AR2
	ADRK	8-LF9
	SUBS	* 
	BLEZ	L42
	SBRK	11-LF9
L41:
	.line	17
;>>>> 	                                        if(Flag==Abnormal)
	LAC	* 
	SUBK	1
	BNZ	L43
	.line	19
;>>>> 	                                                Lcd_wd=~(*(Data_Add++));
	MAR	*+
	LAR	AR3,* ,AR3
	LAC	*+,AR2
	SAR	AR3,* ,AR1
	CMPL
	SACL	* 
	OUT	* ,0300h
	.line	20
;>>>> 	                                                        wait();
;>>>> 	                                        else
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	B	L44
L43:
	.line	24
;>>>> 	                                                Lcd_wd=*(Data_Add++);
	MAR	*+
	LAR	AR3,* ,AR3
	OUT	*+,0300h,AR2
	SAR	AR3,* ,AR3
	LAC	* 
	.line	25
;>>>> 	                                                        wait();
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
L44:
	.line	15
	MAR	* ,AR2
	ADRK	10-LF9
	LAC	* 
	ADDK	1
	SACL	* 
	RSXM
	SBRK	8-LF9
	LAC	* ,12,AR0
	SACH	* ,1
	ZALS	* ,AR2
	ADRK	8-LF9
	SUBS	* 
	SBRK	11-LF9
	BGZ	L41
L42:
	.line	28
;>>>> 	                        Cursor_Y=Cursor_Y+((Cursor_X+Lcd_AP)>>8);
	LARK	AR2,1
	MAR	*0+
	ZALS	*+,AR0
	ADDK	40
	SACL	* 
	LAC	* ,7,AR2
	ADD	* ,15
	SACH	*-,1
	.line	29
;>>>> 	                        Cursor_X=(Cursor_X+Lcd_AP)&0x00ff;
	LAC	* 
	ADDK	40
	ANDK	255
	SACL	* 
	.line	9
	ADRK	3
	LAC	* 
	ADDK	1
	SACL	* 
	ZALS	* 
	SBRK	10-LF9
	SUBS	* 
	ADRK	7-LF9
	MAR	* ,AR0
	BLZ	L39
L40:
EPI0_9:
	.line	32
	MAR	* ,AR1
	SBRK	6
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	486,000000000H,5

	.sym	_Lcd_Real,_Lcd_Real,32,2,0
	.globl	_Lcd_Real

	.func	501
;>>>> 	void    Lcd_Real(unsigned int Row,unsigned int Column,double Real_Data,unsigned int Dot_Bit)
******************************************************
* FUNCTION DEF : _Lcd_Real
******************************************************
_Lcd_Real:

LF10	.set	0

	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,23
	LAR	AR0,*0+,AR2

	.sym	_Row,-3+LF10,14,9,16
	.sym	_Column,-4+LF10,14,9,16
	.sym	_Real_Data,-6+LF10,7,9,32
	.sym	_Dot_Bit,-7+LF10,14,9,16
	.sym	_Dis_Data,1,52,1,320,,20
	.sym	_Counter,21,4,1,16
	.sym	_Dot_Flag,22,4,1,16
	.line	2
;>>>> 	        int     Dis_Data[20];
	.line	4
;>>>> 	        int     Counter=1;
	LACK	1
	LARK	AR2,21
	MAR	*0+
	SACL	*+
	.line	5
;>>>> 	        int     Dot_Flag=0;
	LACK	0
	SACL	* ,AR1
	.line	7
;>>>> 	        if (Real_Data<0)        
	LALK	FL0
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	SBRK	28-LF10
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	* ,AR1
	SACL	*+
	CALL	F$$LT
	BZ	L45
	.line	9
;>>>> 	                        Dis_Data[0]='-';
	LACK	45
	MAR	* ,AR2
	ADRK	6-LF10
	SACL	* 
	.line	10
;>>>> 	                        Real_Data=fabs(Real_Data);
	SBRK	6-LF10
	ZALH	*-
	ANDK	0FFFEh,15
	OR	* 
	SACL	*+
	SACH	* 
	B	L46
L45:
	.line	12
;>>>> 	        else    Dis_Data[0]=' ';
	LACK	32
	MAR	* ,AR2
	ADRK	6-LF10
	SACL	* 
L46:
	.line	14
;>>>> 	        while (Real_Data>=10.0)
	MAR	* ,AR1
	LALK	FL1
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	LARK	AR2,-6+LF10
	MAR	*0+
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	* ,AR1
	SACL	*+
	CALL	F$$GE
	BZ	L48
	MAR	* ,AR2
	MAR	*-,AR1
L47:
	.line	16
;>>>> 	                        Real_Data=Real_Data/10.0;
	LALK	FL1
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	*-,AR1
	SACL	*+
	CALL	F$$DIV
	MAR	*-
	ZALH	*-
	ADDS	* ,AR2
	SACL	*+
	SACH	* 
	.line	17
;>>>> 	                        Dot_Flag++;
	ADRK	27-LF10
	LAC	* 
	ADDK	1
	SACL	*-
	.line	18
;>>>> 	                        Counter=1;
	LACK	1
	SACL	* ,AR1
	.line	14
	LALK	FL1
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	SBRK	27-LF10
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	*-,AR1
	SACL	*+
	CALL	F$$LT
	BZ	L47
L48:
	.line	21
;>>>> 	        while (Real_Data<1)
	LALK	FL2
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	LARK	AR2,-6+LF10
	MAR	*0+
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	* ,AR1
	SACL	*+
	CALL	F$$LT
	BZ	L50
	MAR	* ,AR2
	MAR	*-,AR1
L49:
	.line	23
;>>>> 	                        Real_Data=Real_Data*10.0;
	LALK	FL1
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	*-,AR1
	SACL	*+
	CALL	F$$MUL
	MAR	*-
	ZALH	*-
	ADDS	* ,AR2
	SACL	*+
	SACH	* 
	.line	24
;>>>> 	                        Dis_Data[1]='0';
	LACK	48
	ADRK	7-LF10
	SACL	*+
	.line	25
;>>>> 	                        Dis_Data[2]='.';
	LACK	46
	SACL	* 
	.line	26
;>>>> 	                        Counter=3-Dot_Flag;
	LACK	3
	ADRK	19
	SUB	*-
	SACL	*+,AR0
	.line	27
;>>>> 	                        Dis_Data[Counter]='0';
	SACL	* 
	LAR	AR3,* ,AR3
	MAR	*0+
	LACK	48
	MAR	*+
	SACL	* ,AR2
	.line	28
;>>>> 	                        Dot_Flag--;
	LAC	* 
	SUBK	1
	SACL	* ,AR1
	.line	21
	LALK	FL2
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	SBRK	28-LF10
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	*-,AR1
	SACL	*+
	CALL	F$$GE
	BZ	L49
L50:
	.line	31
;>>>> 	        for (Counter=Counter;Counter<=(Dot_Bit+1);Counter++)
	MAR	* ,AR2
	LARK	AR2,21
	MAR	*0+
	LAC	* 
	SACL	* 
	SBRK	28-LF10
	ZALS	* ,AR1
	ADDK	1
	SACL	* ,AR2
	ADRK	28-LF10
	ZALS	* ,AR1
	SUBS	* 
	BGZ	L52
	MAR	* ,AR2
	SBRK	27-LF10
L51:
	.line	33
;>>>> 	                        Dis_Data[Counter]=(int)Real_Data+0x30;
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	* ,AR1
	SACL	*+
	CALL	F$$FTOI
	ADDK	48
	SACL	*+,AR2
	ADRK	26-LF10
	LAR	AR3,* ,AR3
	MAR	*0+,AR1
	MAR	*-
	LAC	* ,AR3
	MAR	*+
	SACL	* ,AR1
	.line	34
;>>>> 	                        Real_Data=(Real_Data-(Dis_Data[Counter]-0x30))*10.0;
	LALK	FL1
	RPTK	1
	TBLR	*+
	MAR	* ,AR2
	LAR	AR3,* ,AR3
	MAR	*0+
	SSXM
	MAR	*+
	LAC	* ,AR1
	SUBK	48
	CALL	F$$ITOF
	MAR	* ,AR2
	SBRK	27-LF10
	LAC	*+,AR1
	SACL	*+,AR2
	LAC	*-,AR1
	SACL	*+
	CALL	F$$SUB
	CALL	F$$MUL
	MAR	*-
	ZALH	*-
	ADDS	* ,AR2
	SACL	*+
	SACH	* 
	.line	35
;>>>> 	                        if (Dot_Flag==0)
	ADRK	27-LF10
	LAC	* 
	BNZ	L53
	.line	37
;>>>> 	                                        Counter=Counter+1;
	MAR	*-
	LAC	* 
	ADDK	1
	SACL	* 
	.line	38
;>>>> 	                                        Dis_Data[Counter]='.';
	LAR	AR3,* ,AR3
	MAR	*0+
	LACK	46
	MAR	*+
	SACL	* 
L53:
	.line	40
;>>>> 	                        Dot_Flag--;
	MAR	* ,AR2
	LARK	AR2,22
	MAR	*0+
	LAC	* 
	SUBK	1
	SACL	*-
	.line	31
	LAC	* 
	ADDK	1
	SACL	* 
	SBRK	28-LF10
	ZALS	* ,AR1
	ADDK	1
	SACL	* ,AR2
	ADRK	28-LF10
	ZALS	* ,AR1
	SUBS	* ,AR2
	SBRK	27-LF10
	BLEZ	L51
L52:
	.line	43
;>>>> 	        for (Counter=0;Counter<Dot_Bit+2;Counter++)
	LACK	0
	MAR	* ,AR2
	LARK	AR2,21
	MAR	*0+
	SACL	* 
	SBRK	28-LF10
	ZALS	* ,AR1
	ADDK	2
	SACL	* ,AR2
	ADRK	28-LF10
	ZALS	* ,AR1
	SUBS	* 
	BGEZ	L55
	MAR	* ,AR2
L54:
	.line	44
;>>>> 	                Lcd_Character(Row,Column++,Dis_Data[Counter]);
	LAR	AR3,* ,AR3
	MAR	*0+
	MAR	*+
	LAC	* ,AR1
	SACL	*+,AR2
	SBRK	25-LF10
	LAC	* 
	ADDK	1
	SACL	*+,AR1
	SUBK	1
	SACL	*+,AR2
	LAC	* ,AR1
	SACL	*+
	CALL	_Lcd_Character
	SBRK	3
	.line	43
	MAR	* ,AR2
	LARK	AR2,21
	MAR	*0+
	LAC	* 
	ADDK	1
	SACL	* 
	SBRK	28-LF10
	ZALS	* ,AR1
	ADDK	2
	SACL	* ,AR2
	ADRK	28-LF10
	ZALS	* ,AR1
	SUBS	* ,AR2
	BLZ	L54
L55:
EPI0_10:
	.line	46
	MAR	* ,AR1
	SBRK	24
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	546,000000000H,23

	.sym	_Lcd_Exp,_Lcd_Exp,32,2,0
	.globl	_Lcd_Exp

	.func	561
;>>>> 	void    Lcd_Exp(unsigned int Row,unsigned int Column,double Real_Data,unsigned int Dot_Bit)
******************************************************
* FUNCTION DEF : _Lcd_Exp
******************************************************
_Lcd_Exp:

LF11	.set	0

	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,23
	LAR	AR0,*0+,AR2

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -