neg (否定) 命令

目的

汎用レジスターの内容の算術符号を変更して、その結果を別の汎用レジスターに入れます。

構文

ビット VALUE
0 - 5 31
6 - 10 RT
11 - 15 RA
16 - 20 ///
21 OE
22 - 30 104
31 RC
項目 説明
RT RA
ネグ RT RA
ネゴ (nego) RT RA
nego: RT RA

description

neg 命令は、汎用レジスター (GPR) RA の内容の 1 の補数に 1 を加算し、その結果を GPR RTに保管します。

GPR RA に最も負の数値 (つまり、 0x8000 0000) が含まれている場合、命令の結果は最も負の数値になり、OE が 1 の場合は固定小数点例外レジスターのオーバーフロー・ビットをシグナル通知します。

neg 命令には、4 つの構文形式があります。 各構文形式は、条件レジスター・フィールド 0 および固定小数点例外レジスターに対して異なる影響を与えます。

項目 説明
構文形式 オーバーフロー 例外 (OE) 固定小数点 例外レジスター レコード ビット (RC) 条件 フィールド 0 の登録
0 なし 0 なし
ネグ 0 なし 1 LT、GT、EQ、SO
ネゴ (nego) 1 SO、OV 0 なし
nego: 1 SO、OV 1 LT、GT、EQ、SO

neg 命令の 4 つの構文形式は、固定小数点例外レジスターのカリー・ビット (CA) には影響しません。 構文形式がオーバーフロー例外 (OE) ビットを 1 に設定する場合、命令は固定小数点例外レジスターの要約オーバーフロー (SO) およびオーバーフロー (OV) ビットに影響します。 構文形式がレコード (Rc) ビットを 1 に設定する場合、命令は条件レジスター・フィールド 0 の「より小 (LT) ゼロ」、「より大 (GT) ゼロ」、「等しい (EQ) ゼロ」、および要約オーバーフロー (SO) ビットに影響します。

パラメーター

項目 説明
RT 操作の結果が保管されるターゲット汎用レジスターを指定します。
RA 操作のソース汎用レジスターを指定します。

  1. 以下のコードは、GPR 4 の内容を否定し、結果を GPR 6 に保管します。
    
    # Assume GPR 4 contains 0x9000 3000.
    neg 6,4
    # GPR 6 now contains 0x6FFF D000.
    
  2. 以下のコードは、GPR 4 の内容を否定し、結果を GPR 6 に保管し、演算の結果を反映するように条件レジスター・フィールド 0 を設定します。
    
    # Assume GPR 4 contains 0x789A 789B.
    neg. 6,4
    # GPR 6 now contains 0x8765 8765.
    
  3. 以下のコードは、GPR 4 の内容を否定し、結果を GPR 6 に保管し、演算の結果を反映するために固定小数点例外レジスター要約オーバーフローとオーバーフロー・ビットを設定します。
    
    # Assume GPR 4 contains 0x9000 3000.
    nego 6,4
    # GPR 6 now contains 0x6FFF D000.
    
  4. 以下のコードは、GPR 4 の内容を否定し、結果を GPR 6 に保管し、条件レジスター・フィールド 0 と固定小数点例外レジスター要約オーバーフローおよびオーバーフロー・ビットを設定して、演算の結果を反映します。
    
    # Assume GPR 4 contains 0x8000 0000.
    nego. 6,4
    # GPR 6 now contains 0x8000 0000.