zoukankan      html  css  js  c++  java
  • 20135206于佳心-家庭作业3.63

    第三章家庭作业

    选题:3.63

    分值:两分

    作业过程:

    int sum_col(int n,int A[E1(n)][E2(n)],int j)
    {
        int i;
        int result = 0;
        for(i=0;i<E1(n);i++)
            result += A[i][j];
        return result;
    }

    上面是原来的代码

    汇编代码

    movl    8(%ebp),%edx                     ;edx:n
        leal    (%edx,%edx),%eax             ;eax:2n
        leal    -1(%eax),%ecx                ;ecx:2n-1
        leal    (%eax,%edx),%esi             ;esi:3n,(E1(n))
        movl    $0,%eax                      ;eax: 0(result)
        testl    %esi,%esi                   ;检验esi(正负)
        jle        .L3                       ;若esi中E1(n)≤0的话,跳转
        leal    0(,%ecx,4),%ebx              ;ebx:0+4*ecx=4(2n-1)
        movl    16(%ebp),%eax                ;eax:ebp+16(j的地址)
        movl    12(%ebp),%edx                ;edx:ebp+12(A[i]的地址)
        leal    (%edx,%eax,4),%ecx           ;ecx:edx+4*eax(A[i][j])
        movl    $0,%edx                      ;edx:0
        movl    $0,%eax                      ;eax: 0
    .L4                                      ;loop
        addl    (%ecx),%eax                  ;eax+=ecx((A[i][j]的地址)
        addl    $1,%edx                      ;edx:edx+1(i)
        addl    %ebx,%ecx                    ;ecx:ecx+ebx(ecx:A[i+1][j])
        cmpl    %esi,%edx                    ;比较esi与edx(E1(n)与i的比较)
        jl        .L4                        ;如果i<E1(n),跳转,回到循环
    .L3                                      ;

    E1(n)存储在esi中,E1(n)=3n;
    E2(n)存储在ebx中,ebx=4*E2(n),所以E2(n)=2n-1.

  • 相关阅读:
    微信报错 config:fail.Error:invalid signature
    js动态添加onload、onresize、onscroll事件(另类方法)
    Jquery 读取表单选中值
    Jquery事件
    Jquery
    PHP-query 的用法
    php-数据库访问--数据修改
    php-数据库访问--增、删、改
    php-访问数据库
    php-设计模式
  • 原文地址:https://www.cnblogs.com/javablack/p/4916104.html
Copyright © 2011-2022 走看看