Mossip, Richard H. (1980年9月~10月). 米国ニュージャージー州ブルーミングデールにて執筆. 「Relocatable Code」(PDF) . S-100 Microsystems . 第1巻第5号. 米国ニュージャージー州マウンテンサイド&スプリングフィールド: Libes, Inc. pp. 54– 55. ISSN 0199-7955 . ark:/13960/s2cfgkmxcwg. ark:/13960/s2qdm1t01nr. 2023年11月27日時点のオリジナルよりアーカイブ(PDF) . 2023年11月27日閲覧.[7] [8] (2ページ) (注: ページ境界の再配置と再配置アセンブラについて説明します。)
Huitt, Robert; Eubanks, Gordon ; Rolander, Thomas "Tom" Alan ; Laws, David; Michel, Howard E.; Halla, Brian; Wharton, John Harrison ; Berg, Brian; Su, Weilian; Kildall, Scott ; Kampe, Bill (2014-04-25). Laws, David (ed.). 「Legacy of Gary Kildall: The CP/M IEEE Milestone Dedication」(PDF) (ビデオ・トランスクリプション). Pacific Grove, California, USA: Computer History Museum . CHM Reference number: X7170.2014. Archived (PDF) from the original on 2014-12-27 . Retrieved 2020-01-19 . […] Laws: […] OSの「動的再配置」とは何ですか?また、なぜ重要だったのでしょうか? 【略】ユーバンクス氏:【略】ゲイリーのやったことは【略】、まさに驚異的でした。【略】学校で彼が研究室に飛び込んできて、「再配置のやり方がわかった」と言った日のことを覚えています。彼は、唯一のバイトは常に上位バイトになるという事実を利用しました。そこで彼はビットマップを作成しました。【略】コンピュータのメモリ容量は関係なく、オペレーティングシステムは常に上位メモリに移動できました。そのため、メモリ容量の異なるマシンでもこれを商品化できました。【略】64K CP/Mと47K CP/Mを販売することはできません。アドレスにハードコンパイルを組み込むのは馬鹿げています。そこでゲイリーはある晩、おそらく真夜中に何かコーディングのことを考えていたときにこれを思いつき、これがCP/Mの商品化を本当に可能にしたのです。あの再配置がなければ、非常に難しい問題になっていただろうと本当に思います。人々にそれを買ってもらおうとすると、複雑に思われるでしょうし、メモリを増設するとなると別のオペレーティングシステムを買わなければならないでしょう。[…] Intel […]はメモリアドレスのバイトを反転させていました。しかし、それらは常に同じ場所にあったので、正確には256バイト境界で再配置することができました。つまり、それらのビットマップだけでいつでも再配置できるのです[…] Laws: 動的再配置について、これまで聞いた中で最も説得力のある説明でした[…][9] [10](33ページ)
Guzis, Charles "Chuck" P. (2015-07-29). 「Re: MOVCPM.COM はどのように機能しますか?」 . Vintage Computer Forum . ジャンル: CP/M および MP/M.オリジナルから2020年2月1日にアーカイブ。 2020年2月1日閲覧。[…] MOVCPM は初期の PRL 形式を使用しています。基本的に、CP/Mは2回アセンブルされ、2回目は100H バイトのオフセットです。2つのバイナリが比較され、ビットマップが構築されます。セットされたビットは、アドレスの上位バイトを調整することを意味します。下位アドレスバイトは影響を受けません。そのため、「ページ再配置可能ファイル」と呼ばれます。ビットマップの各バイトは、バイナリデータの8バイトに対応します。[…] したがって、MOVCPM で移動されるすべてのものは、イメージとその再配置ビットマップの一部です。[…]
Guzis, Charles "Chuck" P. (2016-11-08). 「Re: CP/MアセンブリプログラムでRST 28hを使用しても安全ですか?」ヴィンテージコンピュータフォーラム. ジャンル: CP/MおよびMP/M。2020年2月1日にオリジナルからアーカイブ。 2020年2月1日閲覧。 […] PRLファイルについて、それがMOVCPMから始まり、 MP/MおよびCP/M 3.0の不可欠な部分となった経緯について言及しました。しかし、PRLファイルはビットマップを使用しており、各ビットはメモリ位置に対応しています。1ビットは、対応するメモリ位置にページ再配置オフセットを追加する必要があることを示します。絶対メモリ参照(相対参照ではなく)が非常に少ない場合は、ビットマップではなくポインタリスト(参照ごとに2バイト)を使用することをお勧めします。相対ジャンプを持たない8080コードではこのような問題は起こりにくいですが、 Z80コードでは考慮すべき問題となる可能性があります。これを素早く見つけるコツは、プログラムを2回アセンブルすることです。2回目は100Hオフセットでアセンブルし、2つのバイナリを比較します。実行時再配置の利点は、再配置の問題を回避しようとするコードにペナルティを課す必要がないことです。つまり、「トリック」は不要で、ただコードを書けばよいのです。[…]
Ganssle, Jack (1992年2月). 「再配置可能なコードの書き方 - 一部の組み込みコードは複数のアドレスで実行する必要がある」 . Embedded Systems Programming . The Ganssle Group - Perfecting the Art of Building Embedded Systems / TGG. 2019年7月18日時点のオリジナルよりアーカイブ。 2020年2月20日閲覧。