小编Use*_*oon的帖子

需要帮助理解从C代码生成的基本汇编代码

我正在学习汇编,我想了解如何使用C代码生成Assembly.

我创建了以下虚拟C代码:

#include <stdio.h>

int add(int x, int y){
    int result = x + y;
    return result;
}

int main(int argc, char *argv[]){

    int x = 1 * 10;
    int y = 2 * 5;
    int firstArg = x + y;
    int secondArg = firstArg / 2;
    int value;
    value = add(firstArg, secondArg);
    return value;
}
Run Code Online (Sandbox Code Playgroud)

并得到以下汇编代码

.file   "first.c"
    .text
    .globl  add
    .type   add, @function
add:
.LFB39:
    .cfi_startproc
    movl    8(%esp), %eax
    addl    4(%esp), %eax
    ret
    .cfi_endproc
.LFE39:
    .size   add, .-add …
Run Code Online (Sandbox Code Playgroud)

c assembly

3
推荐指数
1
解决办法
212
查看次数

如何从一个补码转换为两个补码

我很困惑如何从一个补码转换为两个补码.假设我们在一个补码中有10101101.如何将其转换为二进制补码?

谢谢

twos-complement

2
推荐指数
1
解决办法
9366
查看次数

标签 统计

assembly ×1

c ×1

twos-complement ×1