求大神帮忙写一个32位的加法运算程序~~~单片机老师布置的作业。。。不会写

求大神帮忙写一个32位的加法运算程序~~~单片机老师布置的作业。。。不会写,第1张

你没描述你用的是什么单片机啊,如果是32位的单片机那就直接加很简单了,如果是8位51单片机的话那就是如下:

ORG 0000H

CLR C

MOV A,30H//被加数低八位

ADDC A,40H

MOV 50H,A//最低八位放于50H

MOV A,31H//被加数次低八位

ADDC A,41H

MOV 51H,A//次低八位放于51H

MOV A,32H//被加数次高八位

ADDC A,42H

MOV 52H,A//次高八位放于52H

MOV A,33H//被加数高八位

ADDC A,43H

MOV 53H,A//最高八位放于53H

MOV 54H,C

SJMP $

END

被加数放于30H开始的4个字节中,加数放于40H开始的4个连续字节,结果放在50H开始的五个字节

给你个前辈的博客地址:

http://blog.csdn.net/liumang_D/article/details/3899462

具体请再问,,,

不对!

AX寄存器是16位的,EAX才是32位的,不能这样传!

如果是已经编译好的程序,直接运行时不行的。因为这个时候的汇编码和地址空间的存储只支持32位。64位系统其实是提供一个兼容模式让32位的程序来运行。但是如果有源代码,可以在64位的系统上,用支持64的编译器编译之后,是可以的。


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

原文地址: https://outofmemory.cn/yw/7746249.html

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

发表评论

登录后才能评论

评论列表(0条)

保存