ベストアンサー マイコンの制御レジスタへのアクセスにビットフィールドを使う時に生じる問題 2007/11/22 11:18 タイトルの通りです。 制御レジスタへのアクセスにビットフィールドを使うとどのような問題が起きるのでしょうか? また、参考になるWebも宜しければ教えていただきたいです。 みんなの回答 (2) 専門家の回答 質問者が選んだベストアンサー ベストアンサー yphkz4063 ベストアンサー率23% (34/144) 2007/11/22 18:44 回答No.2 ビットフィールドがどのようにコンパイルされるかは、コンパイラによって違うと思われます。 最適化の仕方によっても違ってくることも予想されます。 詳しくお知りになりたいようでしたら、コンパイル後の逆アセンブルしたコードをご覧になれば一目瞭然です。 レジスタが相手ならビットフィールドを使わなくてもコードには目を通したほうがいいでしょう。 このような場合、熟練したプログラマならビットフィールドは使わないと思いますよ。 質問者 お礼 2007/11/23 08:24 回答ありがとうございます。 コンパイラによってコンパイルのされ方が違うんですね。 私の場合はMPLABを使ってます。 残念ながらアセンブラの知識がないに等しいので、普段はコンパイルが 通ったら、それで満足してました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 その他の回答 (1) jacta ベストアンサー率26% (845/3158) 2007/11/22 12:34 回答No.1 下記参照 http://portable-c.jugem.jp/?eid=8 参考URL: http://portable-c.jugem.jp/?eid=8 質問者 お礼 2007/11/23 08:26 大変参考になるサイトを教えていただきありがとうございます。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発C・C++・C# 関連するQ&A ビットフィールドについて 参考書のビットフィールドの語境界の指定という項目を読んでいるところなのですが説明に ビットフィールドは、「それを保持するに十分な大きさの任意アドレス付け可能な記憶単位に割り付け」されることになっている と書かれているのですが何度読んでもうまく理解できません。 どなたか上の文章の内容を噛み砕いて説明していただけないでしょうか わからないところがうまく言えなくてすみませんがよろしくお願いします。 参考書名:新訂 新C言語入門 シニア編(著 林晴比古) アクセスのフィールドで<> アクセスのクエリで、フィールド1に「0」以外のものは「フィールド2」に1と返すために、 クエリのフィールド2の式に、「式1:([フィールド1]<>0)」と記載すると、 -1とマイナス表示になってしまう理由が理解できません。 参考になるようなURLがあればお教えください。 アクセスでチェックボタンにて印刷制御? アクセス初心者で、今勉強している最中です。 人から勉強の参考にしようといただいたアクセスをみると "印刷"というフィールドがあり、そこは「Yes/No型」で、 チェックしたものだけが印刷できるようになってるみたいです。 しかし、そのような印刷したいものだけチェックをいれて印刷できる という制御は簡単にできるものなのでしょうか。。 お力をお貸しください。 お願いします。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム H8マイコンでled制御 H8/3052FのマイコンとAKI-H8-USBのキットを使用しています。 ledを制御する際に、通常はportのデータレジスタの該当ビットをlow(0)にしたときに消灯、high(1)に点灯となると思うのですが、 なぜか逆になります。つまりlowレベルのとき点灯します。 他に接続しているスイッチも逆になっているみたいです。 回路の組み立てがおかしいのでしょうか? 理由が分からず悩んでいました。 よろしくお願いします。 CPUから外部PHYレジスタのアクセス方法 CPUと外部PHYをMIIを通してアクセスしたいと思っています。 MIIを通してPHYレジスタへアクセスし、PHYレジスタの設定をしたり、参照したいと考えています。 ただ、ハードウェアとかの知識もないのであまりイメージができません。 何か参考になるようなものはありませんか? 本やサイトのURLなど。 低価格なファイルアクセス制御ソフトを探しています。 タイトルの通りなのですが、低価格なファイルアクセス制御ソフトを探しています。 機能としては、最悪、ファイルアクセスの設定とアクセス履歴が残ればいいと思っています。 よいものがあればおしえてください。 ACCESSでVBA等を用いて既存テーブルにフィールドを追加する タイトルどおりです。 ACCESS97以降で、VBA等を用いた「既存テーブルにフィールドを追加する」方法を調べています。 業務で、デザインビューを使用せずにテーブルフィールドの追加が発生したので、その対応のためです accessのフィールドに10桁の数字は入らない?? あるCSVからAccessのテーブルに読みこんだのですが 一部のフィールドで文字の欠落がありました。 元のCSVの内容どおりに、手入力で欠落した箇所に 値を入れようとしたのですが、どうも9ケタの数字は入るのですが 10桁の数字は入らないようでエラーが出ます。 ★メッセージは以下の通りです。 このフィールドに入力した値が正しくありません。 たとえば、数値型のフィールドに文字列を入力しました。 Accessの仕様として、数字の桁数制限があるのでしょうか? また、解決策は何かないでしょうか? XP2、ACCESS200です PCIデバイスのコンフィグレーションレジスタに高速アクセスしたい Windows PC向けにPCIデバイスの制御を行うドライバを作成しているのですが、コンフィグレーションレジスタへのアクセス速度が非常に遅く、なぜ遅いのか原因が分からず悩んでいます。 PCIバスのスペックではPCIコンフィグレーションサイクルが6サイクルなので、PCIバスのクロックが33MHzでウェイトがなければ1サイクル180nsで完了するはずなのですが、テストプログラムを作成して速度を計測したところ、PCIデバイスのコンフィグレーションレジスタへのアクセスに920nsを要しています。プログラム上のオーバーヘッドは、レジスタアクセス1回あたり約3nsで、ほとんど無視できる程度です。 いくらなんでもあんまり遅いので、これはPCIデバイス自体あるいはPCI-PCIブリッジに問題があるのかと思い、比較のためノースブリッジ内にあるデバイスにアクセスしてみたのですが、CPUにいちばん近く、かつPCIクロックに制限されないデバイスにもかかわらずサイクルタイムは271nsまでしか縮みませんでした。 こんな速度では大昔のISAのプログラムI/Oデバイスよりも遅いことになってしまうので、何かやり方に問題があるのかと思うのですが、どう変更すればいいものか全く見当がつきません。(ループの中はI/Oアクセス命令しかないような状態です。) 原因あるいは解法がお分かりの方ありましたら、教えていただけませんでしょうか。 なおテスト環境はCPU P4-2.8GHz (FSB800)、メモリ1.5GB、OSはWindows XPです。 ※質問の文字数制限のためサンプルプログラムは掲載しませんでしたが、いただいた回答への補足として掲載可能です。 アクセス レポートで、並べ替え設定したフィールドは、表示しなくても大丈夫? お世話になります。Access2003です。 レポートの、並べ替え/グループ化の設定で、 1番めに昇順に並べたフィールドを、レポートには表示させたくない為、 デザインフィールドで、そのフィールドのテキストボックスとラベルを 削除したのですが、 これって問題ありますか? レポートの印刷ビューで見ると、1番目に昇順にしたフィールドで順序どおりになっているようですが・・ 内部できちんと処理されているのでしょうか? ACCESS2007でフィールドの結合-空欄フィールドと日付フィールド ACCESS2007でフィールドの結合-空欄フィールドと日付フィールド またお世話になります。 一つのテーブル内の複数フィールドを結合して別フィールドを作りました。固定長で桁を全て揃えたデータが必要です。 table F1(text 3)|F2(text 3)|F3(text 10)|F4(date) 001 | 006 | harumaki | 31.3.2010 002 | 001 | (空白) | 1.4.2010 003 | 007 | (空白) | (空白) クエリ select F1 & F2 & F3 & space (10-len(F3)) & F4 as ketsugo from table; 結果 ketsugo 001006harumaki 31.3.2010 エラー エラー 問題1 空白フィールド 1つめのように全フィールドデータが入っていれば問題はないのですが、空白フィールドが入っている所でエラーが出てしまうようです。 F2を空白にして他を全て埋めた場合は、F2には固定長にするspaceが入っていないので詰まってしまうだけです。F3は10桁になるようデータの後ろにスペースが入ります。 クエリに問題があるのでしょうか。それともフィールドの定義でしょうか。 問題2 日付フィールド 日付を31.3.2010ではなく、31032010と直して変換したいです。 日付型ではなく、text 8にして、31032010とか01042010のように入力するしかないのでしょうか。 よろしくお願いいたします。 Access ページでフィールドリストの更新が出来ません。 会社で、アクセスを使ってデータを作成するように依頼を受けたのですが、全くの素人で参考書を頼りに簡単なテーブルとフォームとページを作成しました。 テーブルとフォームについては、なんとか上手くいったのですが、ページを参考書通りに作成してもテーブルのデータが反映されません。 インターネットや別の参考書で探しても解決策が載っていなくて、いろいろ自分なりに探してみると、フィールドリストのページの接続に×が付いていました。 ページの接続自体は絶対パスの関係で参考書に載っていたので良いのですが、フィールドリストが参考書に載っておらずヘルプで探して更新してくださいとしか明記しておらずにどうやって更新して良いのか分からず困っています。 どうすればテーブルとページが繋がるのか、ご教授お願いします。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム Accessでフィールドを追加したい Accessであるシステムを作成しているのですが、いくつか不明な点があるのでアドバイスをお願いします。 「社員情報」をいうテーブルがあり、初期の状態で「社員番号」「氏名」「入社年月日」「年齢」とフィールドがあります。 このテーブルを基にフォーム「社員情報入力」も作ってあります。 ここで新たに、社員情報テーブルに「生年月日」「連絡先」など、フィールドを追加したいのですが・・・以下のような条件があるので、どうしていいのかわからず困っています。 【条件】 ・フィールド追加用のフォーム(新規フィールド名を入力させる)を作り、そこからフィールドを追加させる。(直接テーブルはいじらせないため) ・追加したフィールドを社員情報入力フォームに反映(表示)させたい ・追加したフィールドをレポートにも反映(表示)させたい このような条件でフィールドの追加は無理なのでしょうか? アドバイスや参考になるページを教えてください。 よろしくお願いします。 Access ページでフィールドリストの更新が出来ません。 会社で、アクセスを使ってデータを作成するように依頼を受けたのですが、全くの素人で参考書を頼りに簡単なテーブルとフォームとページを作成しました。 テーブルとフォームについては、なんとか上手くいったのですが、ページを参考書通りに作成してもテーブルのデータが反映されません。 インターネットや別の参考書で探しても解決策が載っていなくて、いろいろ自分なりに探してみると、フィールドリストのページの接続に×が付いていました。 ページの接続自体は絶対パスの関係で参考書に載っていたので良いのですが、フィールドリストが参考書に載っておらずヘルプで探して更新してくださいとしか明記しておらずにどうやって更新して良いのか分からず困っています。 どうすればテーブルとページが繋がるのか、ご教授お願いします。 ちなみに他のパソコンで試すと繋がるので自分が使用しているパソコンに何かあるんだろうなって事だけは分かるのですが・・・ 自分が使用しているパソコンはXP Professional Version2002 Service Pack2 アクセスは2003です。 宜しく御願い致します。 C言語のビットフィールドについて はじめまして,今C言語を勉強中なのですが, ビットフィールドの宣言について質問があります。 勉強に使用しているテキストでは, ビットフィールドの宣言にはunsigned int型を使用すると書かれています(下記例参照)。 ここで質問は,unsigned charなどの型は推奨されない理由があるのか,ということです。 実際にunsigned char型で実行してもプログラムは動きますし,そちらのほうが語長も短くて済むのでいいような気がします。 テキストの書き方だと,他の型について言及していなかったので,なにか理由かあるのか,それとも特に問題ないのか,疑問に思っています。 わかる方いましたら,回答いただけると嬉しいです。 (ex) struct{ unsigned int bit0:1; unsigned int bit1:1; : unsigned int bit7:1; }bits; 特定のTwitterアカウントのみへのアクセス制御は可能ですか? 特定のTwitterアカウントのみへのアクセス制御は可能ですか? ネットワーク/セキュリティ関連は全くの門外漢なので、低級な質問ですが、お知恵をお貸し下さい。 webフィルタリングソフトの利用により、社内から特定ドメイン全体へのアクセスを抑制することができるのは分かりましたが、twitterのある特定のアカウントのみを制御というのは可能なのでしょうか? 可能だとして、制御できるのは、ブラウザからのtwitter.com/xxxxアクセスのみでしょうか?社内で提供しているWiFiを使って、iPhoneのアプリでtwitterを閲覧しているユーザーも多いのですが、こうしたアクセスの遮断も同様に可能でしょうか? よろしくお願いします。 シリアルデータの伝送時おいての制御方法など 今、課題で8ビットパラレルデータをシリアルデータに変換し1本から2本の信号線を利用してレシーバである受信側でシリアルデータを8ビットパラレルデータに、変換して8個のLEDを発光させるというものを設計するようにと、課題があるのですが、今の段階はパラレルデータをシフトレジスタを利用してシリアルデータに変換はわかったのですが、伝送時における制御について、私なりに調べてみたのですが、データの前に制御信号を送るまでは何とかわかったのですが、方法が思い浮かばない状況です。わかる範囲でいいので、教えていただければ幸いです。 access で「指定したフィールドが多すぎたため、・・」エラーが出ます。 こんにちは、 ACCESS2002でレポートを作ろうとしていますが、 「指定したフィールドが多すぎたため、フォームまたはレポートを作成できませんでした。指定するフィールドの数を減らして再度実行してください。」というエラーが出ます。 3つのテーブルからデータを持ってくる。 テーブルはリレーションを持っている。 フィールド数が50もないですし、また以前同じような作りのレポートを作ったときは問題がありませんでした。 上記の事で何かお分かりの方がいましたら教えてください。よろしくお願いします。 アクセス制御したサーバー情報って何ですか? webデザイナーをしております。 メルマガをシステムの方(社外)に作成してもらう際に、 「アクセス制御サーバー情報」を教えてくださいと言われました。 何の情報を相手に教えればいいのか分かりません。 どなたか教えてください。 ちなみにサーバーはXサーバーです。 アクセス制御について 素人同然の私がHPBを使用してHPを作成していますが、 特定のIPアドレス(p*****-adsao01yokoni-acca.kanagawa.ocn.ne.jp)からの アクセス制御をしたく努力していますが、 どうもうまく作動しないのでご教授願います。 アクセス制御をするには「.htaccess」というファイルに AddType text~(下記参照)を入力して トップページと同じディレクトリに転送すれば良いことまではわかりました。 現在、HPBでファイル名「.htaccess」を作成し、 HTMLソースは下記のようになっています。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <META name="GENERATOR" content="IBM HomePage Builder 2001 V5.0.4 for Windows"> <TITLE></TITLE> <Limit GET POST></Limit></HEAD> <BODY>AddType text/x-server-parsed-html .html order deny,allow deny from adsao01yokoni-acca.kanagawa.ocn.ne.jp </BODY> </HTML> AddType text~の入力位置が悪いのか、 IPアドレスが長すぎるのか良くわかりません。 どこをどのようにしたら良いのかご教授ください。 なお、.htaccessファイルはトップページと同じディレクトリに転送されています。 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
お礼
回答ありがとうございます。 コンパイラによってコンパイルのされ方が違うんですね。 私の場合はMPLABを使ってます。 残念ながらアセンブラの知識がないに等しいので、普段はコンパイルが 通ったら、それで満足してました。