나는 "hello world"를 발견하고 그것을 썼다. 나노 hello.s어떻게하면 asm (가스)을 배우기 시작할 수 있습니까?
내가
ld -s -o hello.o hello*
error
ld: hello: No such file: No such file or directory
어디 오전했던
hello.s:6: Error: no such instruction: global _start
delete global _start.
오류를 준 as -o hello.o hello.s
내가했던
.data
msg:
.string "Hello, world!\n"
len = . - msg
.text
global _start
_start:
movl $len,%edx
movl $msg,%ecx
movl $1,%ebx
movl $4,%eax
int $0x80
movl $0,%ebx
movl $1,%eax
int $0x80
이 코드 내가 잘못 생각한거야?
p/s debian, amd64.
당신이 무엇을 요구하는지 알기가 어렵습니다. "global _start"에 대한 오류가 발생하면 어셈블러를 실행했습니다. 해당 라인에 대한 잘못된 점을 확인하려면 어셈블러 설명서를 참조하십시오. 어쩌면 그 공간이 필요하지 않거나 전세계에이 필요하지 않을 수도 있습니다. " 앞에. –
또한'gcc' 컴파일러를 사용하여 생성 된 어셈블리 코드를 살펴 봅니다. 'gcc -Wall -fverbose-asm -O -S file.c' 그러면'file.s' 내부를 보게됩니다 –