Home >Common Problem >What can assembly language do?

What can assembly language do?

青灯夜游
青灯夜游Original
2020-07-17 11:44:5012833browse

Assembly language is a powerful programming language. It is also a language that utilizes all the hardware features of the computer and can directly control the hardware. After you learn it well, you can make microcontrollers, operating systems, and compilers. Bottom-level development is definitely needed anyway.

What can assembly language do?

Assembly language is a low-level language used for electronic computers, microprocessors, microcontrollers or other programmable devices, also known as for symbolic language. In assembly language, mnemonics are used to replace the opcodes of machine instructions, and address symbols or labels are used to replace the addresses of instructions or operands.

In different devices, assembly language corresponds to different machine language instruction sets, which are converted into machine instructions through the assembly process. There is a one-to-one correspondence between a specific assembly language and a specific machine language instruction set, and they are not directly portable between different platforms.

Assembly language is a powerful programming language. It is also a language that utilizes all the hardware features of the computer and can directly control the hardware.

What can assembly language do?

Computer work is driven by a series of machine instructions. These instructions are a series of binary numbers 0101000110, corresponding to the high and low levels of the computer. The collection of these machine instructions is machine language. This It is already at the lowest level, one-to-one with the hardware.

Obviously, such machine language is anti-human. Only geniuses and madmen have the ability to control him.

So assembly language was born. Assembly language is to convert some difficult-to-remember 0100100 into a format that is easy to remember, so that people can understand it a little bit. For example, if the contents of register bx are sent to ax, the corresponding machine instruction is: 100001001110110000 (I have no idea what it is. If you really want to study it carefully, then you have to check its circuit connection), and after it becomes an assembly instruction: mov ax, bx . Haha, isn’t it much easier to understand? Therefore, I also concluded a truth. In fact, the so-called difficulty and simplicity are really only relative. Without comparison, there will be no harm!

Back to the previous question, what can assembly language do? This question is a bit low-key. What can be done with machine language can also be done with assembly? But, is machine language so awesome? Is it possible that so many high-tech things nowadays can be done with machine language? This is nonsense. At the end of the day, all languages ​​are machine languages. There is nothing that machine language can’t do. It can also be said that there is nothing that assembly can’t do. It’s just that we don’t have enough skills, haha!

After learning assembly language well, you can make microcontrollers, operating systems, and compilers. Bottom-level development is definitely needed anyway.

There are three main types of instructions in assembly: 1) Assembly instructions (machine code mnemonics, corresponding to machine instructions one-to-one. If possible, you can actually operate all the computer hardware with just this thing); 2) Pseudo Instructions (which have no corresponding machine code and are executed by the compiler but not by the computer, that is to say, they are converted into a set or more machine codes by the compiler. This is what modern high-level language compilers do); 3) Other symbols (such as -*/, same as the second one, recognized and converted by the compiler)

For more related knowledge, please visit: PHP Chinese website!

The above is the detailed content of What can assembly language do?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn