Nios II Gen2 プロセッサー・リファレンス・ガイド

ID 683836
日付 10/28/2016
Public
ドキュメント目次

8.5.68. mulxuu

命令 拡張された符号なし / 符号なしの乗算
演算

rC ←  ((unsigned) rA) x ((unsigned) rB)) 63..32

アセンブラー構文

mulxuu rC, rA, rB

mulxuu r6, r7, r8

説明

rA の値と rB の値を符号なし整数として処理すると、mulxuuは rA 倍の rB を乗算し、32 個の上位順のビットを rC に格納する。

mulxuu命令を実装していない Nios II プロセッサーは未実装命令の例外が発生する。

使用法

mulxuumulを使用して 2 つの 32 ビットの符号なし整数の 64 ビット積を計算する。さらに、mulxuuは 2 つの 64 ビットの符号付き整数の 128 ビット積の計算の一部として使用できる。32 ビット・レジスター (S1 : U1) と (S2 : U2) のペアに含まれるそれぞれの 2 つの 64 ビットの符号付き整数を見てみると、それらの 128 ビット積は (U1 x U2) + ((S1 x U2) << 32) + ((U1 x S2) << 32) + ((S1 x S2) << 64) となる。mulxuumul命令は 64 ビット積 U1 x U2 の計算に使用される。

また、mulxuuは 2 つの 64 ビットの符号なし整数の 128 ビット積の計算の一部としても使用できる。32 ビット・レジスター (T1 : U1) と (T2 : U2) のペアに含まれるそれぞれの 2 つの 64 ビットの符号なし整数を見てみると、それらの 128 ビット積は (U1 x U2) + ((U1 x T2) << 32) + ((T1 x U2) << 32) + ((T1 x T2) << 64) となる。mulxuumul命令は 64 ビット積 U1 x U2、U1 x T2、T1 x U2、および T1 x T2 の計算に使用される。

例外

未実装命令

命令型

R

命令フィールド

A = オペランド rA のレジスター・インデックス

B = オペランド rB のレジスター・インデックス

C = オぺランド rC のレジスター・インデックス

ビットフィールド
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
A B C 0x07
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0x07 0 0x3a