IM汤姆凯特 2022-04-03 18:05 采纳率: 50%
浏览 300
已采纳

arm汇编语言 如何实现 数组中数据累加 然后用printf输出

练习ARM汇编语言,可以实现,循环输出数组中的数据,
想问,应该如何才能通过循环累加,把数组中的和求出,然后用输出显示出来

.data
    fmt:.asciz "%10d\n"
    ary:.word 0,1,2,3,4,5,6,7,8,9
    .equ counter,( . - ary)/4
.text
.globl main
 main:
    stmfd sp!,{lr}
    mov r4,#0
    mov r6,#0
    ldr r5, =ary
    b testfor
loop:
        ldr r0,=fmt
        ldr r1,[r5],#4
        bl printf
        add r4,#1
testfor:cmp r4,#counter
        blt loop
    mov r0, #0
    ldmfd sp!,{lr}
    mov pc, lr
.end
 

输出的结果是:

0
1
2
3
4
5
6
7
8
9

我想要达到的结果,向下面这个C语言一样输出 ,sum

#include<stdio.h>
int main(){
    int ary[10] = {0,1,2,3,4,5,6,7,8,9};
    int sum, i;
    sum = 0;
    for ( i = 0; i < 10; i++)
    {
        sum =sum +ary[i];
    }
    printf("%10d\n",sum);
    return 0; 
}
 
  • 写回答

2条回答 默认 最新

查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 4月6日
  • 创建了问题 4月3日

悬赏问题

  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误