亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? em78系列常用子程序.txt

?? EM78系列常用子程序有需要的朋友可以下載看看有很好的參考價值
?? TXT
字號:
一        二進制數(shù)轉換為ASCⅡ碼
        將一個字節(jié)的二進制數(shù)轉換為兩位16進制數(shù)的ASCⅡ碼
        main:        mov                a,@0x9f                ;二進制數(shù)為0x9f
                     mov                0x30,a                ;二進制數(shù)存入0x30
mov                a,@0x02
mov                0x10,a                ;0x10中存放轉換次數(shù)
mov                a,@0x31
mov                0x04,a                ;0x04中為轉換后數(shù)據(jù)存放地址
mov                a,0x30
B1:                and                a,@0x0f                ;取a低4位
mov                0x00,a
sub                a,@0x09                ;低4位大于9跳往B2
jbs                0x03,0
jmp                B2
mov                a,0x00                ;低4位不大于9則加0x30
add                a,@0x30
mov                0x00,a                ;將ASCⅡ碼存入0X04所指單元
jmp                B3
B2:                mov                a,0x00                ;大于9則加0X37
add                a,@0x37
mov                0x00,a
B3:                swapa        0x30                        ;將0X30高4位換入A低4位
inc                0x04                        ;存儲地址加1
djz                0x10                        ;循環(huán)次數(shù)減1,為0則返回
jmp                B1                        ;不為0繼續(xù)轉換

self:                jmp                self
eop
        

二        多字節(jié)二進制加法
        0X20,0X21中的二進制無符號數(shù)與0X22,0X23中的二進制無符號數(shù)相加,結果放在0X24,0X25,0X26中,低地址中放低字節(jié)數(shù)據(jù)。
        Main:        mov                 a,@0x78                ;賦值
mov                0x20,a
mov                a,@0xc6
mov                0x21,a
mov                a,@0x86
mov                0x22,a
mov                a,@0x9e
mov                0x23,a
mov                a,@0x0                        ;0x26單元清0
mov                0x26,a
mov                a,0x21
add                a,0x23
mov                0x25,a                        ;高字節(jié)相加,結果送0x25
jbc                0x03,0
inc                0x26                                ; 有進位則0x26加1
mov                a,0x20
add                a,0x22
mov                0x24,a                        ;低字節(jié)相加,結果送0x24
jbs                0x03,0
jmp                 self                                ;無進位跳self
inc                0x25                                ;有進位0x25加1
jbc                0x03,0
inc                0x26                                ; 有進位0x26加1
self:                        jmp                self
eop

三        多字節(jié)二進制減法
        0x20,0x21中的二進制無符號數(shù)減0x22,0x23中的二進制無符號數(shù), 低地址中放低字節(jié)數(shù)據(jù)。假設被減數(shù)大于減數(shù)。
注意:(1)sub指令減出結果為正時,c標志置1。
(2)sub指令減出結果為0時,c標志也置1。
即,sub指令執(zhí)行后,c標志清0表示結果為負。
main:        mov                a,@0x67        ;賦值
mov                0x20,a
mov                a,@0xff
mov                0x21,a
mov                a,@0xe8
mov                0x22,a
mov                a,@0x44
mov                0x23,a                ; 高字節(jié)相減
sub                a,0x21
mov                0x25,a                ;結果存0x25
mov                a,0x22                ;低字節(jié)相減
sub                a,0x20
mov                0x24,a
jbs                0x03,0
dec                0x25                        ;有借位則0x25減1
self:                jmp                self
eop

四        二進制乘法運算
        EM78單片機沒有乘法指令,所以乘法運算需要轉化為加法運算。0X20單元數(shù)據(jù)乘以0X21單元數(shù)據(jù),結果放在0X22,0X23中。
main:        mov                a,@0x0                ;0x22,0x23單元清0
mov                0x22,a
mov                0x23,a
mov                a,@0x3f                ;賦值
mov                0x20,a
mov                a,@0x22
mov                0x21,a
mul1:        mov                a,0x20                ;0x20與0x22內容相加
add                0x22,a
jbc                0x03,0
inc                0x23                        ;有進位0x23加1
djz                0x21                        ;0x21中次數(shù)減到0則結束
jmp                mul1                ;沒減到0則繼續(xù)
self:                jmp                self
eop

五        二進制除法運算
多字節(jié)二進制除法
被除數(shù)為3個字節(jié),在0x20、0x21、0x22單元中,0x22.7為最高位,0x20.0為最低位。
除數(shù)為2個字節(jié),在0x30、0x31中。
算法:EM78單片機沒有除法指令,而且本例中除法為多字節(jié)除法,可采用如下算法。
將被除數(shù)擴充一個字節(jié)0X23,0X23清0。被除數(shù)左移1位,0X23、0X22中數(shù)據(jù)減去0X31、0X30中數(shù)據(jù),夠減則減且0X20.0置1,減出結果存入0X23、0X22;不夠減則0X23、0X22保持不變,0X20.0清0。然后被除數(shù)再左移1位,重復上述過程。共循環(huán)16次,最后0X23、0X22中得相減余數(shù),0X21、0X20中得商。注意,若被除數(shù)左移后C標志為1,則不比較0X23、0X22與0X31、0X30數(shù)據(jù)大小關系而直接相減。
main:                mov                a,@0x55                ;被除數(shù)賦值
mov                0x20,a
mov                0x21,a
mov                0x22,a
mov                a,@0x0                ;被除數(shù)擴充1字節(jié)并清0
mov                0x23,a
mov                a,@0x12                ;除數(shù)賦值
mov                0x30,a
mov                0x31,a

mov                a,@0x10                ;循環(huán)次數(shù)為16
mov                0x32,a
again:                call                rt_sub                ;調移位除法子程
djz                0x32                        ;16次循環(huán)完成則結束
jmp                again                ;未完成則繼續(xù)

self:                        jmp                self

rt_sub:
bc                0x03,0                ;c標志清0
rlc                0x20                        ;被除數(shù)左移1位
rlc                0x21
rlc                0x22
rlc                0x23
jbc                0x03,0
jmp                rt3                        ;c標志為1則直接相減
mov                a,0x23                ;c標志為0則先比較大小
mov                0x25,a
mov                a,0x22
mov                0x24,a
mov                a,0x31                ;先比較高位
sub                0x25,a
jbc                0x03,2
jmp                rt1                        ;高位相等跳rt1比較低位
jmp                rt2                        ;高位不等跳rt2
rt1:                        mov                a,0x30                ;比較低位
sub                0x24,a
jbc                0x03,2
jmp                rt3                        ;低位也相等則跳rt3,相減,上1
rt2:                        jbs                0x03,0
ret                                        ;減數(shù)大則返回,減數(shù)小則相減,上1
rt3:                        bs                0x20,0                ;上1
call                sub_2b                ;調2字節(jié)減法子程
ret

sub_2b:
mov                a,0x31                ;高字節(jié)相減
sub                0x23,a
mov                a,0x30                ;低字節(jié)相減
sub                 0x22,a
jbc                0x03,2
ret                                        ;低字節(jié)相等,無借位,返回
jbc                0x03,0
ret                                        ;無借位,返回
dec                0x23                        ;低字節(jié)相減有借位,高字節(jié)結果減1
ret
eop

六        BCD數(shù)轉換為二進制數(shù)
        兩字節(jié)壓縮BCD碼轉換為兩字節(jié)二進制數(shù)。算法如下:
BCD碼abcd=1000a+100b+10c+d=10{10[10a+b]+c}+d,將各位BCD碼分離出之后,即可根據(jù)此式轉換為二進制數(shù)。涉及到乘法運算和多字節(jié)加法運算。
        0X20,0X21中為BCD碼,0X21高4位為最高位。轉換結果放在0X30,0X31中。
main:                mov                a,@0x79
mov                0x20,a
mov                a,@0x54
mov                0x21,a                ;賦值
mov                a,0x20
and                a,@0x0f
mov                0x22,a
swapa        0x20
and                a,@0x0f
mov                0x23,a
mov                a,0x21
and                a,@0x0f
mov                0x24,a
swapa        0x21
and                a,@0x0f
mov                0x25,a                ;BCD碼展開后存于0X22,0X23,0X24,0X25
mov                a,0x25,                ;0X25為最高位
mov                0x30,a
mov                a,@0x0                ;多字節(jié)加法高位為0
mov                0x31,a
mov                a,0x24
mov                0x32,a
call                a_b                ;調子程
mov                a,0x23
mov                0x32,a
call                a_b
mov                a,0x22
mov                0x32,a
call                a_b
self:                        jmp                self

a_b:
mov                a,@0x0                ;0X34,0X35存儲中間結果
mov                0x34,a
mov                0x35,a
mov                a,@0x0a                ;實現(xiàn)乘10
mov                0x33,a
a1:                        mov                a,0x35                ;兩字節(jié)二進制加法,在本例中高字節(jié)肯定無進位
add                a,0x31
mov                0x35,a
mov                a,0x34
add                a,0x30
mov                0x34,a
jbc                0x03,0
inc                0x35
djz                0x33
jmp                a1
mov                a,0x32
add                0x34,a
jbc                0x03,0
inc                0x35
mov                a,0x34
mov                0x30,a
mov                a,0x35
mov                0x31,a
ret
eop

七        二進制數(shù)轉換為BCD碼
        本例為單字節(jié)二進制數(shù)(0X20)轉換為非壓縮BCD碼,存在0X25,0X24,0X23中,0X25為百位,0X23為個位。
main:        mov                a,@0xa4                ;賦值
mov                0x20,a
mov                0x21,a
mov                0x22,a
mov                a,@0x0                ;0x23,0x24,0x25單元清0
mov                0x23,a
mov                0x24,a
mov                0x25,a
mov                a,@0x64                ;對100的個數(shù)計數(shù)
mov                0x26,a
mov                a,@0x25                ;百位存在0x25中
mov                0x04,a
call                a0                        ;調計數(shù)子程
mov                a,@0x0a                ;對10的個數(shù)計數(shù)
mov                0x26,a
dec                0x04                        ;個位存在0x24中
call                a0
mov                a,0x22                ;除去百位,十位,余下的即個位,存入0x23
mov                0x23,a
self:                jmp                self

a0:                                                        ;計數(shù)子程
mov                a,0x26
sub                0x22,a
jbs                0x03,2
jmp                a1
inc                0x00                        ;無余數(shù)則對應位加1
mov                a,@0x0                ;0x21與0x22在返回時應保持相同
mov                0x21,a
ret
a1:                jbs                0x03,0                ;小于則跳a2
jmp                a2
inc                0x00                        ;大于則計數(shù)值加1
mov                a,0x22
mov                0x21,a                ;將0x22保存到0x21中
jmp                a0                        ;跳回a0繼續(xù)計數(shù)
a2:                mov                a,0x21                ;0x21中保存的減之前的數(shù)據(jù),此時恢復到0x22
mov                0x22,a
ret
eop

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品麻豆网站| 欧美激情一区二区三区蜜桃视频| 成人免费观看视频| 国产乱码精品一区二区三区av| 日本 国产 欧美色综合| 日本欧美大码aⅴ在线播放| 亚洲香蕉伊在人在线观| 亚洲电影第三页| 日韩精品久久久久久| 日本中文字幕一区| 韩国三级电影一区二区| 国产成a人无v码亚洲福利| 粉嫩av一区二区三区在线播放| 国产91综合一区在线观看| 国产a久久麻豆| 一本久久a久久精品亚洲| 91国产精品成人| 91麻豆精品国产91久久久更新时间| 欧美三级中文字幕在线观看| 欧美一区二区三区喷汁尤物| 精品国产乱码久久久久久夜甘婷婷| 精品国产sm最大网站免费看| 中文字幕国产一区| 亚洲国产成人精品视频| 青青草国产精品97视觉盛宴| 福利一区二区在线观看| 欧美日韩卡一卡二| 欧美精品一区二区三区一线天视频| 国产亚洲精品bt天堂精选| 亚洲少妇中出一区| 日本免费在线视频不卡一不卡二| 国产成人午夜精品5599| 色先锋aa成人| 久久综合狠狠综合| 夜夜精品浪潮av一区二区三区| 看国产成人h片视频| 不卡免费追剧大全电视剧网站| 欧美日韩国产欧美日美国产精品| 久久综合狠狠综合久久综合88| 亚洲一级二级在线| 国产精品一区二区三区乱码| 欧美三级午夜理伦三级中视频| 国产亚洲视频系列| 七七婷婷婷婷精品国产| 97超碰欧美中文字幕| 精品国产sm最大网站免费看| 亚洲自拍偷拍图区| 成人久久18免费网站麻豆| 538prom精品视频线放| 日韩理论片网站| 国产成人精品亚洲777人妖| 欧美日韩国产综合久久| 日韩美女啊v在线免费观看| 麻豆91精品视频| 欧美日韩一本到| 亚洲欧洲另类国产综合| 国产精品一区二区黑丝 | 欧美精品一区二区久久婷婷| 亚洲欧美一区二区三区久本道91| 国产又黄又大久久| 欧美一卡2卡3卡4卡| 亚洲国产一区二区三区| 色综合久久88色综合天天免费| 久久久精品国产99久久精品芒果| 首页亚洲欧美制服丝腿| 欧美伊人久久大香线蕉综合69| 国产精品久久久久四虎| 丁香激情综合五月| 久久综合久久久久88| 久久99国产乱子伦精品免费| 69堂国产成人免费视频| 日韩高清不卡一区二区| 欧美日韩专区在线| 亚洲成人av福利| 欧美日韩国产另类一区| 亚洲国产成人av| 欧美精品高清视频| 婷婷久久综合九色综合绿巨人| 在线免费观看不卡av| 一区二区三区精品在线| 在线观看日韩精品| 亚洲国产日韩综合久久精品| 欧美性videosxxxxx| 亚洲一区二区精品3399| 欧美精品日日鲁夜夜添| 免费在线视频一区| 精品福利一二区| 成人综合在线观看| 日韩一区日韩二区| 欧美日韩精品专区| 五月激情丁香一区二区三区| 日韩欧美国产电影| 国产乱码精品一区二区三区五月婷 | 国产 欧美在线| 中文字幕亚洲一区二区av在线 | 精品久久久久久综合日本欧美| 久久99精品国产| 国产精品高清亚洲| 欧美中文字幕亚洲一区二区va在线| 亚洲成a人片在线观看中文| 在线成人av网站| 成人午夜电影小说| 午夜一区二区三区视频| 久久久激情视频| 91麻豆免费看| 美女性感视频久久| 国产精品久久三| 欧美日韩精品系列| 国产成人av电影| 亚洲第一福利一区| 日本一区免费视频| 欧美日韩高清一区二区不卡| 国产乱色国产精品免费视频| 亚洲激情在线激情| 2023国产一二三区日本精品2022| 91免费国产视频网站| 美日韩一区二区三区| 综合久久一区二区三区| 日韩一区二区三区免费观看| 不卡欧美aaaaa| 九九**精品视频免费播放| 国产精品美女一区二区三区| 日韩一区二区三| 欧美综合天天夜夜久久| 成人午夜av电影| 久久国产精品一区二区| 亚洲主播在线播放| 国产精品日日摸夜夜摸av| 日韩欧美aaaaaa| 欧美精品自拍偷拍| 欧美影视一区在线| 9i在线看片成人免费| 极品瑜伽女神91| 日韩主播视频在线| 一区二区三区 在线观看视频 | 亚洲一区日韩精品中文字幕| 久久精品亚洲麻豆av一区二区| 欧美日高清视频| 在线观看91视频| 在线影院国内精品| 91网站在线观看视频| 粗大黑人巨茎大战欧美成人| 九九精品一区二区| 韩国av一区二区三区| 日韩av在线免费观看不卡| 亚洲福利国产精品| 亚洲综合激情小说| 亚洲国产另类av| 亚洲午夜在线电影| 亚洲电影第三页| 亚洲超碰97人人做人人爱| 亚洲影院久久精品| 亚洲bt欧美bt精品| 香蕉成人啪国产精品视频综合网| 午夜久久久影院| 五月天亚洲精品| 日本aⅴ免费视频一区二区三区 | 亚洲人成小说网站色在线| 国产精品免费久久久久| 亚洲欧洲另类国产综合| 亚洲人妖av一区二区| 亚洲综合色噜噜狠狠| 亚洲18色成人| 久久精品久久精品| 国产在线精品一区二区 | 一区二区三区四区在线免费观看 | 亚洲综合色丁香婷婷六月图片| 亚洲精品中文在线影院| 一区二区三区在线影院| 亚洲黄色av一区| 日韩国产欧美在线观看| 久久国产日韩欧美精品| 丁香激情综合国产| 日本韩国一区二区| 欧美一区二区三区四区五区| 久久亚洲综合色| 中文字幕制服丝袜成人av| 亚洲午夜电影在线观看| 久久精品国产一区二区三| 高清免费成人av| 欧美午夜不卡在线观看免费| 91精品国产手机| 国产精品免费网站在线观看| 亚洲一区在线观看网站| 国产在线精品一区二区夜色 | 懂色一区二区三区免费观看| 色综合婷婷久久| 欧美一级欧美三级| 亚洲欧洲在线观看av| 亚洲一区二区欧美| 国产suv一区二区三区88区| 欧美日韩免费高清一区色橹橹| 欧美成人video| 亚洲综合激情网| 成人在线一区二区三区| 日韩一区国产二区欧美三区| 国产精品国产精品国产专区不片| 日欧美一区二区| 在线观看日韩一区| 中文字幕欧美日本乱码一线二线|