
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で質問しましょう!
似たような質問が見つかりました
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- 教育ソフト・学習ソフト エクセルでマニュアルの図や表をつくる方法を教えてください。 仕事で自分用にエクセルを使用してマニュア 1 2023/02/10 23:02
- USBメモリー・SDカード・フラッシュメモリー PDF文書をCD-Rで配るときの注意事項 4 2022/03/31 16:49
- Google Drive Google form を利用して 問い合わせフォームを作りたい 1 2022/04/25 14:15
- ホームページ作成・プログラミング ホームページビルダー11で作ったHPにYoutube動画を埋め込みたい 3 2022/12/10 10:45
- C言語・C++・C# pythonで外部のファイルを読み込む際のエラー 2 2022/04/12 19:22
- Java 助けでください!!!!!!!!!!!! 4月から働き始めた新人SEです。 皆さんの体験談等を教えてい 7 2022/07/28 23:50
- Word(ワード) Microsoft365とOffice on the webとの違いは? 手元不如意で、いまMicr 3 2022/08/01 07:00
- 一戸建て 電気工事やってる友達が仕事がら毎日色々な住宅の屋根裏とか軒下とかいろんなところを見る機会があるらしく 4 2022/10/16 12:39
- その他(ブログ) テレグラムをブログに埋め込むことはできますか? 1 2022/06/04 11:20
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PC-9801 MS-DOSでの実行ファイ...
-
アセンブラからC言語に変換する...
-
素朴な疑問 (C言語とアセン...
-
ArduinoIDEのコンパイル結果の表示
-
【H8マイコン】HEWで埋め込みア...
-
アセンブラ言語で
-
汎用レジスタのワーキングビッ...
-
アセンブラwordという単位
-
実行ファイルからソースはみれる?
-
ライン数とステップ数の違いは?
-
このアセンブラの意味を教えて...
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
浮動小数点数について
-
標準関数の中身について
-
組み込みマイコンの誤動作について
-
C言語やC++言語でビット毎に値...
-
シーケンス制御についての質問...
-
2進数が10進数になる途中式
-
補数(~)について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ライン数とステップ数の違いは?
-
アセンブラからC言語に変換する...
-
MPLAB IDE v8.92アセンブラにつ...
-
実行ファイルからソースはみれる?
-
素朴な疑問 (C言語とアセン...
-
アセンブラwordという単位
-
最初のアセンブラ
-
PICに書き込むプログラムや変数...
-
PICはアセンブラとC言語のどち...
-
[C言語→アセンブリ言語]はどう...
-
アセンブラで割り算
-
void __cdeclなど_
-
PC-9801でマシン語を学習するに...
-
このアセンブラの意味を教えて...
-
【H8マイコン】HEWで埋め込みア...
-
データコピー
-
Windowsはオープンソースですか?
-
アセンブラ言語がわかりません。
-
SHの命令の意味について
-
アセンブラのコマンドについて
おすすめ情報