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

📄 cal.asm

📁 此程序为出租车计价器
💻 ASM
📖 第 1 页 / 共 3 页
字号:
	.dw 0x0d,0x0a
.code
LM89:
.debug
	.dw '.stabn 0x44,0,218,',0,0
	.dd LM90-_Cal_HourChanged
	.dw 0x0d,0x0a
.code
LM90:
L25:

	pop bp from [sp]
	retf
	.endp	// end of Cal_HourChanged

.debug
	.dw '.stabf ',0,0
	.dd LME14-_Cal_HourChanged
	.dw 0x0d,0x0a
.code
LME14:
.code
.debug
	.dw '.stabs "Cal_MinuteChanged:F4",36,0,0,',0,0,offset _Cal_MinuteChanged,seg _Cal_MinuteChanged,0x0d,0x0a
.CODE
.public _Cal_MinuteChanged
_Cal_MinuteChanged:	.proc
.debug
	.dw '.stabn 0x44,0,228,',0,0
	.dd LM91-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM91:
	// total=0, vars=0
	// frame_pointer_needed: 1
	push bp to [sp]
	bp=sp+1

	R2=BP+3
.debug
	.dw '.stabn 0x44,0,229,',0,0
	.dd LM92-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM92:
	R1=[_uiMinuteChanged]	// QImode move
	CMP R1,1	// QImode compare
	JZ L32	// QImode NE
	PC=L30
L32:
.debug
	.dw '.stabn 0x44,0,231,',0,0
	.dd LM93-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM93:
	R1=0	// QImode move
	[_uiMinuteChanged]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,232,',0,0
	.dd LM94-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM94:
	R1=1	// QImode move
	pc=L29	// Indirect jump
.debug
	.dw '.stabn 0x44,0,233,',0,0
	.dd LM95-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM95:
	pc=L31	// Indirect jump
L30:
.debug
	.dw '.stabn 0x44,0,235,',0,0
	.dd LM96-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM96:
	R1=0	// QImode move
	pc=L29	// Indirect jump
L31:
.debug
	.dw '.stabn 0x44,0,236,',0,0
	.dd LM97-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM97:
.debug
	.dw '.stabn 0x44,0,236,',0,0
	.dd LM98-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LM98:
L29:

	pop bp from [sp]
	retf
	.endp	// end of Cal_MinuteChanged

.debug
	.dw '.stabf ',0,0
	.dd LME15-_Cal_MinuteChanged
	.dw 0x0d,0x0a
.code
LME15:
.code
.debug
	.dw '.stabs "Cal_DateChanged:F4",36,0,0,',0,0,offset _Cal_DateChanged,seg _Cal_DateChanged,0x0d,0x0a
.CODE
.public _Cal_DateChanged
_Cal_DateChanged:	.proc
.debug
	.dw '.stabn 0x44,0,246,',0,0
	.dd LM99-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM99:
	// total=0, vars=0
	// frame_pointer_needed: 1
	push bp to [sp]
	bp=sp+1

	R2=BP+3
.debug
	.dw '.stabn 0x44,0,247,',0,0
	.dd LM100-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM100:
	R1=[_uiDateChanged]	// QImode move
	CMP R1,1	// QImode compare
	JZ L36	// QImode NE
	PC=L34
L36:
.debug
	.dw '.stabn 0x44,0,249,',0,0
	.dd LM101-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM101:
	R1=0	// QImode move
	[_uiDateChanged]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,250,',0,0
	.dd LM102-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM102:
	R1=1	// QImode move
	pc=L33	// Indirect jump
.debug
	.dw '.stabn 0x44,0,251,',0,0
	.dd LM103-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM103:
	pc=L35	// Indirect jump
L34:
.debug
	.dw '.stabn 0x44,0,253,',0,0
	.dd LM104-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM104:
	R1=0	// QImode move
	pc=L33	// Indirect jump
L35:
.debug
	.dw '.stabn 0x44,0,254,',0,0
	.dd LM105-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM105:
.debug
	.dw '.stabn 0x44,0,254,',0,0
	.dd LM106-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LM106:
L33:

	pop bp from [sp]
	retf
	.endp	// end of Cal_DateChanged

.debug
	.dw '.stabf ',0,0
	.dd LME16-_Cal_DateChanged
	.dw 0x0d,0x0a
.code
LME16:
.code
.debug
	.dw '.stabs "Cal_GetHello:F4",36,0,0,',0,0,offset _Cal_GetHello,seg _Cal_GetHello,0x0d,0x0a
.CODE
.public _Cal_GetHello
_Cal_GetHello:	.proc
.debug
	.dw '.stabn 0x44,0,266,',0,0
	.dd LM107-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM107:
	// total=0, vars=0
	// frame_pointer_needed: 1
	push bp to [sp]
	bp=sp+1

	R2=BP+3
.debug
	.dw '.stabn 0x44,0,267,',0,0
	.dd LM108-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM108:
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,18	// QImode compare
	JA L46	// QImode LEU
	PC=L38
L46:
.debug
	.dw '.stabn 0x44,0,268,',0,0
	.dd LM109-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM109:
	R1=3	// QImode move
	pc=L37	// Indirect jump
	pc=L39	// Indirect jump
L38:
.debug
	.dw '.stabn 0x44,0,269,',0,0
	.dd LM110-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM110:
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,13	// QImode compare
	JA L47	// QImode LEU
	PC=L40
L47:
.debug
	.dw '.stabn 0x44,0,270,',0,0
	.dd LM111-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM111:
	R1=2	// QImode move
	pc=L37	// Indirect jump
	pc=L39	// Indirect jump
L40:
.debug
	.dw '.stabn 0x44,0,271,',0,0
	.dd LM112-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM112:
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,11	// QImode compare
	JA L48	// QImode LEU
	PC=L42
L48:
.debug
	.dw '.stabn 0x44,0,272,',0,0
	.dd LM113-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM113:
	R1=1	// QImode move
	pc=L37	// Indirect jump
	pc=L39	// Indirect jump
L42:
.debug
	.dw '.stabn 0x44,0,273,',0,0
	.dd LM114-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM114:
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,6	// QImode compare
	JA L49	// QImode LEU
	PC=L44
L49:
.debug
	.dw '.stabn 0x44,0,274,',0,0
	.dd LM115-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM115:
	R1=0	// QImode move
	pc=L37	// Indirect jump
	pc=L39	// Indirect jump
L44:
.debug
	.dw '.stabn 0x44,0,276,',0,0
	.dd LM116-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM116:
	R1=3	// QImode move
	pc=L37	// Indirect jump
L45:
L43:
L41:
L39:
.debug
	.dw '.stabn 0x44,0,277,',0,0
	.dd LM117-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM117:
.debug
	.dw '.stabn 0x44,0,277,',0,0
	.dd LM118-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LM118:
L37:

	pop bp from [sp]
	retf
	.endp	// end of Cal_GetHello

.debug
	.dw '.stabs "Hour:p4",160,0,0,3',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME17-_Cal_GetHello
	.dw 0x0d,0x0a
.code
LME17:
.code
.debug
	.dw '.stabs "Cal_In_RYear:F4",36,0,0,',0,0,offset _Cal_In_RYear,seg _Cal_In_RYear,0x0d,0x0a
.CODE
.public _Cal_In_RYear
_Cal_In_RYear:	.proc
.debug
	.dw '.stabn 0x44,0,287,',0,0
	.dd LM119-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM119:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,288,',0,0
	.dd LM120-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM120:
	R1=[BP]	// QImode move
	R2=[R1]	// QImode move
	R1=R2&3
	CMP R1,0	// QImode test
	JZ L54	// QImode NE
	PC=L51
L54:
.debug
	.dw '.stabn 0x44,0,289,',0,0
	.dd LM121-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM121:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	R2=100	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __modu1	// call with return value
	SP=SP+2
	CMP R1,0	// QImode test
	JNZ L55	// QImode EQ
	PC=L51
L55:
.debug
	.dw '.stabn 0x44,0,290,',0,0
	.dd LM122-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM122:
	R1=1	// QImode move
	pc=L50	// Indirect jump
L52:
L51:
.debug
	.dw '.stabn 0x44,0,291,',0,0
	.dd LM123-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM123:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	R2=400	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __modu1	// call with return value
	SP=SP+2
	CMP R1,0	// QImode test
	JZ L56	// QImode NE
	PC=L53
L56:
.debug
	.dw '.stabn 0x44,0,292,',0,0
	.dd LM124-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM124:
	R1=1	// QImode move
	pc=L50	// Indirect jump
L53:
.debug
	.dw '.stabn 0x44,0,293,',0,0
	.dd LM125-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM125:
	R1=0	// QImode move
	pc=L50	// Indirect jump
.debug
	.dw '.stabn 0x44,0,294,',0,0
	.dd LM126-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM126:
.debug
	.dw '.stabn 0x44,0,294,',0,0
	.dd LM127-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LM127:
L50:

	sp+=1
	pop bp from [sp]
	retf
	.endp	// end of Cal_In_RYear

.debug
	.dw '.stabs "Year:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME18-_Cal_In_RYear
	.dw 0x0d,0x0a
.code
LME18:
.code
.debug
	.dw '.stabs "Cal_In_GetDayofMonth:F4",36,0,0,',0,0,offset _Cal_In_GetDayofMonth,seg _Cal_In_GetDayofMonth,0x0d,0x0a
.CODE
.public _Cal_In_GetDayofMonth
_Cal_In_GetDayofMonth:	.proc
.debug
	.dw '.stabn 0x44,0,304,',0,0
	.dd LM128-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM128:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,305,',0,0
	.dd LM129-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM129:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	CMP R1,2	// QImode compare
	JZ L62	// QImode NE
	PC=L58
L62:
.debug
	.dw '.stabn 0x44,0,307,',0,0
	.dd LM130-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM130:
	R1=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	call _Cal_In_RYear	// call with return value
	SP=SP+1
	CMP R1,1	// QImode compare
	JZ L63	// QImode NE
	PC=L59
L63:
.debug
	.dw '.stabn 0x44,0,308,',0,0
	.dd LM131-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM131:
	R1=29	// QImode move
	pc=L57	// Indirect jump
	pc=L60	// Indirect jump
L59:
.debug
	.dw '.stabn 0x44,0,310,',0,0
	.dd LM132-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM132:
	R1=28	// QImode move
	pc=L57	// Indirect jump
L60:
.debug
	.dw '.stabn 0x44,0,311,',0,0
	.dd LM133-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM133:
	pc=L61	// Indirect jump
L58:
.debug
	.dw '.stabn 0x44,0,313,',0,0
	.dd LM134-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM134:
	R1=_uiDayofMonth	// QImode move
	R3=[BP]	// QImode move
	R2=[R3]	// QImode move
	R1+=R2	// addqi3_r0r
	R3=R1	// QImode move
	R2=[R3]	// QImode move
	R1=R2	// QImode move
	pc=L57	// Indirect jump
L61:
.debug
	.dw '.stabn 0x44,0,314,',0,0
	.dd LM135-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM135:
.debug
	.dw '.stabn 0x44,0,314,',0,0
	.dd LM136-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LM136:
L57:

	sp+=1
	pop bp from [sp]
	retf
	.endp	// end of Cal_In_GetDayofMonth

.debug
	.dw '.stabs "Month:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "Year:p4",160,0,0,5',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME19-_Cal_In_GetDayofMonth
	.dw 0x0d,0x0a
.code
LME19:
.debug
	.dw '.stabs "sDate:G21",32,0,0,',0,0,offset _sDate,seg _sDate,0x0d,0x0a
.CODE
.ram
.public _sDate
_sDate:
	.dw 6 dup(0)
.debug
	.dw '.stabs "ulTimer:G24=ar1;0;1;5",32,0,0,',0,0,offset _ulTimer,seg _ulTimer,0x0d,0x0a
.CODE
.ram
.public _ulTimer
_ulTimer:
	.dw 4 dup(0)
.debug
	.dw '.stabs "uiHourChanged:G4",32,0,0,',0,0,offset _uiHourChanged,seg _uiHourChanged,0x0d,0x0a
.CODE
.ram
.public _uiHourChanged
_uiHourChanged:
	.dw 0
.debug
	.dw '.stabs "uiMinuteChanged:G4",32,0,0,',0,0,offset _uiMinuteChanged,seg _uiMinuteChanged,0x0d,0x0a
.CODE
.ram
.public _uiMinuteChanged
_uiMinuteChanged:
	.dw 0
.debug
	.dw '.stabs "uiDateChanged:G4",32,0,0,',0,0,offset _uiDateChanged,seg _uiDateChanged,0x0d,0x0a
.CODE
.ram
.public _uiDateChanged
_uiDateChanged:
	.dw 0
.debug
	.dw '.stabs "uiDayofCurMonth:G4",32,0,0,',0,0,offset _uiDayofCurMonth,seg _uiDayofCurMonth,0x0d,0x0a
.CODE
.ram
.public _uiDayofCurMonth
_uiDayofCurMonth:
	.dw 0
.external _C_Second
.external _C_Minute
.external _C_Hour
.external _C_Day
.external _C_Month
.external _C_Year
.external __modu1
.external __rshu1
	.end

⌨️ 快捷键说明

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