小编Mig*_*rra的帖子

后端错误:64 位模式不支持 32 位绝对寻址

嗨,我正在使用 gcc 在 mac 上处理 ASM intel_syntax noprefix,出于某种原因,我在后端不断收到此错误:64 位模式不支持 32 位绝对寻址 这是否与变量有关,在时刻是否已在 ASM 上使用内联?

这是我的代码:

#include <stdio.h>

char c, b;

int main() {

    printf("Give me letter: ");
    scanf(" %c", &c);

_

    _asm(   ".intel_syntax noprefix;"
        "xor eax, eax;"     // clear eax
        "mov al, byte ptr [c];" // save c in eax
        "cmp eax, 65;"      // eax ? "A"
        "jl Fin;"       // eax < "A" -> Fin
        "cmp eax, 90;"      // eax ? "Z"
        "jg UpC;"       // eax >= …
Run Code Online (Sandbox Code Playgroud)

macos assembly x86-64 intel-syntax

4
推荐指数
1
解决办法
5660
查看次数

使用malloc在父母和孩子之间进行通信

如果我从malloc请求int的内存大小,我从一个父级创建'n'子进程.每个子进程更新(添加一个)内存中的值是否可行,所以到底父进程读取值?

c malloc fork

0
推荐指数
1
解决办法
98
查看次数

标签 统计

assembly ×1

c ×1

fork ×1

intel-syntax ×1

macos ×1

malloc ×1

x86-64 ×1