Altera Nios II User Manual page 246

Hide thumbs Also See for Nios II:
Table of Contents

Advertisement

8–66
movhi
Operation:
Assembler Syntax:
Example:
Description:
Usage:
Pseudo-instruction:
Nios II Processor Reference Handbook
rB ← (IMMED : 0x0000)
movhi rB, IMMED
movhi r6, 0x8000
Writes the immediate value IMMED into the high halfword of rB, and clears the lower halfword
of rB to 0x0000.
The maximum allowed value of IMMED is 65535. The minimum allowed value is 0. To load a
32-bit constant into a register, first load the upper 16 bits using a movhi pseudo-instruction.
The %hi() macro can be used to extract the upper 16 bits of a constant or a label. Then, load
the lower 16 bits with an ori instruction. The %lo() macro can be used to extract the lower
16 bits of a constant or label as shown in the following code:
movhi rB, %hi(value)
ori rB, rB, %lo(value)
An alternative method to load a 32-bit constant into a register uses the %hiadj() macro and the
addi instruction as shown in the following code:
movhi rB, %hiadj(value)
addi rB, rB, %lo(value)
movhi is implemented as orhi rB, r0, IMMED.
Chapter 8: Instruction Set Reference
move immediate into high halfword
February 2014 Altera Corporation
Instruction Set Reference

Advertisement

Table of Contents
loading

Table of Contents