I already download MASM but it won't worked. I cannot see the MASM icon needed to compile the program. I downloaded visual 2005 also although I can see the MASM in control panel uninstall program.

.model small
x db "Hello World", '$'


main proc near
mov ax, @data
mov ds, ax

mov ah,09
mov dx, offset x
int 21h

mov ah,4ch
int 21h

main endp
end main

I cannot understand assembly language. They said the above code worked in MASM can someone explain? I tried the code in FASM but it didnt work. Does it mean coding in assembly also depends in assembler you use? I'm stuck.

Please try to avoid multiple posts for the same subject/topic! That said, masm is a command-line tool. I don't think it has a GUI component. You need to run it from the command line, or as part of a Visual Studio project.

As the previous poster said, masm is a command line program. The executable file for recent versions is called ml.exe.

Different assemblers have different syntaxes. Some are very similar to masm, others are not so similar. Jwasm is one of the most masm like, but it is not exactly the same.

The program you list should print "Hello World" and then terminate if it is run under MS-DOS or an MS-DOS clone like DR-DOS.