Quick arm disassemblingThe following are some key points that will help you quickly master the disassembling of ARM.
* * 1. Command Basics **
1. * * Jump command **
- Unconditioned jump command:
- [B: Make an unconditional jump.]
- [TL: An unconditional jump with a link. It can be used to call a function and save the return address.]
- [BX: An unconditional jump with state switching.]
- [Blx: Ununconditional jump with link and status switch.] Its format is like Bloc_address, etc.
2. * * Memory and register interaction data instruction **
- Registers can store many types of data, such as strings, numbers, or addresses. The storage address unit contains an address (e.g., 0x00004000) and the value stored in the address.
- IDR: loads data from memory into the LoaD register. For example, IDR R8,(R9,#04) means that the value of the storage unit pointed to by R9 + 0x4 is loaded into the R8 register.
- STR: Store the data of the register into the memory (STore register). For example, STR8,(R9,#04) stores the data of the R8 register into the storage unit pointed to by R9 + 0x04.
- LPM: loads the data of the memory into a register list (LoaD Multiple). For example, LPM R0,{R1-R3} loads the data of the storage unit pointed to by R0 into the R1, R2, and R3 register in sequence.
- Store Multiple: Store the data of a register list into a specified memory.
- Push: Pushes the register value onto the stack.
- Pop: Pushes the stack value to the register.
- SWP: Exchanges the data between the register and the memory. For example, SWP R1, R1 (R0) exchanges the contents of the R1 register and the unit pointed to by R0.
3. * * Data Transfer Command **
- MOV: Transfer the data of the immediate number or register to the target register, such as MOV R0,#8 (0x8 data is transferred to R0, equivalent to assignment).
4. * * Data Arithmetic Operation Command **
- Including add (addition), sub (substitution), mul (multiplication), div (division), signed and signed operations, as well as carry operations.
5. * * Data logic operation instruction **
- AND, ORR, XOR.
- Shift command:
- Lsl: logical shift left. A logical shift left will make the value larger because it is a multiple of 2 in the binary-system.
- LPR: Logically Shift Right. Logically Shift Right will make the value smaller.
6. * * Comparisons Command **
- For example, CMPR0#0 is used to compare the value in the R0 register with 0. The comparison result can be viewed through the flag bit (such as the z bit). These flag bits can be seen in the register window during dynamic tuning.
7. * * Other commands **
- Coprocessor instructions such as SWT (switching user mode), and pseudo-instructions such as DCG.
* * 2. Register-related **
1. * * Registers addressing method **
- Immediate addressing: For example, MOV R0,#1234.
- Registers addressing: such as MOV R0, R1.
- Shifting addresses: MOV R0, R1, LSL#2.
- Registers indirect addressing: IDRR0,(R1), that is, the value in the R1 register is used as the address, and the value in the address is taken out and assigned to R0.
- The register's indirect base address offset addressing was: IDRR0,(R1,#-4), which took the value of the R1 register minus the value of 0x4 as the address, and took the value from the address to R0.
2. * * Register classification and function **
- In user mode, there were ungrouped register (R0-R7) and grouped register (R8-R14). R0-R3 was used to pass parameters and return values, and R13 (also known as SP) was used to store the top address of the stack.
In order to study the disassemble of the ARM-class, one needed to read and analyze a lot of actual ARM-assembly code examples, and deepen the understanding of instructions and register operations through practice.
<a href="/?from=ask_words" style="color:red" target="_blank">Read more exciting novels for free</a>
Arm Star ShopIf he was referring to the personal brand store opened by the Thai celebrity Arm, it would be AWC Studio. It was located at 235, 3 Soi Sukhumvit 31, Khlong Toei Nuea, Watthana, Bangkok10110, near the famous GMMbuilding. In addition to Arm's own brand, there were many other star brands in the store. The store was very eye-catching and brightly colored on the street. The store area was not large, and the average price of clothes was 1000 to 2000 baht.
<a href="/?from=ask_words" style="color:red" target="_blank">Read more exciting novels for free</a>
A romantic arm novelI recommend a few novels. "Green Cloud Immortal Clan" was a Xianxia novel written by the South Pole fat bear. It was about the continuous development of a family. The male lead, Lin Changyi, and the female lead, Su Qingyue, both had 01/25 birthdays and were Aquarius. There were also many supporting roles.
My Goddess 'Arm was a fantasy novel by Yun Baic. The main character, Ji Xiaobai, had a super powerful goddess arm after transmigrating. It was an invincible style of entertainment. However, he was a little young and had just signed a contract. Those who liked this style could take a look.
Magic Cultivation Guide, a fantasy romance novel written by Ling Wu Shui Xiu. The female protagonist brought the game system to travel through another world, raised a little prince, and even became an elven queen. Her style was humorous and relaxed. It was a good female channel book that ended.
Starting from Elbow Breaking Jordan's Ribs, a sports novel written by Big Cat driving a submarine. The male lead, Su Wei, was super fierce on the court. His elbow broke Jordan's ribs and started a new era in the basketball world. There were also many interesting supporting stories.
"The Nuptial Chamber in My Palm" was a fantasy romance novel written by Love Your Daughter Like Eyes. There were elements of cannibals and pocket-sized beautiful teenagers in the story, which was quite novel.
<a href="/?from=ask_words" style="color:red" target="_blank">Read more exciting novels for free</a>
Actuellement le chapitre 233 est le meilleur chapitre écrit de toute cette histoire. Juste a cause de se chapitre j'en attends beaucoup de l'auteur car ce chapitre montre que l'auteur peut nous en sortir de qualité