私が書いた簡単なアセンブリ言語プログラムは次のとおりです。
section .text
global main ;must be declared for linker (ld)
main: ;tells linker entry point
mov edx,len ;message length
mov ecx,msg ;message to write
mov ebx,1 ;file descriptor (stdout)
mov eax,4 ;system call number (sys_write)
int 0x80 ;call kernel
mov eax,1 ;system call number (sys_exit)
int 0x80 ;call kernel
section .data
msg db 'Hello, world!', 0xa ;our dear string
len equ $ - msg ;length of our dear string
今、私はこの行で何が起こっているのか分かりmsg db 'Hello, world!', 0xa
ません.msg db 'Hello, world!'
0xa
0xa
いくつかの調査の後、改行が発生することを知りましたが、なぜそこでコンマが使用されているのかわかりませんか?
それはある種の連結か何かですか?c(++) 構文のように:cout << "asdfsdf" << var;
またはおそらく Java 構文:System.out.println("Hello,"+var+"!");
または python 構文:print 'Yo '+var
助けてください...