久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2358|回復: 11
打印 上一主題 下一主題
收起左側

求一個51單片機匯編,將16進制轉為十進制的程序

[復制鏈接]
跳轉到指定樓層
樓主
串口發送的16進制需要轉為十進制
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:883242 發表于 2023-7-16 17:24 | 只看該作者
一般不會有十六進制轉十進制發送的奇怪需求,對于兩邊都非常麻煩,完全沒有意義。我猜你的真實需求是把十六進制轉成十進制的ASCII碼。
回復

使用道具 舉報

板凳
ID:1085441 發表于 2023-7-16 19:58 | 只看該作者
是16進制轉為BCD嗎?很長時間沒寫過匯編了,寫了一下,應該差不多吧,如有錯誤請大家指正
;入口 R0, 出口 R0
    MOV     A,R0
    MOV     B,#10
    DIV      AB
    RL        A
    RL        A
    RL        A
    RL        A
    MOV     R0,B
    ORL      A,R0
    MOV     R0,A
回復

使用道具 舉報

地板
ID:259813 發表于 2023-7-16 20:48 | 只看該作者
是把十六進制轉成十進制的ASCII碼,目的是通過串口發送后接收方好讀
回復

使用道具 舉報

5#
ID:73992 發表于 2023-7-16 22:56 | 只看該作者
ORG        0000H
MOV        R0,#0XAF        ;單字節數值入口        ,R0         ,假設 R0=#AF
MOV        A,R0
MOV        B,#0X64
DIV        AB
MOV        R5,A                ;百位 存入R5
MOV        A,B
MOV        B,#0X0A
DIV        AB
MOV        R6,A                ;十位 存入R6
MOV        A,B
MOV        B,#0X01
DIV        AB
MOV        R7,A                ;個位 存入R7
END
       

回復

使用道具 舉報

6#
ID:259813 發表于 2023-7-17 13:34 | 只看該作者
我沒說清楚,風速傳感器用串口助手看到的是十六進制例如0A,將其轉換為好讀的十進制發出
回復

使用道具 舉報

7#
ID:1085441 發表于 2023-7-17 14:29 | 只看該作者
;如果小于100,如果大于100,耀多除一次100
;入口 R0, 出口 R0,R1,R0是十位,R1是各位
    MOV     A,R0
    MOV     B,#10
    DIV      AB
    ADD     A,#30H
    MOV     R0,A
    MOV     A,B
    ADD     A,#30H
    MOV     R1,A
回復

使用道具 舉報

8#
ID:884147 發表于 2023-7-17 15:33 | 只看該作者
chydn2000 發表于 2023-7-17 13:34
我沒說清楚,風速傳感器用串口助手看到的是十六進制例如0A,將其轉換為好讀的十進制發出

就是說數據0A你想在串口工具上顯示10,這需要16進制轉BCD碼程序,還要看16進制是幾位的
回復

使用道具 舉報

9#
ID:384109 發表于 2023-7-17 16:06 | 只看該作者
51匯編有專門的指令
回復

使用道具 舉報

10#
ID:123289 發表于 2023-7-17 16:13 | 只看該作者
;格式轉換類:BIN→ASCII----
;HEXTOASC_AR0.ASM:  BIN→ASCII,數字A→(R0,+1+2)3位高位在前。
;輸入:A=16進制數,R0=存入地址
;輸出:(R0,+1+2)=A的ASCII
;影響:PSW,A,B,R0
HEXTOASC_AR0:   MOV     B, #C_100                   ;取百位數
                DIV     AB
                ORL     A, #C_30H                   ;做成ASCII碼
                MOV     @R0, A                      ;存入
                INC     R0
                MOV     A, B                        ;取余數
                MOV     B, #C_10                    ;取十位數
                DIV     AB
                ORL     A, #C_30H                   ;做成ASCII碼
                MOV     @R0, A                      ;存入
                INC     R0
                MOV     A, B                        ;取余數,是個位
                ORL     A, #C_30H                   ;做成ASCII碼
                MOV     @R0, A                      ;存入
                RET
注:
C_10 = 10; C_30H = 30H = 48; C_100 = 100 = 64H
回復

使用道具 舉報

11#
ID:259813 發表于 2023-7-18 23:10 | 只看該作者
lyonkon的程序經過驗證完全正確,謝謝
回復

使用道具 舉報

12#
ID:1089019 發表于 2023-7-19 19:44 | 只看該作者
進制也就是進位計數制,是人為定義的帶進位的計數方法(有不帶進位的計數方法,比如原始的結繩計數法,唱票時常用的“正”字計數法,以及類似的tally mark計數)。 對于任何一種進制---X進制,就表示每一位置上的數運算時都是逢X進一位。 十進制是逢十進一,十六進制是逢十六進一,二進制就是逢二進一,以此類推,x進制就是逢x進位。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲高清视频在线观看 | 亚洲一区二区三区免费视频 | 免费麻豆视频 | 日韩精品一区在线 | 日韩欧美操 | 综合精品 | 国产999精品久久久 精品三级在线观看 | 一区二区伦理电影 | 美女一区 | 成人在线激情 | 日韩毛片 | 日韩精品久久久久久 | 日本不卡在线视频 | 欧美日韩视频在线 | 日韩播放| 精品亚洲国产成av人片传媒 | 中文字幕精品一区久久久久 | 亚洲欧美激情网 | 日本一二区视频 | 国产精品美女久久久久aⅴ国产馆 | 午夜日韩 | 精品国产欧美一区二区三区成人 | 国产免费观看视频 | 国产黑丝av | 91精品国产91久久久久青草 | 精品影院 | av网站在线看 | 久久久精品一区 | 久久久久久亚洲精品 | 欧美日韩一区二区在线播放 | 三级免费毛片 | 中文字字幕一区二区三区四区五区 | 久久久久久国产精品mv | 久久骚 | 国产精品特级片 | 精品国产乱码久久久久久果冻传媒 | 亚洲成人中文字幕 | 国产精品久久久久久久久免费 | 国产精品久久久久久久久久久久久 | 91麻豆精品国产91久久久久久 | 91久久伊人 |