Assembly Programming Tutorial
Assembly language is a low-level programming language for a computer or other programmable device specific to a particular computer architecture in contrast to most high-level programming languages, which are generally portable across multiple systems. Assembly language is converted into executable machine code by a utility program referred to as an assembler like NASM, MASM, etc.
This tutorial has been designed for software programmers with a need to understand the Assembly programming language starting from scratch. This tutorial will give you enough understanding on Assembly programming language from where you can take yourself to higher level of expertise.
Before proceeding with this tutorial, you should have a basic understanding of Computer Programming terminologies. A basic understanding of any of the programming languages will help you in understanding the Assembly programming concepts and move fast on the learning track.
Assembly Programming online
For most of the examples given in this tutorial, you will find Try it option, so just make use of it and enjoy your learning.
Try the following example using Try it option available at the top right corner of the below sample code box:
section .text global _start ;must be declared for linker (ld) _start: ;tells linker entry point mov edx,len ;message length mov ecx,msg ;message to write mov ebx,1 ;file descriptor (stdout) mov eax,4 ;system call number (sys_write) int 0x80 ;call kernel mov eax,1 ;system call number (sys_exit) int 0x80 ;call kernel section .data msg db 'Hello, world!', 0xa ;our dear string len equ $ - msg ;length of our dear string
1 - Assembly Programming Quick Reference Guide
A quick reference guide for Assembly Programmers.
2 - Useful Assembly Programming Resources
A collection of Assembly Programming Sites, Books and Articles is given at this page.
3 - Assembly Programming Tutorial in PDF
Download a quick Assembly tutorial in PDF format.