在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的萬年歷匯編語(yǔ)言程序

            基于單片機(jī)的萬年歷匯編語(yǔ)言程序

            作者: 時(shí)間:2011-03-27 來源:網(wǎng)絡(luò) 收藏

            ;真正的:84bytes的51ASM

            ;==SUB_WNL=====*DengMiao*2004-06-01*****GuangZhou******
            SJDATA30H;世紀(jì)BCD00TO99
            NHDATA31H;年號(hào)BCD00TO990000TO9999年
            YFDATA32H;月份BCD01TO12

            org000h
            MOVSP,#40H
            MOVSJ,#21H;2004-05
            MOVNH,#01H
            MOVYF,#4H
            ACALLSUB_WNL
            SJMP$

            ;===============SUB_WNL===================
            ;入口:
            ;SJDATA30H;世紀(jì)BCD00TO99
            ;NHDATA31H;年號(hào)BCD00TO990000TO9999年
            ;YFDATA32H;月份BCD01TO12
            ;出口
            ;ACC--本月天數(shù)BCD28to31
            ;B--本月1日的星期數(shù)1to6==星期1to星期6
            ;0--星期日
            ;使用:ACC,B,R5,R6
            ;STACK:3bytes(不包括調(diào)用)
            ORG50H


            SUB_WNL:
            PUSHPSW
            MOVA,SJ
            ACALLBCD2BIN_MOD4
            ;x400年:(大周期)
            ;=146097天=7*20871+0天
            ;x100年:
            ;000年=7*0+0+1-11=0*2+1****
            ;100年=7*5217+7+1-22=1*2
            ;200年=7*10435+7+1-44=2*2
            ;300年=7*15653+7+1-66=3*2
            ;{1,2,4,6}
            MOVA,R6;A=R6=SJ_BINMOD4
            RLCA;A=A*2+CA={1,2,4,6}****
            XRLA,#10000111B;A=87H-A;邊界調(diào)整
            MOVR5,A;A={86H,85H,83H,81H};R5:星期
            MOVA,NH
            JZWNL_1
            ACALLBCD2BIN_MOD4
            XCHA,R5
            SUBBA,R5;0年;0=0+0+1+(-1)***
            MOVR5,A

            WNL_1:
            MOVA,YF
            ADDA,#(WNL_TAB-$-4)
            MOVCA,@A+PC
            MOVR6,A

            SWAPA
            ACALLWNL_F0;大年對(duì)>=3月調(diào)整準(zhǔn)備
            ADDCA,R5;月調(diào)整
            MOVB,#7
            DIVAB;B=AMOD7

            MOVA,R6
            ACALLWNL_F0;大年調(diào)整準(zhǔn)備
            ADDCA,#28
            POPPSW
            RET

            WNL_TAB:
            DB3*2+5*32+0;1BIT0:2月標(biāo)志
            DB0*2+1+1*32+0;2**BIT1..2:月大小
            DB3*2+1*32+16;300:28天
            DB2*2+4*32+16;401:----
            DB3*2+6*32+16;510:30天
            DB2*2+2*32+16;611:31天
            DB3*2+4*32+16;7BIT3:0-----
            DB3*2+7*32+16;8BIT4:0:1/2月
            DB2*2+3*32+16;91:>=3月
            WNL_F0:;6BYTES;大年調(diào)整準(zhǔn)備
            RRCA;0AH
            ANLA,#07H;0BH
            ;0CH
            ANLC,F0;0DH
            ;0EH
            RET;0FH
            DB3*2+5*32+16;10HBIT5..7:星期調(diào)整數(shù)
            DB2*2+1*32+16;11H0:---
            DB3*2+3*32+16;12H1-7:調(diào)整數(shù)

            BCD2BIN_MOD4:
            ;功能:A.1BYTESBCDTOBIN
            ;B.MOD4
            ;C.MUL2
            ;入口:
            ;A:SJORNH
            ;F0:大世紀(jì)
            ;出口
            ;ACC--(BIN(A)4)*2-(BIN(A)MOD4)-F0
            ;R6--BIN(A)MOD4
            ;C--IIF((BIN(A)MOD4)=0,1,0)
            ;使用:ACC,B,R6,PSW
            ;STACK:0bytes(不包括調(diào)用)

            MOVR6,A;BCD==>BIN
            ANLA,#0F0H;16X+Y==>10X+Y
            SWAPA
            MOVB,#(256-6);(256-6)*X+(16X+Y)
            MULAB;
            ADDA,R6;=256X+(10X+Y)

            MOVR6,A;MOD4
            ANLA,#3
            XCHA,R6;R6=BINMOD4={0,1,2,3}
            ;X4年:3*365+366=7*209+(-2)**
            XRLA,R6;A=(BIN4)
            RRA;A=(BIN4)*2**
            MOVC,F0;大世紀(jì)調(diào)整
            SUBBA,R6
            ;X1年:
            ;0年0=0+0+1+(-1)***
            ;1年366=7*52+1+1
            ;2年366+365=7*104+2+1
            ;3年366+365+365=7*156+3+1
            ;{-1,1,2,3}
            CJNER6,#1,$+3;C=IIF(R6>=1,0,1)
            MOVF0,C;C=1為大年/大世紀(jì)
            RET
            ;-----------------------------
            END;========ENDOFFILE

            本文引用地址:http://www.biyoush.com/article/172916.htm


            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉