lAfter または lsi (Load String Word Immediate) 命令
目的
ストレージ内の連続したバイトを、メモリー内の指定された位置から連続した汎用レジスターにロードします。
構文
| ビット | VALUE |
|---|---|
| 0-5 | 31 |
| 6 - 10 | RT |
| 11 - 15 | RA |
| 16 - 20 | NB |
| 21 - 30 | 597 |
| 31 | / |
description
l返送 および lsi 命令は、実効アドレス (EA) によってアドレス指定されたストレージ内の N 個の連続バイトを汎用レジスター GPR RT にロードします。これは左端のバイトから GPR RT+NR-1 で始まり、必要に応じて GPR 0 で折り返します。
GPR RA とは が 0 でない場合、EA は GPR RA とはの内容です。 GPR RA とは が 0 の場合、EA は 0 です。
Lれている および LSI 命令を使用する場合は、以下の点を考慮してください。
- NB (B) はバイト・カウントです。
- RT は、開始汎用レジスターです。
- N は NB (B)です。これは、ロードするバイト数です。 NB (B) が 0 の場合、 N は 32 です。
- NR は上限 (N/4) です。これは、データを受け取る汎用レジスターの数です。
PowerPC® 命令 l申込の場合、GPR RA がロードされるレジスターの範囲内にあるか、 RT = RA = 0 であれば、命令形式は無効です。
POWER ® ファミリー命令 LSIを使用する場合は、以下の点を考慮してください。
- GPR RT + NR (R) -1 が左側に部分的にしか埋められていない場合、その汎用レジスターの右端のバイトは 0 に設定されます。
- GPR RA とは がロードされる範囲内にあり、GPR RA とは が 0 に等しくない場合、GPR RA とは はこの命令によって書き込まれません。 書き込まれていたはずのデータは破棄され、操作は正常に続行されます。
Lれている および LSI 命令には、固定小数点例外レジスターまたは条件レジスター・フィールド 0 に影響しない 1 つの構文形式があります。
注: Lれている および LSI 命令は、データ・ストレージ割り込みによって割り込むことができます。 このような割り込みが発生すると、命令は最初から再開されます。
パラメーター
| 項目 | 説明 |
|---|---|
| RT | 保管データの汎用レジスターの開始を指定します。 |
| RA | EA 計算の汎用レジスターを指定します。 |
| NB | バイト・カウントを指定します。 |
例
以下のコードは、GPR 7 によってアドレス指定されたメモリー内の位置に含まれるバイトを GPR 6 にロードします。
.csect data[rw]
.string "Hello, World"
# Assume GPR 7 contains the address of csect data[rw].
.csect text[pr]
lswi 6,7,0x6
# GPR 6 now contains 0x4865 6c6c.