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

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

8.5.60. movhi

命令 上位ハーフワードへの即値の転送
演算

rB ←  (IMMED : 0x0000)

アセンブラー構文

movhi rB, IMMED

movhi r6, 0x8000

説明

即値 IMMED を rB の上位ハーフワードへ書き込み、rB の下位ハーフワードを 0x0000 にクリアーする。

使用法

IMMED の最大許容値は 65535 である。最小許容値は 0 である。32 ビット定数をロードするには、はじめにmovhi疑似命令で上位 16 ビットをロードする。%hi() マクロは定数またはラベルの上位 16 ビットの抽出のために使用可能である。次に、ori命令の下位 16 ビットをでロードする。%lo() マクロは次のコードに示すように定数またはラベルの下位 16 ビットの抽出のために使用可能である。

movhi rB, %hi(value)

ori rB, rB, %lo(value)

レジスターに 32 ビット定数をロードするその他の方法は、次のコードに示すように、%hiadj() マクロとaddi命令を使用する。

movhi rB, %hiadj(value)

addi rB, rB, %lo(value)

疑似命令

movhiorhi rB, r0, IMMEDとして実装される。