- 締切済み
GASアセンブラのテストプログラムの作り方について
現在、アセンブラのテストプログラムの作り方に困っています。 入力された値を関数palindへ渡し、結果を出力する様にしたいのですが、考え方がよく解りません。 関数を呼び出すには、 movl 引数, %eax pushl %eax call 渡す関数の名前 popl %eax とすると思うのですが、これだけでは結果を戻しただけだになると思います。 この後結果を出力するにはどのようにしたら良いでしょうか? 宜しくお願いしますm(_ _)m ・回文を作るアセンブラの関数(palind.s) 例えば8と入力した場合に2進数(1000)の回文(上から読んでも下から読んでも同じもの)、10000001と00011000を作ります。(abcd)→(abcddcba),(dcbaabcd) 答えは2個あるので、入力とは別の変数を持ってきて、その変数の値によってどちらかを返すようにします。 (2個の答えを出すには変数を変えて呼び出せば問題ないと思います)
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- shred
- ベストアンサー率35% (25/70)
回答No.1
確認なんですがそのプログラムはOSの上で動かすのか 実機の上で動かすのかどちらですか。 後者であればPC/AT互換機の仕様について調べなければいけません。 前者で且つ端末または擬似端末に出力するのであれば writeシステムコール(4番)を発行するだけです。
お礼
前者であり、そのまま出力すれば良いところまでは解ったのですが、 どうも戻り値の表示が正しくされません。 もう少し考えてみようと思います。有難う御座いました。