问题描述
计算两个大数的和(超过32位,在C语言中使用long long int类型),在控制台显示和。和由ARM汇编来计算!
程序分析
①要有一个sum用于计算两数之和。
②定义两个long long int 类型的数,用于计算。
③如果数据超过32位,无法不能传入arm,进而无法计算,所以使两数之和 大于32 位。
④由于传入数据后,r1,r3分别是用于存储两数的高32位,所以将r0,r2 中的数据进 行相加。
⑤数据产生进位,需要将进位进行返回,利用addcs命令,即:若有进位, 则r1+1,进而得到结果
程序源码
#include<stdio.h>
extern long long int sum(long long int,long