バンク切り換え
読み出しバンクと書き込みバンクを別途指定できるようにする事で、入力と出力を同じアドレスで行い、出力データの保持とアドレス計算を省く方式が考え出された(リード・モディファイ・ライト Read Modify Write)。これもまた画像処理に応用された。
モトローラ MC68000シリーズではブート時、アドレス0番地から2ロングワードにスタックポインタ初期値・ブートストラップへのアドレスをCPUに提示しなければならず、起動時のバンク切り換えは必須であった。
NECのPC-9801(とその後継)においては、16ビットマイクロプロセッサであるIntel 8086(とその上位互換CPU)が採用されたが、アドレス空間が1メガバイトしかなかったので、アプリケーション等のメモリ要求量の増大にともない、後述のEMSの国内での普及に先行して、バンク切り換え用メモリとしてのバンクメモリが開発された。各周辺機器メーカーからそれぞれ独自規格のバンク切り換え用メモリが発売され、対応アプリケーションやゲーム等も一部でそれぞれ発売された。その後、アイ・オー・データ機器が提唱した「I/Oバンク方式」によるバンク切り換えメモリ管理BMS(Bank Memory Specification) が制定され、複数のアプリケーション間の競合を避けるメモリ管理も行われた。バンクメモリだけでなくハードウェアEMS/プロテクトメモリにも兼用できる製品もあった。
バンク切り換えは初期のゲーム機でも使われていた。例えば Atari 2600 は4KBまでのROMしかアクセスできないため、ロムカセット内に独自のバンク切り換えハードウェアを内蔵して4KB以上のROMを使った洗練されたゲームを実現していた。
ファミリーコンピュータには本来バンク切り換え機能はなく、ROMカートリッジ側にコントローラ(Virtual Rom Controller など)を搭載することでバンク切り換えが行われた。ファミリーコンピュータはもともと扱える容量が少なく、ディスクシステムの登場によってROMカートリッジは終了となるはずであった。ところがバンク切り換えによって大容量ROMカートリッジを扱う手法が確立されると、読み込み速度の遅いディスクシステムの方が次第に廃れ、最終的にはディスクよりもカートリッジの方が大容量となっていた。ゲームボーイのカートリッジには MBC (Memory Bank Controller) というチップが使われており、ROMバンク切り換えだけでなく、カートリッジ内のSRAMバンク切り換えや赤外線リンクなどの周辺機器へのアクセスも提供していた。