【汇编实战】多重循环程序实验(一文学会)

系列文章目录

【汇编实战】Win10配置汇编环境 VisualStudio2019

【汇编实战】多重循环程序实验(一文学会)

【汇编项目】推箱子小游戏(爷青回!!!)



一、实验内容

C语言编写多重循环程序(大于3重),查看其反汇编代码,分析各条语句功能(分析情况需要写入实验报告),并采用汇编语言重写相同功能程序。

二、实验过程

2.1 查看反汇编代码

首先,我们使用C++编写四重循环代码,每重循环大小为10,在循环最内层对ans加一,预期答案为10000。
编写C++代码如下所示:

#include<iostream> 
using namespace std;
int main(){
   
    int ans = 0;
    for(int i =0; i < 10; i++){
   
        for(int j = 0 ;j < 10; j++){
   
            for(int k =0 ; k< 10 ; k++){
   
                for(int h = 0; h < 10; h++){
   
                ans += 1;
                }
            }
        }
    }
    cout << ans << endl;
    return ans;
}

使用g++查看其汇编代码以及反汇编代码,分别运行如下命令行:

g++ -S .\triloop.cpp
g++ -g -c .\triloop.cpp
objdump -S triloop.o >triloop_dump.s

在文件夹下分别生成汇编文件triloop.s以及反汇编文件triloop_dump.s。本实验中我们通过查看反汇编代码triloop_dump.s分析每一行汇编代码的功能。

2.2 反汇编代码分析

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值