Abstract
This chapter presents instruction formats. There are five basic Alpha instruction formats: (1) Memory, (2) Branch, (3) Operate, (4) Floating-point Operate, and (5) PALcode. All instruction formats are 32 bits long with a 6-bit major opcode field in bits <31:26> of the instruction. Any unused register field (Ra, Rb, Fa, Fb) of an instruction must be set to a value of 31. There are several instructions, each formatted as a memory instruction, that do not use the Ra and/or Rb fields: (1) Memory Barrier, (2) Fetch, (3) FetchJM, (4) Read Process Cycle Counter, (5) Read and Clear, (6) Read and Set, and (7) Trap Barrier. The Memory format is used to transfer data between registers and memory, to load an effective address, and for subroutine jumps. The Branch format is used for conditional branch instructions and for PC-relative subroutine jumps. The Operate format is used for instructions that perform integer register to integer register operations. The Operate format allows the specification of one destination operand and two source operands. One of the source operands can be a literal constant. The Floating-point Operate format is used for instructions that perform floating-point register to floating-point register operations. The Floating-point Operate format allows the specification of one destination operand and two source operands. The Privileged Architecture Library (PALcode) format is used to specify extended processor functions.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.