單片機多位元組除法怎麼實現?

求一個C51單片機多位元組除法程序,4位元組除2位元組,只精確商。看看有多少牛人。。。


你不會去看libc里怎麼實現的嗎?乘法除法都有……

抱歉沒有看懂問題,再提供一個思路吧,用C寫一個,生成目標文件以後反編譯一下,感覺是應該可行。


三位元組除法,若要擴展長度,修改循環位移減法次數即可

DV31:

CLR C

MOV A,R3

SUBB A,R7

JC DV30

SETB OV

RET

DV30:

MOV R2,#10H ;求R3R4R5/R7-→R4R5

DM23:

CLR C

MOV A,R5

RLC A

MOV R5,A

MOV A,R4

RLC A

MOV R4,A

MOV A,R3

RLC A

MOV R3,A

MOV F0,C

CLR C

SUBB A,R7

ANL C,/F0

JC DM24

MOV R3,A

INC R5

DM24:

DJNZ R2,DM23

MOV A,R3

ADD A,R3

JC DM25

SUBB A,R7

JC DM26

DM25:

INC R5

MOV A,R5

JNZ DM26

INC R4

DM26:

CLR OV

RET


推薦閱讀:

為什麼大家都能接受2D橫版遊戲鏡像翻轉後人物左手持武器這種設定?
能不能設計針對確定數對的通用轉換函數?
Passphrase,Passcode,Password 三者之間有什麼區別和聯繫?
長得漂亮的女程序員,如何在逛街時,讓別人覺得自己的職業是程序員呢?
學習python有哪些好書和學習方法?

TAG:編程 | 單片機 | C51 |