数组求和

汇编语言实现数组求和

  1. 指定一个寄存器作变址操作数,存放数组地址。
  2. 循环计数器初始化为数组的长度。
  3. 指定有一个寄存器存放累计和数,并赋值为0.
  4. 创建标号来标记循环开始的地方。
  5. 在循环体内,将和数与一个数组元素相加。
  6. 指向下一个数组元素。
  7. 用loop指令重复循环。
;数组求和
.386
.model flat,stdcall
.stack 4096
ExitProcess proto,dwExitCode:dword
.date
intarray DWORD 10000h,20000h,30000h,40000h
.code
main PROC
    mov edi,OFFSET intarray          //1:edi=intarray 地址           
    mov ecx,LENGTHOF intarray        //2:循环计数器初始化       
    mov eax,0                        //3:sum=0       
L1:                                         
    add eax,[edi]                    //4:标记循环开始的地方       
    add edi,TYPE intarray            //5:加一个整数       
    loop L1

    invoke ExitProcess,0
main ENDP
END main

posted @ 2020-02-10 11:55  小哑师兄  阅读(493)  评论(0)    收藏  举报