单片机双字节无符号数的除法运算

单片机双字节无符号数的除法运算,第1张

DIVD功能:双字节二进制无符号数除法子程序

****************************************************************************

入口条件:被除数在R2、R3、R4、R5中,除数在R6、R7中。

出口信息:OV=0 时,双字节商在R2、R3中,OV=1 时溢出。

影响资源:PSW、A、B、R1~R7 堆栈需求:2字节

***************************************************************************

DIVD:

CLR C ;比较被除数和除数

MOV A,R3

SUBB A,R7

MOV A,R2

SUBB A,R6

JC DVD1

SETB OV ;溢出

RET

DVD1: MOV B,#10H ;计算双字节商

DVD2: 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

XCH A,R2

RLC A

XCH A,R2

MOV F0,C ;保存溢出位

CLR C

SUBB A,R7 ;计算(R2R3-R6R7)

MOV R1,A

MOV A,R2

SUBB A,R6

ANL C,/F0 ;结果判断

JC DVD3

MOV R2,A ;够减,存放新的余数

MOV A,R1

MOV R3,A

INC R5 ;商的低位置一

DVD3: DJNZ B,DVD2 ;计算完十六位商(R4R5)

MOV A,R4 ;将商移到R2R3中

MOV R2,A

MOV A,R5

MOV R3,A

CLR OV ;设立成功标志

RET

单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换森唯器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

单片机又称单片此如培微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解橡李计算机原理与结构的最佳选择。

单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等 [1]  。

解决方法很多!嘿嘿

1设计一个双字节

无符号数

加法

子程序

,首先要设计一个子程序入口:

即(R2)(

R3

)=装双字节无符号数的被

加数

R4

)(

R5

)=装双字节无符号数的加数

2设计一个双字节无符号数加法子程序出口陵棚兄:

(32H)(31H)(30H)=装和

3利用加法指令求双字节无符号数的和。

4起一个子程序名:和槐

ADD16:MOVA,R3取低字节

被加数

ADDA,R5;与低字节加数相加

MOV30H,A;低字节和送30H单尺袭元

MOVA,R2;取高字节被加数

ADDCA,R4;与高字节加数相加

MOV31H,A;高字节和送31H单元

CLRA;清零

ADDCA,#0;加上进位

MOV32H,A;有进位则送32H单元保存

RET;子程序返回

满意就给俺加分喽


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12416184.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存