I'm new to assembly and I want to learn the language. I downloaded the NASM compiler and I'm trying to compile (assemble?) my programs with it. I'm assuming nasm.exe is the compiler. When I try to compile, it gives me errors. The code I'm trying to compile is:

.model small
message db "Hello world, I'm learning Assembly !!!", "$"


main proc
mov ax,seg message
mov ds,ax

mov ah,09
lea dx,message
int 21h

mov ax,4c00h
int 21h
main endp
end main

Also, I eventually want to write my own Disk Operating System, would ASM be the way to go if I want to do this?

Thanks, any help is appreciated.

12 Years
Discussion Span
Last Post by Tight_Coder_Ex

It looks as though you code is written for MASM Microsofts assembler.

Absolutely, you can write an operating system using entriely assembly. Linux however has 95% of it written in "C", and even though I've never had the oportunity to look at other operating systems sources like Linux I would imagine they are too.

As a matter of fact at http://www.menuetos.org/ is a complete operating system written using flat asm that you may be interested in.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.