小编Kak*_*aka的帖子

链接汇编程序:错误"未定义引用`printf'"

我正在尝试在x64 Debian上编译这个x86汇编代码:

BITS 32

%include    'training.s' 

global main
extern  exit    

; ===============================================
section .text

main:
    ; The program begins here:

    call    read_hex    
    mov     edx,eax
    call    read_hex    
    add     eax,edx
    add     eax,eax
    inc     eax         

    call    print_eax   

    ; Exit the process:
    push    0
    call    exit
Run Code Online (Sandbox Code Playgroud)

我收到这些错误:

~$nasm -f elf -g 0_strange_calc.asm && ld -o 0_strange_calc 0_strange_calc.o
    ld: i386 architecture of input file `0_strange_calc.o' is incompatible with i386:x86-64 output
    ld: warning: cannot find entry symbol _start; defaulting to 00000000004000b0
    0_strange_calc.o:training.s:25: undefined reference …
Run Code Online (Sandbox Code Playgroud)

x86 assembly 32-bit nasm debian-based

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

根据var名称,该方法输出Java中的内容

我写了一个方法来打印我的结果.如果调用参数,我可以修改方法来打印不同的消息让我们说' result3 '吗?

在下面这种情况下,我无法访问方法中的变量result2.Eclipse说"'result2'无法解析为变量".

        double result2 = addValues(s1,s2,s3);
        printAnswer(result2);

    }

    static void printAnswer (double answer) {
        System.out.println("The answer is:" + " " + answer);
    }
Run Code Online (Sandbox Code Playgroud)

我是否需要将'printAnswer'修改为非静态方法?

java

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

标签 统计

32-bit ×1

assembly ×1

debian-based ×1

java ×1

nasm ×1

x86 ×1