qq_43574603 2022-10-02 21:38 采纳率: 50%
浏览 49
已结题

在clion里怎么把C++代码和汇编组合起来使用

想从底层开始了解一下程序到底是怎么跑起来的,刚刚开始看《现代x86汇编语言程序设计》第二版的书,但是书上的第一个例子的实现我就卡住了。
书上的源代码是这样的:

CH02_01.cpp文件

#include "stdafx.h"
#include <iostream>

using namespace std;

extern "C" int IntegerAddSub_(int a,int b,int c,int d);

static void PrintResult(const char* msg, int a, int b, int c, int d, int result){
    const char n1 = '\n';
    cout << msg << n1;
    cout << "a = " << a << n1;
    cout << "b = " << b << n1;
    cout << "c = " << c << n1;
    cout << "d = " << d << n1;
    cout << "result = " << result << n1;
    cout << n1;
}
int main(){
    int a,b,c,d,result;
    a = 10;b =20;c=30;d =18;
    result = IntegerAddSub_(a,b,c,d);
    PrintResult("test 1",a,b,c,d,result);
}

CH02_01.asm文件

     .code
IntegerAddSub_proc
    mov eax,ecx
    add eax,edx
    add eax,r8d
    sun eax,r9d
    ret
IntegerAddSub_endp
    end
但是抄下来之后就发现Clion是没有stdafx.h这玩意的,但是删掉这行呢就没有引入了,很显然是跑不起来的
我在想可不可以通过改Cmakelist.txt文件使汇编能和C++文件链接在一起
我想要达到的结果就是,有没有办法让这书上的例子跑起来啊!qwq
  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 已结题 10月9日
      • 创建了问题 10月2日

      悬赏问题

      • ¥15 Java的运用111111111111
      • ¥15 koa2 + ts 声明文件不生效
      • ¥15 Mac系统word显示此文档已被删除或当前无法访问.
      • ¥15 Unity用代码实现Tilemap
      • ¥15 怎么求广播地址以及网络地址?
      • ¥15 想知道unity如何实现物体贴地运动
      • ¥15 从A地到B地有多条路径可以到达,现要从A地到B地运物资问题
      • ¥30 用java设计小游戏扑克牌比大小,52张牌的图片选世界篮球明星图或其它都行
      • ¥15 ATM管理员功能代码及解释
      • ¥15 EasyExcel导出下载文件响应流为空