###前提・実現したいこと
ここに質問したいことを詳細に書いてください
アセンブリ言語を用いて「Hello World!」と表示させるプログラムを作成しようとしていました
機能を実装中に以下のエラーメッセージが発生しました。
###発生している問題・エラーメッセージ
ex2.s: Assembler messages: ex2.s:7: Error: invalid instruction suffix for 'push' ex2.s:9: Error: invalid instruction suffix for 'push'
###該当のソースコード
GAS
1.data 2hello: .string "Hello World!\n" 3 4.text 5.globl main 6main: 7 pushl %ebp 8 movl %esp, %ebp 9 pushl $hello 10 call printf 11 leave 12 ret
###試したこと
pushlをpushに変更してみた
【結果】
ex2.s:7: Error: operand type mismatch for 'push'
###補足情報(言語/FW/ツール等のバージョンなど)
言語:GAS
環境:ubuntu 端末
命令セットから32bit x86アセンブラ(x86)と推測しますが、これはあなたの意図通りですか?64bitアセンブラ(x86_64)としてアセンブリ処理をしようとしていないでしょうか?

回答1件
あなたの回答
tips
プレビュー