首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >汇编器代码不能在Linux上运行

汇编器代码不能在Linux上运行
EN

Stack Overflow用户
提问于 2010-11-20 03:07:00
回答 2查看 515关注 0票数 1

我正在尝试使用JWasm编译器在Linux中运行以下汇编代码。但对于所有命令,它都会显示“未找到命令”。为什么?并且它在以";“开头的行中返回一个错误。它是一种评论行吗?我可以删除这些行吗?谢谢。

代码语言:javascript
复制
;--- "hello world" for 64-bit Linux, using SYSCALL.
;--- assemble: JWasm -elf64 -Fo=Lin64_1.o Lin64_1.asm
;--- link:     gcc Lin64_1.o -o Lin64_1


stdout    equ 1
SYS_WRITE equ 1
SYS_EXIT  equ 60

.data

string  db 10,"Hello, world!",10

.code

_start:
mov edx, sizeof string
mov rsi, offset string
mov edi, stdout
mov eax, SYS_WRITE
syscall
mov eax, SYS_EXIT
syscall

end _start
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-20 03:13:18

我不熟悉JWasm,但通常不缩进的条目是汇编指令,而不是指令。

你想把(空格/制表符)放在任何实际的汇编指令( CPU会运行的指令)上,而不是汇编指令(汇编用来帮助你的指令)。

票数 1
EN

Stack Overflow用户

发布于 2010-11-20 03:29:58

;通常表示大多数类型的汇编中的注释,奇怪的是JWasm不能识别这些行。尝试删除它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4228470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档