Erreur compilation

cs_greg4 Messages postés 41 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 24 décembre 2002 - 12 juin 2002 à 05:53
cs_GuruMeditation Messages postés 69 Date d'inscription samedi 28 octobre 2000 Statut Membre Dernière intervention 15 octobre 2004 - 1 août 2002 à 21:11
je voudrai compiler

--------------------------------------

.model tiny

.data
HelloMessage db 13,10,'Hello World !',13,10,'$'

.code
org 100h
start:
mov ax,@data
mov ds,ax
mov ax,3
int 10h
mov ah,9
mov dx,offset HelloMessage
int 21h
xor ax,ax
int 16h
mov ax,3
int 10h
mov ah,4ch
int 21h
end start

-----------------------------------

mais masm32 ne veu po il me mes 2 erreurs

-----------------------------------

Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All rights reserved.

Assembling: C:\WINDOWS\Bureau\massm32\Hello.asm
C:\WINDOWS\Bureau\massm32\Hello.asm(9) : error A2006: undefined symbol : DGROUP
C:\WINDOWS\Bureau\massm32\Hello.asm(22) : warning A4023: : start
Appuyez sur une touche pour continuer . . .

-----------------------------------------------

4 réponses

cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
12 juin 2002 à 20:39
Je crois que ton code source doit être compilé
avec TASM plutôt qu'avec MASM, sinon tu dois changer les directives (.code, .data, ...).
0
cs_PierreF Messages postés 33 Date d'inscription mercredi 15 mai 2002 Statut Membre Dernière intervention 24 octobre 2003
14 juin 2002 à 15:00
un code compilable avec MASM (c'est du dos):

TITLE titre

DOSSEG
.model SMALL
.stack 100h ;un pile de 256 octect

.DATA ;les donnee
MSG DB "Hello",10,13,"$" ;notre message
;le "$" termine toutes chaines de caracteres que
;l'on veut afficher avec la fonction 09 du dos

TEXT2 DB "Appuez sur une touche !"
DB 13,10,"$"

.CODE ;le code

mov ax,@DATA ;a mettre en debut de programme
mov ds,ax ;pour utiliser les donnee

mov dx,offset MSG ;on va afficher MSG (="hello")
mov ah,09h ;on affiche dx grace à la fonction 09
int 21h ; du dos

CALL TOUCHE ; on attend une touche

mov ax,4c00h ;fin du prog
int 21h

;*************************************
;* Sous-Programme: attente de frappe *
;*************************************

TOUCHE:
MOV AH,09h ;Invite l'opérateur à taper
MOV DX,OFFSET TEXT2 ; sur une touche
INT 21h ;Fonction de DOS

TOUCHE1:
MOV AX,0C07h ;Fonction DOS pour
INT 21h ; lire un caratère au clavier
RET ;retour à l'appelant

END

voilà!
0
blackwizzard Messages postés 1258 Date d'inscription mercredi 21 mars 2001 Statut Membre Dernière intervention 21 juin 2009 2
14 juin 2002 à 16:40
poste des source pour debutant!!
ton code est super bien expliqué!
serieux, met des truc pour debutant sur le site!

@++

[BlackWizzard]
0
cs_GuruMeditation Messages postés 69 Date d'inscription samedi 28 octobre 2000 Statut Membre Dernière intervention 15 octobre 2004
1 août 2002 à 21:11
Déjà le code à une en-tête pour un fichier COM normalement donc il ne faut pas utiliser d'autre segment que le même que CS. ensuite le code semble être une syntaxe TASM.
0
Rejoignez-nous