What is MCU disassembly?

Publisher:RadiantGazeLatest update time:2015-03-25 Source: diangonKeywords:MCU Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
When engineers write microcontroller programs, they usually use assembly language or high-level language (C or C++). These program codes are called original codes. After the program is written, it is compiled by the compiler software or compiler to generate files that can be burned into the ROM storage area of ​​the microcontroller. The file suffixes generated by the compilers of different models of microcontrollers are different, but the commonly used BIN and HEX files are called machine codes in the decryption industry. Such machine codes are run in the microcontroller, and it can be said that only the machine can understand them. Disassembly refers to the decompilation of these executable files, that is, machine codes, back to assembly language. However, there are usually many differences between the decompiled program and the original program. Although the execution effect is the same, the program code will change greatly. If it is an assembly with more statements, it is difficult for ordinary people to understand. You need to add comments and then read them one by one. It requires a certain amount of perseverance. I once spent a week analyzing the disassembly code of a chip. So it is not that after disassembly, everything is clear with the original program. More technical analysis by engineers is needed. There are two methods of disassembly: manual disassembly and software disassembly. Nowadays, the scale of microcontrollers is getting larger and larger, and the embedded codes are getting more and more. This brings a lot of trouble to manual disassembly and requires a lot of time. Using software disassembly is an ideal way. As long as there is disassembly software, the disassembly work can be completed quickly after running it on the computer.
Keywords:MCU Reference address:What is MCU disassembly?

Previous article:Is it assembly programming or C language programming to learn microcontroller?
Next article:How to start if you want to master microcontrollers?

Recommended ReadingLatest update time:2024-11-16 22:01

Design of PIC16F84 single chip microcomputer to control electric fan
1. Hardware circuit and principle To make the electric fan send out natural wind, it is necessary to change the strength of the fan, that is, to change the voltage and current of the fan motor, thereby changing its speed. As shown in Figure 1, the fan socket is connected in series with the thyristor TREAC. By changing
[Microcontroller]
Design of PIC16F84 single chip microcomputer to control electric fan
51 MCU study notes: continuous reading and writing of STC89C52RC internal EEPROM memory
The internal EEPROM of the STC microcontroller is simulated by DATAFLASH, not a real EEPROM memory, and cannot be operated by ordinary methods. Here are some points to note: 1. Before writing a byte, read the other valid data of the sector where the byte is located into RAM for temporary storage (this step is not nece
[Microcontroller]
51 MCU study notes: continuous reading and writing of STC89C52RC internal EEPROM memory
The Path of Microcontroller Growth (51 Basics) - 016 Common Bus Types
1. First, let’s look at the real meaning of its name:  SPI (Serial Peripheral Interface);  I2C (INTER IC BUS: means inter-IC bus)  UART (Universal Asynchronous Receiver Transmitter)  USART: Universal Synchronous Asynchronous Receiver Transmitter  USB: Universal Serial BUS  CAN: Fieldbus The difference between I2C, SPI
[Microcontroller]
Control of lighting system based on PIC12C508 microcontroller
The following program uses PIC12C508 microcontroller, internal 4MHz clock, 50HZ pulse signal input at pin 4, and output at pins 7, 6, and 3 (GP0, GP1, and GP4 ports). The gradual change part makes the light gradually brighter (or off). ;The procedure is as follows: GPI0EQU6 COUNT1EQU11 COUNT2EQU12 COUNT3EQU13 COUNT4
[Microcontroller]
Control of lighting system based on PIC12C508 microcontroller
The simplest circuit method of microcontroller pin controlling relay
First of all, it should be made clear that the microcontroller cannot directly control the relay, whether it is a 3v relay or a 5v relay. Reason: For example, the pins of 51 MCU and msp430 MCU cannot be directly connected to the relay. Although the voltage of the pin is sufficient, the current is insufficient, so the
[Microcontroller]
Embedded CAN Intelligent Node Based on PIC Microcontroller and Its Communication with PC
introduction CAN bus is a serial data communication protocol. Its communication interface integrates the physical layer and data link layer functions of the CAN protocol, which can complete the framing of data. One of the biggest features of the CAN protocol is that it abolishes the traditional station address
[Microcontroller]
Enterprises need to rethink their MCU technology adoption plans
By Pin Tsalin, Bridgetek  Microcontroller units (MCUs) effectively form the basis of the vast majority of modern embedded system designs, providing engineers with flexibility and reasonably powerful performance at a cost-effective price. Due to these characteristics, they have achieved staggering sales numbers (near
[Microcontroller]
Enterprises need to rethink their MCU technology adoption plans
51 MCU works in timer mode 0
Mode 0 of 51 MCU (13-bit timer/counter) Step 1: Mode selection can be completed by setting the M1/M0 bit setting in TMOD              "00" is mode 0 (13-bit timer/counter mode)              "01" is mode 1 (16-bit timing/counting mode)              "10" is mode 2 (8-bit 'auto-reload' value timing/counting mode)
[Microcontroller]
51 MCU works in timer mode 0
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号