This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| en:multiasm:paarm:chapter_5_6 [2026/02/27 02:19] – jtokarz | en:multiasm:paarm:chapter_5_6 [2026/02/27 16:23] (current) – jtokarz | ||
|---|---|---|---|
| Line 55: | Line 55: | ||
| <fc # | <fc # | ||
| - | {{ : | + | {{ : |
| <fc # | <fc # | ||
| - | {{ : | + | {{ : |
| The machine code representation of the assembler instruction would be like: | The machine code representation of the assembler instruction would be like: | ||
| Line 100: | Line 100: | ||
| In machine code, it is possible to determine the maximum value that can be added to a register. The ‘imm12’ bits limit the value to 0-4095. Besides that, the ‘sh’ bit allows to shift left (LSL) the immediate value by 12 bits. | In machine code, it is possible to determine the maximum value that can be added to a register. The ‘imm12’ bits limit the value to 0-4095. Besides that, the ‘sh’ bit allows to shift left (LSL) the immediate value by 12 bits. | ||
| - | {{ : | + | {{ : |
| Examples with immediate the <fc # | Examples with immediate the <fc # | ||
| Line 132: | Line 132: | ||
| The final add instruction type adds two registers together, with one register shifted; the shift can be LSL (Logical Shift Left), LSR (Logical Shift Right), or ASR (Arithmetic Shift Right). The fourth shift option is not available. The number of bits in the ‘imm6’ field identifies the number of bits to be shifted for the ‘Rm’ register before it is added to the ‘Rn’ register. | The final add instruction type adds two registers together, with one register shifted; the shift can be LSL (Logical Shift Left), LSR (Logical Shift Right), or ASR (Arithmetic Shift Right). The fourth shift option is not available. The number of bits in the ‘imm6’ field identifies the number of bits to be shifted for the ‘Rm’ register before it is added to the ‘Rn’ register. | ||
| - | {{ : | + | {{ : |
| Similar options are available for many other ARMv8 instructions. The instruction set documentation may provide the necessary information to determine the possibilities and restrictions on instruction usage. By examining the instruction' | Similar options are available for many other ARMv8 instructions. The instruction set documentation may provide the necessary information to determine the possibilities and restrictions on instruction usage. By examining the instruction' | ||