汇编程序求解,编译环境Freescale CodeWarrior,输入年月,求当月是几天,该怎么改,或是帮忙写一个,急等

MONTHds.w1YEARds.w1main:_Startup:Entry:LDS#__SEG_END_SSTACK;initializethestackpointer... MONTH ds.w 1
YEAR ds.w 1

main:
_Startup:
Entry:
LDS #__SEG_END_SSTACK ; initialize the stack pointer
CLI ; enable interrupts
LDAA #2
STAA MONTH
LDD #2008
STD YEAR

M_LEGTH LDAA #30
LDAB #2
CMPB MONTH
BEQ CALL2
BRA NEXT
CALL2 JSR FEBRARY
BRA Endlessloop
NEXT LDAB MONTH
CMPB #8
BLT ODDBIG
INCB
ODDBIG ANDB #1
ABA
Endlessloop:
BRA Endlessloop

FEBRARY: DECA
LDD YEAR
IDIV #400
XGDX
ANDX #FF
BEQ FINI

LDAB YEAR+1
ANDB #3
BEQ FIII
DECA

FIII: LDD YEAR
IDIV #100
ANDA #$FF
BNE FINI
DECA

FINI: RTS
展开
 我来答
dreammvp
2011-10-22
知道答主
回答量:4
采纳率:0%
帮助的人:11.4万
展开全部
ORG $2000
MONTH RMB 1
YEAR ds.w 1
ORG $2FF0
YEAR1 RMB 100

ORG $4000
main:
_Startup:
Entry:
LDS #$3000 ; initialize the stack pointer
CLI ; enable interrupts
LDAA #2
STAA MONTH
LDD #2100
STD YEAR

M_LEGTH LDAA #30
LDAB #2
CMPB MONTH
BEQ CALL2
BRA NEXT
CALL2 JSR FEBRARY
BRA Endlessloop
NEXT LDAB MONTH
CMPB #8
BLT ODDBIG
INCB
ODDBIG ANDB #1
ABA
Endlessloop:
BRA Endlessloop

FEBRARY: DECA
PSHA
LDD YEAR
LDX #400
IDIV
XGDX
ANDX #$FFFF
BEQ FINI

LDAB YEAR+1
ANDB #3
BEQ FIII
PULA
DECA
RTS

FIII: LDD YEAR
LDX #100
IDIV
ANDB #$FF
BNE FINI
PULA
DECA
RTS

FINI: PULA
RTS
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式