2011-10-11 7 views
1

Je veux compiler un programme simple en utilisant des assembleurs tels que MASM ou FASM.Comment compiler des programmes DOS en utilisant MASM ou FASM

Ideal 
model small 
Stack 256 

Dataseg 

    str1 db 'hello','$' 

Codeseg 
Startupcode 

    lea dx, [str1] 
    mov ah, 09h 
    int 21h 

    lea dx, [ent] 
    mov ah, 09h 
    int 21h 

exitcode 
END 

Cette source est compilée sur TASM dans mon collège, mais comment le faire en utilisant MASM ou FASM?

+0

voir http://stackoverflow.com/questions/4548763/compiling-assembly-in-windows – Mark

Répondre

0

Les interruptions ne peuvent être utilisées que dans les versions 16 bits de Windows. Ces appels int 21h doivent être remplacés par les appels Win32 Function équivalents. Où est la variable ent? Si vous souhaitez compiler avec Visual Studio, définissez les règles de génération personnalisées sur MASM, accédez aux paramètres de l'éditeur de liens et définissez le sous-système sur Windows et le point d'entrée sur principal. Construire et apprécier. Voir Setting Up Visual Studio 2010 For MASM32 Programming.

Voici la liste de code MASM pertinentes:

.386 
.model small 
.stack 256 

.data 
    str1 db 'hello','$' 

.code 
main: 
    lea dx, [str1] 
    mov ah, 09h 
    int 21h 

    lea dx, [ent] 
    mov ah, 09h 
    int 21h 
end main 
Questions connexes