0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用匯編語言實(shí)現(xiàn)多字節(jié)BCD碼加法減法的詳細(xì)介紹

Wildesbeast ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2020-12-06 17:31 ? 次閱讀

(1) 標(biāo)號: BCDA 功能:多字節(jié)BCD碼加法

給大家介紹一個(gè)單片機(jī)匯編語言寫的多字節(jié)BCD碼加法減法子程序

入口條件:字節(jié)數(shù)在R7中,被加數(shù)在[R0]中,加數(shù)在[R1]中。

出口信息:和在[R0]中,最高位進(jìn)位在CY中。

影響資源:PSW、A、R2 堆棧需求: 2字節(jié)

BCDA: MOV A,R7 ;取字節(jié)數(shù)至R2中

MOV R2,A

ADD A,R0 ;初始化數(shù)據(jù)指針

MOV R0,A

MOV A,R2

ADD A,R1

MOV R1,A

CLR C

BCD1: DEC R0 ;調(diào)整數(shù)據(jù)指針

DEC R1

MOV A,@R0

ADDC A,@R1 ;按字節(jié)相加

DA A ;十進(jìn)制調(diào)整

MOV @R0,A ;和存回[R0]中

DJNZ R2,BCD1 ;處理完所有字節(jié)

RET

匯編語言多字節(jié)BCD碼加法減法

(2) 標(biāo)號: BCDB 功能:多字節(jié)BCD碼減法

入口條件:字節(jié)數(shù)在R7中,被減數(shù)在[R0]中,減數(shù)在[R1]中。

出口信息:差在[R0]中,最高位借位在CY中。

影響資源:PSW、A、R2、R3 堆棧需求: 6字節(jié)

BCDB: LCALL NEG1 ;減數(shù)[R1]十進(jìn)制取補(bǔ)

LCALL BCDA ;按多字節(jié)BCD碼加法處理

CPL C ;將補(bǔ)碼加法的進(jìn)位標(biāo)志轉(zhuǎn)換成借位標(biāo)志

MOV F0,C ;保護(hù)借位標(biāo)志

LCALL NEG1 ;恢復(fù)減數(shù)[R1]的原始值

MOV C,F(xiàn)0 ;恢復(fù)借位標(biāo)志

RET

NEG1: MOV A,R0 ;[R1]十進(jìn)制取補(bǔ)子程序入口

XCH A,R1 ;交換指針

XCH A,R0

LCALL NEG ;通過[R0]實(shí)現(xiàn)[R1]取補(bǔ)

MOV A,R0

XCH A,R1 ;換回指針

XCH A,R0

RET

(3) 標(biāo)號: NEG 功能:多字節(jié)BCD碼取補(bǔ)

匯編語言多字節(jié)BCD碼加法減法

入口條件:字節(jié)數(shù)在R7中,操作數(shù)在[R0]中。

出口信息:結(jié)果仍在[R0]中。

影響資源:PSW、A、R2、R3 堆棧需求: 2字節(jié)

NEG: MOV A,R7 ;取(字節(jié)數(shù)減一)至R2中

DEC A

MOV R2,A

MOV A,R0 ;保護(hù)指針

MOV R3,A

NEG0: CLR C

MOV A,#99H

SUBB A,@R0 ;按字節(jié)十進(jìn)制取補(bǔ)

MOV @R0,A ;存回[R0]中

INC R0 ;調(diào)整數(shù)據(jù)指針

DJNZ R2,NEG0 ;處理完(R2)字節(jié)

MOV A,#9AH ;最低字節(jié)單獨(dú)取補(bǔ)

SUBB A,@R0

MOV @R0,A

MOV A,R3 ;恢復(fù)指針

MOV R0,A

RET

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • BCD
    BCD
    +關(guān)注

    關(guān)注

    1

    文章

    85

    瀏覽量

    29646
  • 匯編語言
    +關(guān)注

    關(guān)注

    14

    文章

    409

    瀏覽量

    35690
  • 指針
    +關(guān)注

    關(guān)注

    1

    文章

    478

    瀏覽量

    70491
收藏 人收藏

    評論

    相關(guān)推薦

    有人能給我用匯編講解講解BCD多位半字節(jié)乘法或者多字節(jié)...

    有人能給我用匯編講解講解BCD多位半字節(jié)乘法或者多字節(jié)乘法
    發(fā)表于 07-27 16:52

    請問怎么在DSP上用匯編語言實(shí)現(xiàn)復(fù)數(shù)濾波?

    如題,我用的DSP開發(fā)板是TMSC5535,需要用到Hibert濾波,需要用匯編語言實(shí)現(xiàn),但是濾波器的系數(shù)是復(fù)數(shù),請問匯編語言要怎么實(shí)現(xiàn)?(匯編語言實(shí)數(shù)濾波我已經(jīng)會了),謝謝!
    發(fā)表于 07-31 07:24

    使用匯編語言的地方有哪些

    對資深單片機(jī)開發(fā)人員來說經(jīng)常提倡的一個(gè)開發(fā)技巧是,開發(fā)人員應(yīng)避免使用匯編語言。避免使用匯編語言的原因是它特定于所使用的處理器體系結(jié)構(gòu),難以閱讀,理解和維護(hù)。而且需要注意的是,在查看仍可以使用匯編語言
    發(fā)表于 12-01 06:33

    如何用匯編語言實(shí)現(xiàn)單片機(jī)與電腦之間的通信呢

    本文主要介紹STM32串口通信的基本原理,并用匯編語言實(shí)現(xiàn)單片機(jī)與電腦之間的通信
    發(fā)表于 02-15 06:57

    用匯編語言實(shí)現(xiàn)BCH解碼校驗(yàn)算法

    介紹數(shù)據(jù)傳輸中BCH 解碼校驗(yàn)用匯編語言實(shí)現(xiàn)的算法。算法包含BCH 的差錯(cuò)檢驗(yàn)、差錯(cuò)位查找和差錯(cuò)糾正, 同時(shí)列出相關(guān)主要子程序清單并予說明。
    發(fā)表于 04-16 10:41 ?25次下載

    用匯編語言實(shí)現(xiàn)智能芯片SHT15對溫濕度的測量

    針對新型智能傳感器硬件簡單、軟件復(fù)雜的實(shí)際情況,本文探討了如何用匯編語言實(shí)現(xiàn)智能芯片SHT15對溫/濕度的測量。文中給出了詳細(xì)的測量程序流程圖,這對智能傳感器的使用及
    發(fā)表于 09-14 14:49 ?52次下載

    單片機(jī)多字節(jié)BCD加法減法

    (1) 標(biāo)號: BCDA 功能:多字節(jié)BCD加法入口條件:字節(jié)數(shù)
    發(fā)表于 04-17 21:05 ?4444次閱讀

    多字節(jié)BCD加法

    多字節(jié)BCD加法 入口條件:字節(jié)數(shù)在R7中,被加數(shù)在[R0]中,加數(shù)在[R1]中。出口信息:和在[R0]中,最高位進(jìn)位在CY中。影響資源
    發(fā)表于 01-19 22:41 ?2080次閱讀

    多字節(jié)BCD減法匯編語言程序

    多字節(jié)BCD減法匯編語言程序 入口條件:字節(jié)數(shù)在R7中,被減數(shù)在[R0]中,減數(shù)在[R1]中
    發(fā)表于 01-19 22:42 ?2579次閱讀

    用匯編語言實(shí)現(xiàn)DES加密算法

    用匯編語言實(shí)現(xiàn)DES加密算法 DES算法是一種數(shù)據(jù)加密算法。自從1977年公布以來,一直是國際上的商用保密通信和計(jì)算機(jī)通信的最常用的加密標(biāo)準(zhǔn)。DES算法的實(shí)現(xiàn)一般用高級
    發(fā)表于 04-07 09:24 ?1231次閱讀

    微機(jī)原理多字節(jié)加法介紹

    多字節(jié)加法 三個(gè)帶符號數(shù)比較以及求一個(gè)數(shù)的補(bǔ)碼的程序編寫
    發(fā)表于 11-24 14:54 ?0次下載

    Z-80匯編語言實(shí)用程序

    Z-80匯編語言實(shí)用程序
    發(fā)表于 09-22 10:18 ?16次下載
    Z-80<b class='flag-5'>匯編語言實(shí)</b>用程序

    51單片機(jī)中匯編多字節(jié)24位二進(jìn)制轉(zhuǎn)BCD的實(shí)例說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)中匯編多字節(jié)24位二進(jìn)制轉(zhuǎn)bcd的實(shí)例說明。
    發(fā)表于 07-10 17:40 ?10次下載
    51單片機(jī)中<b class='flag-5'>匯編</b><b class='flag-5'>多字節(jié)</b>24位二進(jìn)制轉(zhuǎn)<b class='flag-5'>BCD</b><b class='flag-5'>碼</b>的實(shí)例說明

    匯編實(shí)現(xiàn)多字節(jié)乘除法

    匯編實(shí)現(xiàn)多字節(jié)乘除法乘法單片機(jī)的乘法本質(zhì)是二進(jìn)制的乘法,而乘法本身是通過加法實(shí)現(xiàn)的。多字節(jié)的乘法
    發(fā)表于 11-15 17:21 ?21次下載
    <b class='flag-5'>匯編</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>多字節(jié)</b>乘除法

    STM32匯編語言之串口通信

    本文主要介紹STM32串口通信的基本原理,并用匯編語言實(shí)現(xiàn)單片機(jī)與電腦之間的通信
    發(fā)表于 12-16 16:58 ?13次下載
    STM32<b class='flag-5'>匯編語言</b>之串口通信