RosettaCodeData/Task/Leap-year/X86-Assembly/leap-year.x86
Ingy döt Net 6f050a029e update
2013-06-05 21:47:54 +00:00

17 lines
314 B
Text

align 16
; Input year as signed dword in EAX
IsLeapYear:
test eax,11b
jz .4
retn ; 75% : ZF=0, not a leap year
.4:
mov ecx,100
cdq
idiv ecx
test edx,edx
jz .100
cmp edx,edx
retn ; 24% : ZF=1, leap year
.100:
test eax,11b
retn ; 1% : ZF=?, leap year if EAX%400=0