• 締切済み

相対アドレス指定方式

相対アドレス指定方式で、『バンクアドレスを基準とする方式』がどうなっているのかわかりません(>_<) どなたか教えてください!お願いします!

みんなの回答

  • caceres
  • ベストアンサー率43% (61/140)
回答No.1

対象物が何なのか解らないのでメモリアクセスのことと想定してお答えします。 ある領域のアドレス領域を窓としてそれ以上(バンクアドレス数×アドレス領域)をアクセスすることでは無いでしょうか。 例ですが 64kBしかアドレス領域が無い8bitCPUで数MBのキャラジェネROMなどをアクセスするような場合にある領域をキャラジェネROMの領域としそのアドレス指定が相対でROMの選択アドレスがバンクアドレスに該当します。 HEXで示すと ** 00 xx xx xx のように**がバンクアドレス, xxが相対アドレスになります。 00 00 00 00 ~ 00 FF FF FF がプログラム領域 01 00 00 00 ~ 01 FF FF FF が第一ROM領域 等とすれば64KBを越えるアクセスが可能になります。

apple_cube
質問者

補足

ありがとうございます! 私の知りたかったことより詳しく書いていただいたようで… 私には難しいようです…(すみません×) オペレーションコード|アドレス部(M)|・・・ で、バンクレジスタnとすると、これは nというバンクのアドレスMにアクセスする …ということで良いのでしょうか(>_<)

関連するQ&A

  • アドレス指定方式

    はじめまして、大学で情報処理の勉強をしているものです。 質問なのです。 アドレス指定方式って、 ・即値アドレス指定方式 ・絶対アドレス指定方式 ・間接アドレス指定方式 ・インデックスアドレス指定方式 ・相対アドレス方式 ・ベースアドレス指定方式 となんでこんなにたくさんの方式があるのですか?上の2つは理解できるのですが、それ以外の方式がある理由すらよくわかりません。

  • インデックスアドレス指定方式とベースアドレス指定方式の違い

    アドレス指定方式(アドレシング)についての質問です。 タイトルの通り、インデックスアドレス指定方式とベースアドレス指定方式の違いを教えていただきたいです。 参考書などでは、 ●インデックスアドレス指定方式 ・命令の番地部とインデックスレジスタの値を加算した値を有効アドレスとする ・インデックスレジスタの内容を変えるだけで別なアドレスの内容が参照できる ●ベースアドレス指定方式 ・命令の番地部が指定するアドレスに、ベースレジスタの内容を加算した値を有効アドレスとする ・ベースレジスタの値を変えるだけでプログラムが主記憶装置のどこからでも実行できる(再配置可能) となっています。 有効アドレス=番地部のアドレス+レジスタの値 となるのが同じで、基準となる値がインデックスアドレス指定方式のほうでは命令の番地部であり、ベースアドレス指定方式のほうはベースレジスタの値、ということまではわかったのですが、この「基準」が違うことでどういう違いがあるのか、具体的にどういう場合にどちらの方式が使われるのかがわかりません。 ベースアドレス指定方式の「再配置可能」という部分もどういう仕組みなのか、よくわからないです。 ご回答、よろしくお願いいたします。

  • 相対アドレスについて

    実行ファイルが以下のようなディレクトリに 置かれています。 \hoge ├a.exe ├\aaaa │ ├b.exe │ └\bbbb └\bbbb a.exeの中でb.exeを呼び出します。 b.exeの中で相対アドレスでbbbbを指定したところ hoge直下のbbbbを指定したように動作します。(aaaa直下のbbbbではなく!) どこかの中から呼び出されたexeの指定する相対アドレスは はじめに起動したexeからの相対アドレスになるのでしょうか? それともこれは環境によるのでしょうか? a.exeはhspで、b.exeはcで作っています。

  • アドレス指定方式におけるトレードオフ

    アドレッシング方式の豊富さの観点から、プログラムの書きやすさと、プログラムの実行性能の間のトレードオフについて論ぜよ。 という問題です。 教えて頂きたいです。 アドレス指定方式は、実際には利用するCPUの種類ごとにどの方式が利用可能かが異なる。なお、アセンブリ言語、および、機械語の機能は、CPUの機能に直接対応しており、アドレス指定についてもCPUが持つ方式をそのまま持っている。これに対して高級言語は、より抽象的なレベルでプログラムを記述するため、物理アドレス、および、物理的なアドレス指定方式は直接意識しない。 なんとなくここらへんが絡んでるかなと思っておりますが全然検討がつきません。 宜しくお願いたします。

  • アドレス指定について

    ベースレジスタ修飾アドレス指定とはどのようなものなのですか?またどのようなときに役に立つのですか? 相対アドレス指定とはどのようなものなのですか?またどのようなときに役に立つのですか?

  • URLの相対指定について

    いま、BASEタグを使ってURLを相対指定して、簡略化をしているHTML文書があります。 このHTML内で、もう一つ別の相対指定の基準を指定する方法はあるのでしょうか? リンクの位置関係は簡単に書くと下のようになってます。 Web Site +-HTML文書 +-リンク先のファイル(複数) Local +-リンク先のファイル(多数) Localのリンク先のファイルが多数あるので、 いちいち<A href="file:///.....と書くのがいやなので、 BASEタグによる基準をLocalのフォルダにしています。 しかし、こうするとWeb Site上へのリンクはいちいち、 <A href="http://.....と絶対指定しなければなりません。 これを回避したいのです。

  • 2アドレス方式について

    アセンブラ初心者なのですが、2アドレス方式について教えてください。 32ビットCPUでADD ansの1アドレスでやる場合、命令部16ビットと番地アドレス部16ビットとされると思いますが、ADD ans,bの場合(2アドレス)の場合、命令部とアドレス部はどうなるんでしょうか?

  • 相対パスの指定

    FindFirstFile(), remove(), OPENFILENAME などのファイルやフォルダのパスを扱うものについて、例えば 実行ファイルと同じディレクトリに有るdat.datというファイルを「dat.dat」とだけ書いて相対指定したつもりが、実行ファイルと同じディレクトリにdat.datが無かった場合にWindowsフォルダなどの特殊なフォルダや、AUTOEXEC.BATに書いてあるフォルダを使ってdat.datが検索されて適用されたりすることはあるのでしょうか? いろいろな関数や構造体が有りますが、相対パスが指定されたとき、絶対パスを作るために使用されるフォルダパスが、GetCurrentDirectory()以外のものが使われることってあるんでしょうか?

  • 「相対誤差について」

    「相対誤差について」 こんにちは。あじぽんと申します。よろしくお願いします。 「ゲームプログラマになる前に覚えておきたい技術 [著]平山尚」の749ページの上から16行目から20行目に 下記のように書いてあります。 ========================================================================= 10000-9999 を考えてみよう。絶対誤差は19999eだ。相対誤差eが0.001であれば、(1-19999*0.001)= -18.999から(1+19999*0.001)=20.999までの範囲が考えられる。元々 0.001 だった相対誤 差は、できた 1 という数を基準に考えると 10 となり、相対誤差が1万倍に跳ね上がっているこ とになる。 ========================================================================= 「元々0.001だった相対誤差は、できた 1 という数を基準に考えると 10 となり、相対誤差が1万倍に跳ね上がっていることになる。」 という場所がよく解りません。 10 になるという相対誤差はどのような計算で出てくるのでしょうか?

  • このhtmlソースのFontの相対指定における問題点を教えて下さい。

    このhtmlソースのFontの相対指定における問題点を教えて下さい。 html初心者です。(CSSは、まだです。) 文字フォントを相対値(単位は、%)で書いているのですが、うまくいきません。 (諸事情により、CSSを使わずに表示させなければなりません…) 作成したいWebページのイメージ図があり、 そのイメージ図で表示されている文字と同じフォントサイズ にするため相対値で設定したのですが <font size="4%"> でちょうど同じ大きさになってしまいました。 しかも、5以降の大きい数字の値にすると表示されるフォントも4%より大きくなるのですが、 そのサイズは5%でも50%でも100%でも全部同じ大きさで変わりません。 普通、相対値の場合 100% が普通の大きさというか基準の大きさになると思うのですが 今、コーディングしているページではそうはいきません。なぜなのでしょうか? また、どこをどう変更すれば相対値 100% と書いた時、基準となる大きさを表示させられるのでしょうか。 今回、コーディングにおいて条件が付いています。それは、以下の通りです。 ・CSSは、使わない。 ・basefont sizeは、指定しない。 ・相対値の単位は、%とする。 また、よろしければFontの相対指定について基準・推奨設定方法も教えて下さい。 以下に作成中のファイルから抜粋したソースを示します。 ブラウザで表示する場合、エンコードを Unicode(UTF-8) で表示させて下さい。 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <title>システム</title> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/" /> </head> <body style="margin-top : 0px"> <table align="center" style="margin-top : 0" cellspacing="0" cellpadding="0"> <tr> <td valign="top"> <table style="margin-top : 0" cellspacing="0" cellpadding="0"> <tr> <td valign="top"> <!--フォントサイズを相対値で指定--> <font size="4%"> <a href=>システム</a> </font></td> </tr> </table> </td> </tr> </table> </body> </html> 以上、よろしくお願いします。