我正在学习汇编,我想了解如何使用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) 我很困惑如何从一个补码转换为两个补码.假设我们在一个补码中有10101101.如何将其转换为二进制补码?
谢谢