Assembling assembly language.

Years ago I studied assembly language at school but never quite got the hang of it. Nowadays, I’ve been feeling inspired enough to go back and study it again and perhaps even make a few programs in the process.
Most of my inspiration came from Steve Gibson of Gibson Research, who writes his programs in assembler. There’s a page on his site with links to assembly language resources on the Web along with his Small is Beautiful starter kit that includes a template for creating Windows programs in assembly language.
I got further inspiration from the late Phil Katz of PKZIP fame. He too was very proficient in assembly language and used it to create his famous PKZIP archiving tool.
For creating my programs in assembly language, I am going to use the Flat Assembler, which is free and open source. There are some cool sample programs included, including a very simple text editor and of course, the essential “Hello, World!” program whose executable program file size is only 3K.
To me, the best way to study a new programming language is to peek at the source codes of other programs and use snippets of their code to make my own programs. I am hoping this approach will serve me well in learning assembly language.

One thought on “Assembling assembly language.

  1. Can any body help me with this code and tell me what it does and why its get fails when we run?

    00520600 push ebp
    00520601 mov ebp,esp
    00520603 mov dword ptr [pointer],80706050h
    0052060A push ebx
    0052060B push 1
    0052060D call foobar (0x005100F2h)
    00520612 add esp,4
    00520615 mov ebx,dword ptr [pointer]
    00520618 mov dword ptr [ebx],eax

Leave a Reply to Anonymous Cancel reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s