我在公车被蹭水后当晚就来了月经,在公车上露着奶被男人玩,公车上的人妻沦陷完整版,(NP、高H、纯肉)公车,公车娇喘抽搐喷潮H文苏小暖,公车全黄H全肉短篇公车之狼

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開(kāi)發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開(kāi)發(fā)工具

提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

定點(diǎn)數(shù)轉(zhuǎn)浮點(diǎn)數(shù)的程序

更新時(shí)間: 2019-03-23
閱讀量:3761

十年專注單片機(jī)方案開(kāi)發(fā)的方案公司英銳恩,分享定點(diǎn)數(shù)轉(zhuǎn)浮點(diǎn)數(shù)的程序。英銳恩現(xiàn)提供服務(wù)產(chǎn)品涉及主控芯片:8位單片機(jī)、16位單片機(jī)、32位單片機(jī)及各類運(yùn)算放大器等。

定點(diǎn)數(shù)轉(zhuǎn)換成浮點(diǎn)數(shù)
本子程序的功能是將雙字節(jié)定點(diǎn)整數(shù)(十六進(jìn)制)轉(zhuǎn)換為3字節(jié)浮點(diǎn)數(shù),其轉(zhuǎn)換數(shù)值范圍:-32768~32767,入口條件和出口條件如下:
入口條件:ACCBHI、ACCBLO
出口條件:ACCBHI、ACCBLO、EXPB
以下為定點(diǎn)整數(shù)轉(zhuǎn)換成浮點(diǎn)數(shù)的程序清單。
    LIST            p=16f877
    INCLUDE        p16f877.inc
    ACCBLO         EQU     23        ;存放定點(diǎn)整數(shù)和轉(zhuǎn)換后浮點(diǎn)數(shù)的尾數(shù)
    ACCBHI         EQU     24
    EXPB         EQU     25        ;存放轉(zhuǎn)換后浮點(diǎn)數(shù)的階碼
    ACCCLO         EQU     26        ;臨時(shí)寄存器
    ACCCHI         EQU     27        ;臨時(shí)寄存器
    ACCDLO         EQU     28        ;臨時(shí)寄存器
    ACCDHI         EQU     29        ;臨時(shí)寄存器
    SIGN         EQU     2B        ;存放被轉(zhuǎn)換數(shù)的符號(hào)

ORG            0X0000
START    GOTO        MAIN
    ORG            0X0100
;*********雙字節(jié)定點(diǎn)整數(shù)到浮點(diǎn)數(shù)轉(zhuǎn)換子程序***********
DtoF    CLRF         SIGN            ;根據(jù)被轉(zhuǎn)換數(shù)確定結(jié)果的符號(hào),對(duì)負(fù)數(shù)取補(bǔ)
    BTFSS         ACCBHI,7
    GOTO         INTF1
    BSF             SIGN,7
    CALL         NEG_B
INTF1    MOVLW         .15            ;初始化EXPB
    MOVWF         EXPB
    CLRF         ACCCHI
    CLRF         ACCCLO
    CALL         F_norm        ;對(duì)ACCB進(jìn)行規(guī)格化
    BTFSS         SIGN,7        ;結(jié)果為負(fù)?
    GOTO         DtoF1
    CALL         NEG_B        ;是,求補(bǔ)
DtoF1    RETURN   
;**************浮點(diǎn)數(shù)規(guī)格化子程序**************
F_norm     MOVF         ACCBHI        ;ACCB=0?
    BTFSS         STATUS,Z
    GOTO         C_norm
    MOVF         ACCBLO
    BTFSC         STATUS,Z

 RETLW         0            ;是,不需規(guī)格化,返回
C_norm    BTFSC        ACCBHI,7    ;否。ACCB為負(fù)?
     GOTO        C_norm2   
C_norm1    BTFSC         ACCBHI,6    ;為正。規(guī)格化完畢?
    RETLW         0            ;ACCBHI.6=1,規(guī)格化結(jié)束
    CALL         SHFTSL        ;否。ACCB左移
    DECF         EXPB        ;EXPB減1
    GOTO         C_norm1        ;重新判斷規(guī)格化完畢否?
C_norm2    BTFSS        ACCBHI,6    ;ACCB為負(fù)。規(guī)格化完畢否?
    RETLW        0            ;ACCBHI.6=0,規(guī)格化結(jié)束
    BCF            STATUS,C   
    CALL        SHFTSL        ;否,ACCB左移
    BSF            ACCBHI,7    ;加符號(hào)
    DECF        EXPB        ;EXPB減1

 GOTO        C_norm2        ;重新判斷規(guī)格化完畢否?
SHFTSL      BCF             STATUS ,C    ;ACCB左移子程序   
    RLF             ACCCLO       
    RLF             ACCCHI
    RLF             ACCBLO
    RLF             ACCBHI
    RETLW         0
【校驗(yàn)舉例1】 19531(十進(jìn)制)
化為十六進(jìn)制數(shù):4C4BH
結(jié)果:4C4B0FH
【校驗(yàn)舉例2】 2622(十進(jìn)制)
化為十六進(jìn)制數(shù): 0A3EH
結(jié)果:51F00CH
【例程】
MAIN        MOVLW        0X4B        ;被轉(zhuǎn)換數(shù)4C4BH送ACCB
    MOVWF        ACCBLO
    MOVLW        0X4C
    MOVWF        ACCBHI
        CALL        DtoF            ;調(diào)用定點(diǎn)數(shù)至浮點(diǎn)數(shù)轉(zhuǎn)換子程序
    END

仪征市| 山阳县| 山丹县| 固始县| 巴林右旗| 新昌县| 霞浦县| 双流县| 博罗县| 平果县| 东莞市| 栖霞市| 德安县| 玉门市| 庆云县| 西和县| 巴林右旗| 弋阳县| 会东县| 双辽市| 湛江市| 遂川县| 剑河县| 太仆寺旗| 西华县| 平阴县| 藁城市| 琼中| 清徐县| 长沙市| 宁阳县| 台中县| 金秀| 色达县| 定边县| 青岛市| 锦州市| 康马县| 灵璧县| 南川市| 崇信县|