• 5月份61城房价环比反弹 多地调控政策或再加码 ——凤凰网房产济南 2019-03-26
  • 按照马克思的原义,共产主义是"以每一个个人的全面而自由的发展为基本原则的社会形式"。这一基本原则的实现,涉及社会政治、经济、文化等方方面面。离开这一基本原则侈谈 2019-03-26
  • 报告:互联网平台责任设定应进一步完善 2019-03-25
  • 绿地申花公布新队徽 豹子头回归增加1993受好评 2019-03-17
  • 中宣部授予张黎明“时代楷模”称号 2019-03-14
  • 林业和草原局:加大对海南生态保护和修复支持力度 2019-02-28
  • 质疑的能力都没有,还有批判的余地吗》?看着就想笑 2019-02-28
  • Steam《野兽传奇》免费领取原价48元 2019-02-08
  • 上班族用手机电脑过度 肩颈僵硬疼痛怎么办-生活资讯 2018-11-22
  • 藏品快报:如何评价和田玉籽料原石的当下与未来? 2018-11-22
  • 高中生给班主任写期末评语 2018-11-22
  • 回复@“老笑头”,共产主义需要分配生产资料应该是你做梦的时候梦到的吧!这除了让网友们笑掉大牙,还能有什么?你确实是让网友们看着就想笑!哈哈哈哈! 2018-11-21
  • 绝崖山谷藏神秘古寺 简单就是世界奇观 2018-11-21
  • 【阿里天气】最新阿里今天天气,实时提供阿里气温、空气质量、24小时天气预报、生活指数查询 2018-11-21
  • 在人才培养体系建设上下功夫 2018-11-20
  • 11选5杀号精准公式99% > 控制/MCU > 正文

    11选五前三直选走势图:MSC-51单片机的3字节和4字节浮点数计算程序分析

    2018年11月14日 16:12 ? 次阅读

    11选5杀号精准公式99% www.phde.net MSC-51 3字节和4字节浮点数计算程序,主要用于数据采集及上传,经过IEEE转换,在上位机直接显示。

    ;这是本人使用的MSC-51 3字节和4字节浮点数计算程序,主要用于数据采集及上传,经过IEEE转换,在上位机直接显示。


    MSC-51单片机的3字节和4字节浮点数计算程序分析

    ; FLOATING PROGRAM

    ;##########################################

    ;##########################################

    ;-----------------------------------------------

    ; IEEE754 FLOAT CONVERT TO 4 BYTES FLOAT

    ; INPUT: ((R0))((R0)+1)((R0)+2)((R0)+3) IEEE-754 FLOAT

    ; OUTPUT: R4 R5R6R7 4 BYTES FLOAT

    ;-----------------------------------------------

    IEE_F:MOV A,@R0

    JNZ CON_0

    INC R0

    MOV A,@R0

    JNZ CON_1

    INC R0

    MOV A,@R0

    JNZ CON_2

    INC R0

    MOV A,@R0

    JNZ CON_3

    MOV R4,#0

    MOV R5,#0

    MOV R6,#0

    MOV R7,#0

    DEC R0

    DEC R0

    DEC R0

    RET

    CON_3:DEC R0

    CON_2:DEC R0

    CON_1:DEC R0

    CON_0:CLR FLAG_0

    INC R0

    MOV A,@R0

    RLC A

    MOV R5,A

    DEC R0

    MOV A,@R0

    RLC A

    MOV R4,A

    JNC SA_IE

    SETB FLAG_0

    SA_IE: CLR C

    MOV A,R4

    SUBB A,#7FH

    CLR C

    INC A

    MOV C,ACC.7

    MOV ACC.6,C

    MOV C,FLAG_0

    MOV ACC.7,C

    MOV R4,A

    MOV A,R5

    SETB C

    RRC A

    MOV R5,A

    INC R0

    INC R0

    MOV A,@R0

    MOV R6,A

    INC R0

    MOV A,@R0

    MOV R7,A

    DEC R0

    DEC R0

    DEC R0

    RET

    ;---------------------------------------------

    ; 4 BYTES FLOAT CONVERT TO IEEE754 FLOAT

    ; INPUT: ((R0)) R2R3R4 4 BYTES FLOAT

    ; OUTPUT: ((R1)) ((R1)+1) ((R1)+2) ((R1)+3)

    ; IEEE-754 FLOAT

    ;---------------------------------------------

    F_IEE:

    INC R0

    MOV A, @R0

    MOV R2, A

    INC R0

    MOV A, @R0

    MOV R3, A

    INC R0

    MOV A, @R0

    MOV R4, A

    DEC R0

    DEC R0

    DEC R0

    MOV A,R2

    JZ ZERO_IEE

    MOV A,@R0

    MOV C,ACC.7

    MOV FLAG_0,C

    CLR ACC.7

    MOV C,ACC.6

    JC F_FF

    DEC A

    CLR C

    ADD A,#7FH

    LJMP F_TR

    F_FF: CLR C

    SUBB A,#02H

    F_TR: MOV C,FLAG_0

    RRC A

    MOV @R1,A

    INC R1

    MOV A,R2

    MOV ACC.7,C

    MOV @R1,A

    INC R1

    MOV A,R3

    MOV @R1,A

    INC R1

    MOV A,R4

    MOV @R1,A

    FIEE_OFF:DEC R1

    DEC R1

    DEC R1

    RET

    ZERO_IEE:MOV @R1,A

    INC R1

    MOV @R1,A

    INC R1

    MOV @R1,A

    INC R1

    MOV @R1,A

    SJMP FIEE_OFF

    ;==========================================

    ; 2 BYTE MUL

    ; 0.R2R3 * 0.R4R5→0.R2R3R7

    ;------------------------------------------

    D2_MUL: MOV A, R3

    MOV B, R5

    MUL AB

    MOV R7, B

    MOV A, R3

    MOV B, R4

    MUL AB

    ADD A, R7

    MOV R7, A

    CLR A

    ADDC A, B

    MOV R3, A

    MOV A, R2

    MOV B, R5

    MUL AB

    ADD A, R7

    MOV A, R3

    ADDC A, B

    MOV R3, A

    MOV PSW.5, c

    MOV A, R2

    MOV B, R4

    MUL AB

    ADD A, R3

    MOV R3, A

    CLR A

    ADDC A, B

    MOV C, PSW.5

    ADDC A, #0

    MOV R2, A

    RET

    ;------------------------------

    ; 2 BYTE DIV

    ; 0.R2R3R7R6 / 0.R4R5→0.R2R3

    ; INPUT 0.R2R3 《 0.R4R5

    ;------------------------------

    D2_DIV: MOV A, R1

    PUSH ACC

    MOV B, #10H

    A2O: CLR C

    MOV A, R6

    RLC A

    MOV R6, A

    MOV A, R7

    RLC A

    MOV R7, A

    MOV A, R3

    RLC A

    MOV R3, A

    XCH A, R2

    RLC A

    XCH A, R2

    MOV PSW.5, C

    CLR C

    SUBB A, R5

    MOV R1, A

    MOV A, R2

    SUBB A, R4

    JB PSW.5, A2S

    JC A2R

    A2S: MOV R2, A

    MOV A, R1

    MOV R3, A

    INC R6

    A2R: DJNZ B, A2O

    POP ACC

    MOV R1, A

    MOV A, R7

    MOV R2, A

    MOV A, R6

    MOV R3, A

    RET

    ;--------------------------------------

    ; 3 BYTE FLOAT LOAD

    ; ((R0))→R6,((R0)+1)→R2,((R0)+2)→R3

    ; ((R1))→R7,((R1)+1)→R4,((R0)+2)→R5

    ;--------------------------------------

    F3_MLD: MOV A, @R0

    MOV R6, A

    INC R0

    MOV A, @R0

    MOV R2, A

    INC R0

    MOV A, @R0

    MOV R3, A

    DEC R0

    DEC R0

    MOV A, @R1

    MOV R7, A

    INC R1

    MOV A, @R1

    MOV R4, A

    INC R1

    MOV A, @R1

    MOV R5, A

    DEC R1

    DEC R1

    RET

    ;--------------------------------------

    ; 3 BYTE FLOAT STANDED

    ;--------------------------------------

    F3_SDT: JC M3A

    MOV C, FLAG39

    JB PSW.5, M3B

    MOV A, R2

    RRC A

    MOV R2, A

    MOV A, R3

    RRC A

    MOV R3, A

    INC R6

    RET

    M3B: MOV A, R4

    RRC A

    MOV R4, A

    MOV A, R5

    RRC A

    MOV R5, A

    INC R7

    RET

    M3A: MOV A, R2

    JNZ M3C

    CJNE R3, #0, M3D

    MOV R6, #41H

    M3E: RET

    M3C: JB ACC.7, M3E

    M3D: MOV C, PSW.5

    MOV A, R3

    RLC A

    MOV R3, A

    MOV A, R2

    RLC A

    MOV R2, A

    CLR PSW.5

    DEC R6

    SJMP M3A

    RET

    ;--------------------------------------

    ; 3 BYTE FLOAT ADD OR SUB

    ; R6R2R3 + R7R4R5→R4R2R3

    ; R6R2R3 - R7R4R5→R4R2R3

    ; FLAG3A = 0 ADD FLAG3A = 1 SUB

    ;--------------------------------------

    F3_ABP: MOV A, R6

    MOV C, ACC.7

    MOV FLAG38, C

    XRL A, R7

    JNB ACC.7, SQ

    CPL FLAG3A

    MOV A, R6

    MOV C, ACC.6

    MOV ACC.7, C

    技术专区

    下载发烧友APP

    打造属于您的人脉电子圈

    关注电子发烧友微信

    有趣有料的资讯及技术干货

    关注发烧友课堂

    锁定最新课程活动及技术直播
    收藏 人收藏
    分享:

    评论

    相关推荐

  • 5月份61城房价环比反弹 多地调控政策或再加码 ——凤凰网房产济南 2019-03-26
  • 按照马克思的原义,共产主义是"以每一个个人的全面而自由的发展为基本原则的社会形式"。这一基本原则的实现,涉及社会政治、经济、文化等方方面面。离开这一基本原则侈谈 2019-03-26
  • 报告:互联网平台责任设定应进一步完善 2019-03-25
  • 绿地申花公布新队徽 豹子头回归增加1993受好评 2019-03-17
  • 中宣部授予张黎明“时代楷模”称号 2019-03-14
  • 林业和草原局:加大对海南生态保护和修复支持力度 2019-02-28
  • 质疑的能力都没有,还有批判的余地吗》?看着就想笑 2019-02-28
  • Steam《野兽传奇》免费领取原价48元 2019-02-08
  • 上班族用手机电脑过度 肩颈僵硬疼痛怎么办-生活资讯 2018-11-22
  • 藏品快报:如何评价和田玉籽料原石的当下与未来? 2018-11-22
  • 高中生给班主任写期末评语 2018-11-22
  • 回复@“老笑头”,共产主义需要分配生产资料应该是你做梦的时候梦到的吧!这除了让网友们笑掉大牙,还能有什么?你确实是让网友们看着就想笑!哈哈哈哈! 2018-11-21
  • 绝崖山谷藏神秘古寺 简单就是世界奇观 2018-11-21
  • 【阿里天气】最新阿里今天天气,实时提供阿里气温、空气质量、24小时天气预报、生活指数查询 2018-11-21
  • 在人才培养体系建设上下功夫 2018-11-20