How -- How to Learn Win32 assembly

Source: Internet
Author: User

This article is excerpted from the 32-bit assembly language in the Windows environment.ProgramPreface to design

 

How -- How to Learn Win32 assembly

In the past, compilation books often focused on hardware structures and commands, and told a lot of circuit diagrams and command lists. After getting dizzy, I would like to give some important examples, not complex operations such as array and matrix computing, but drawing in graphic mode, so that you can no longer find the north after reading them! In fact, these examples are not too difficult, but too boring. Some people say that learning compilation is like taking an exam at a university, and thousands of troops are crossing the zhuqiao bridge. Too many people give up halfway, and only a few people stick to it until the end.
The author believes that learning Assembly should be carried out in an easy environment. Examples used in learning are not necessarily too complex, but they must be attractive. Writing complex computation programs by sink is certainly more efficient than C, but the same thing is done by using an expression in C. From here on, we will start to learn assembly, it is like learning arithmetic from a complex formula. You must know that addition has not yet been learned! For the system functions encapsulated in advanced languages, it is very straightforward to explain in assembly, and it is natural and easier to understand. In my own compilation process, it was in 1990, just the first time in China that the virus was prevalent. Everyone's computers were the originator of the virus-the ping-pong virus, which was prevalent in the DOS era, looking at the small ball on the screen, there is a question in my mind: how to compile such a thing? You must know that DOS is a single task, and that ball is still running when other programs are running! This cannot be explained by any knowledge learned from popular courses such as Fortran and C, because these courses cannot contain TSR, interruptions, boot areas, and other content. With such a question, I learned how to compile the Table Tennis virus. When I analyzed the ping-pong virus, I learned a piece of instructions that I didn't understand, and, in turn, those complex computing programs are so easy to break. In fact, learning Assembly from some practical system functions is far easier to understand than learning matrix computing.
Just as the most typical C program is the "Hello, world !" Similarly, this program is not famous because it uses complicated statements to drop a large number of people, but it makes people enter the gate of C language in the simplest and easy-to-understand way. This is also true for Win32 compilation. It is always true from the simplest examples. I suggest that you follow the examples in this book from simple to complex, and strive to understand and flexibly reference various functions in these examples, just as "the first three hundred Tang poems are well read, and the poems will not be written," it is the greatest victory to be able to skillfully use Win32 assembly to solve various programming needs.
In addition, as mentioned above, the learning of assembly language must be closely integrated with the operating system. After a simple investigation, the author found that many colleges and universities use the Assembly tutorial still stay in Tsinghua 91 version of the "IBM-PC assembly language programming" and other textbooks, although the basic knowledge in these textbooks will never expire, the components involving the operating system will remain in the DOS stage. As the DOS Operating System quietly moves back, it is a waste to continue to focus on it, because any language must have an application platform, otherwise, after the course is completed, you will find that there is no place to apply it. The author believes that after the basic part of the traditional teaching materials such as IBM-PC assembly language programming, the focus should be to Win32 assembly, and the protection mode of knowledge.

 

more exciting resources:
blog site: http://www.cnblogs.com/broadview/
Web development column http://blog.csdn.net/broadviewwebdev
embedded http://blog.mcuol.com/Broadview/index.htm
Program Design column http://blog.csdn.net/broadviewprograming
database column http://blog.csdn.net/broadviewdatabase
phpchina: http://www.phpchina.com/home/space.php
CN-Java: http://www.cn-java.com/www1? 564186/
itpub: http://space.itpub.net/13164110/

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.