扫描程序集中的编号



几天前我开始学习组装,有一个问题。我有一个简单的程序,它得到一个数字并显示在屏幕上。但它似乎不起作用。当我输入终端gcc -m32 p2.s时,我得到:

p2.s: Assembler messages:
p2.s:2: Error: invalid character (0xc2) in mnemonic
p2.s:3: Error: invalid character (0xc2) in mnemonic
p2.s:4: Error: invalid character (0xc2) in mnemonic
p2.s:5: Error: invalid character (0xc2) in mnemonic
p2.s:9: Error: invalid character (0xc2) in mnemonic
p2.s:10: Error: invalid character (0xc2) in mnemonic
p2.s:11: Error: invalid character (0xc2) in mnemonic
p2.s:13: Error: invalid character (0xc2) in mnemonic
p2.s:15: Error: invalid character (0xc2) in mnemonic
p2.s:16: Error: invalid character (0xc2) in mnemonic
p2.s:17: Error: invalid character (0xc2) in mnemonic
p2.s:19: Error: invalid character (0xc2) in mnemonic
p2.s:20: Error: invalid character (0xc2) in mnemonic
p2.s:21: Error: invalid character (0xc2) in mnemonic 

我的代码:

    .intel_syntax noprefix
    .global main
    .text
   
main:
# scanf("%d", scan);
    push offset liczba
    push offset scan
    call scanf
    add esp, 8
   
# printf("Hello, world: %dn", scan);
    push liczba
    push offset komunikat
    call printf
    add esp, 8
    ret
   
    .data
komunikat: .asciz "Hello, world: %dn"
scan: .asciz "%d"
liczba: .int

你能帮帮我吗?

您可以在提示shell中查看此命令,以从文件中删除无效字符。

sed -i 's/find/replace/g' file

在你的场景中试试这个

sed -i 's/xc2//g' p2.s

最新更新