linux - 组装中的扫码
问题描述
几天前我开始学习汇编,我有一个问题。我有一个简单的程序,它获取一个数字并将其显示在屏幕上。但这似乎不起作用。当我输入终端时,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: %d\n", scan);
push liczba
push offset komunikat
call printf
add esp, 8
ret
.data
komunikat: .asciz "Hello, world: %d\n"
scan: .asciz "%d"
liczba: .int
你能帮帮我吗?
解决方案
您可以在提示 shell 中查看此命令以从文件中删除无效字符。
sed -i 's/find/replace/g' file
在你的场景中试试这个
sed -i 's/\xc2//g' p2.s
推荐阅读
- php - 使用php将文件从一个目录传输到另一个项目目录
- html - 为什么我的页脚周围有一个空框?
- android - android SDK 地图提供了错误的用户位置
- node.js - Async/Await & UnhandlePromiseRejectWarning
- spring - Spring shell 块测试
- go - 在 Go 中通过语句或数据库使用 QueryRow
- scala - 如何使用scala在spark中使用foreach正确调用函数?
- python - 来自足球(足球)场线的单应性
- javascript - 为什么我会收到 404 错误,没有 Firebase App '[DEFAULT]' 是什么意思?
- angular - 为角度访问之外的角度组件创建公共方法