>  2007/03/24 (土) 17:38:28        [qwerty]
> > リロケータブルなプログラムを作る場合
> > 配列a[10]からなるワンセットのプログラムを
> > メモリ上のセグメント100~110から
> > 違うセグメントの200~210に移して実行したい場合
> > ベースアドレス指定方式であれば
> > ベースレジスタ中の値を100から200に書き換えれば簡単にできるってことらしいけど
> > インデックスアドレス指定方式であっても各々の命令語中のインデックスレジスタアドレスが指し示す
> > インデックスレジスタの値に+100すれば可能なんでは?(;´Д`)
> > http://oshiete1.goo.ne.jp/qa2079427.html
> > ここの1番目の回答で
> > >2は相当難しいです。
> > と書いてる理由がいまいちわからん(;´Д`)
> 不可能では無いが、それを動作中に行うのは難しいしリコンパイルのコストが割に合わない
> JavaのJust-In-Time的なアプローチが必要になるな

そっか不可能ではないのか(;´Д`)
ただベースレジスタとかインデックスレジスタが
CPU上の実装的にどうなってるのかわかんないし
言語上の取り扱いもどうなるのかが具体的にわからないとイメージしずらいのかなぁ
まぁ基本情報程度ではそこまで突っ込まれないのかもしれないけど

参考:2007/03/24(土)17時32分27秒