【インデックスレジスタの基本的な記述】
基本の書式は下記。
三菱電機 Q / Lシリーズでは「Z0〜Z19」の20個、一部機種は「Z15」まで16個が割り当てられている。
①ワードデバイスでの使用

のように、データレジスタ「D0」「D1」…の末尾にインデックスレジスタ「Z0」「Z1」…を付記する。
「D0Z0」「D1Z0」…といったレジスタの参照先は、「Z0」の数値に合わせ、下のようになる。
| Z0 | 0 | 1 | 5 | 10 |
| D0Z0の参照先 | D0 | D1 | D5 | D10 |
| D1Z0の参照先 | D1 | D2 | D6 | D11 |
| D5Z0の参照先 | D5 | D6 | D10 | D15 |
②ビットデバイスでの使用

のように、ビットデバイス「Y0」「Y1」の末尾にインデックスレジスタを付記する。
「Z0」の数値に合わせ、下のようになる。
| Z0 | 0 | 1 | 5 | 10 |
| Y0Z0の参照先 | Y0 | Y1 | Y5 | Y10 |
| Y1Z0の参照先 | Y1 | Y2 | Y6 | Y11 |
| Y5Z0の参照先 | Y5 | Y6 | Y10 | Y15 |
【インデックスレジスタがおすすめの理由】
・デバイス番号だけ違う処理を1つにまとめることができ、修正も1箇所で済む。
・繰返しやBMOV命令との組合せで、デバイス番号をずらしながら繰返し、転送できる。
【インデックスレジスタでMOV命令をまとめる】
下のラダーを参照。インデックスレジスタを使用して命令文を短縮する。
③④とも、「5つのDレジスタの数値をD100へ転送する処理」だが、インデックスレジスタ「Z0」の有無で「縦の長さ」、つまりステップ数が大きく異なる。
③インデックスレジスタ未使用
DレジスタごとMOV命令が必要。

④インデックスレジスタ使用
5行のMOV命令を2行に書き換えられる。
![----+-[ * D50 K5 Z0]
|
+-- MOV D0Z0 D100](https://ninnnaji-fa.com/wp-content/uploads/2026/07/image-12.png)
参照先をD0、D5、D10、D15、D20と5番ずつずらすため、D50を5倍してZ0へ格納する。
したがって、各デバイスの数値は、例えば「D50:2なら、Z0:10、D0Z0の参照先:D10」になる。
同様に、各デバイスは下記の通り。
| D50 | 0 | 1 | 2 | 3 | 4 |
| Z0 | 0 | 5 | 10 | 15 | 20 |
| D0Z0の 参照先 | D0 | D5 | D10 | D15 | D20 |
【ビットデバイスへの適用例】
各デバイスは下記の通りに変化
⑤インデックスレジスタ未使用
デバイスごと命令が必要。
![[ M0 ]----+----[ D60 = K0 ]----( Y0 )
|
+----[ D60 = K1 ]-----( Y1 )
|
+----[ D60 = K2 ]-----( Y2 )
|
+----[ D60 = K3 ]-----( Y3 )
|
+----[ D60 = K4 ]-----( Y4 )](https://ninnnaji-fa.com/wp-content/uploads/2026/07/image-14.png)
⑥文字色反転がインデックスレジスタ部
各デバイスの数値は、例えば「D60:2なら、Z0:2、Y0Z0の参照先:Y2」になる。
![----[ MOV D60 Z0 ]-
|
|----[ M0 ]----( Y020 )](https://ninnnaji-fa.com/wp-content/uploads/2026/07/image-18.png)
各デバイスは下記の通り
| D60 | 0 | 1 | 2 | 3 | 4 |
| Z0 | 0 | 1 | 2 | 3 | 4 |
| Y0Z0の参照先 | Y0 | Y1 | Y2 | Y3 | Y4 |
【インデックスレジスタの豆知識】
・マイナス数値でも使用は可能。
・パナソニックの「DTレジスタ」のように、冒頭に付記するPLCもあり。
・「インデックス修飾」とも呼ばれる。