No.1ベストアンサー
- 回答日時:
ルネサステクノロジのサイトから、コンパイラパッケージのドキュメントを見ると、Cソースにアセンブラコードを記述する拡張機能を利用する場合、これらが有効となる条件が各拡張機能毎に異なる仕様になっていることが記載されているのが読み取れます。
1) __asmが利用できる条件は
「10.C/C++言語仕様」→「10.2 拡張機能」→「10.2.1 #pragma 拡張子、キーワード」→「(3)その他の拡張機能」→「アセンブラ埋め込み機能」→「__asm」→「備考」に記載されているとおり、H8SX及びH8SのCPUを指定した場合
2) #pragma asm,#pragma endasmが利用できる条件は
「10.C/C++言語仕様」→「10.2 拡張機能」→「10.2.1 #pragma 拡張子、キーワード」→「(3)その他の拡張機能」→「アセンブラ埋め込み機能」→「#pragma asm」→「備考」に記載されているとおり、code=asmcodeオプションを指定した場合
3) #pragma inline_asmが利用できる条件は
「10.C/C++言語仕様」→「10.2 拡張機能」→「10.2.1 #pragma 拡張子、キーワード」→「(2)関数に関する拡張機能」→「アセンブラ記述関数のインライン展開」→「#pragma inline_asm」→「備考」に記載されているとおり、code=asmcodeオプションを指定した場合
それぞれの詳細はマニュアルの項目を参照してください。
なお、Cソース上でNOP命令を埋め込むだけなら、「10.C/C++言語仕様」→「10.2 拡張機能」→「10.2.3 組み込み関数」→「NOP命令」の項目に記載されているように、ヘッダ<machine.h>をincludeして、nop()関数を利用することで、すっきり簡単に実現できることが読み取れます。
参考URL:http://documentation.renesas.com/jpn/products/to …
この回答へのお礼
お礼日時:2006/07/13 18:14
調べていただき感謝しています。
おかげで__asm{}が私の使っているH8/300Hでは使えないことを発見できました。
ありがとうございました。
No.2
- 回答日時:
マニュアルに記載のある通りです。
#pragma asmを有効にするには
-code=asmcode のオプションが必要です。
設定方法は、
HEWから、
メニュー 「ビルド」->「H8S H8/300 standerd tool chain」->「コンパイラ」タブ
カテゴリを プルダウンで「オブジェクト」指定
出力ファイル形式 「アセンブリプログラム(*.src)」
に変えてみるとコンパイルオプションに、-code=asmcodeが
設定されます。
この回答へのお礼
お礼日時:2006/07/13 20:03
自分で気づいてNo.2さんがおっしゃる事を設定しました。pragma asm内ではエラーがでても必ず1行目を示すようでそれで少し悩まされましたが無事解決できました。 ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
pythonでAmazonのほしいものリ...
-
Web初心者です。 簡易的なWebペ...
-
Google ColaboでGUI作成
-
JRのjsonファイルって使って大...
-
HTMLソースが表示のページのも...
-
ホログラムを作ってくれる会社...
-
Google Colabでimport soxが出...
-
pythonでのカーソル移動がずれる
-
Lazarus(IDE2.2.6)をインスト...
-
Processingについて
-
16x16のスプライトフォント
-
初心者powershellのPS1ファイル...
-
vba クリップボードクリアにつ...
-
python の 連鎖代入の文法
-
大学のプログラミングの授業で...
-
Pythonを勉強しています。
-
python エラー
-
Pythonでの文字列からfloatへの...
-
・オブジェクト指向のメリット...
-
最新のプログラム言語を学ぶに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アセンブラからC言語に変換する...
-
ライン数とステップ数の違いは?
-
実行ファイルからソースはみれる?
-
PC-9801でマシン語を学習するに...
-
[C言語→アセンブリ言語]はどう...
-
void __cdeclなど_
-
アセンブラwordという単位
-
アセンブラ言語がわかりません。
-
バイナリの実行ファイルをgccを...
-
SHの命令の意味について
-
PC-9801 MS-DOSでの実行ファイ...
-
アセンブラエディタ
-
PICに書き込むプログラムや変数...
-
PICのアセンブラからC言語へ変...
-
アセンブラのLA
-
【H8マイコン】HEWで埋め込みア...
-
ニーモニックコードを使って割...
-
7セグメントLEDの点灯について
-
アセンブラのコマンドについて
-
MASMの機種依存についてお尋ね...
おすすめ情報